From 929f09573b90c455bb9530952b57c4d2a2020b42 Mon Sep 17 00:00:00 2001 From: niki Date: Thu, 8 Dec 2005 22:14:24 +0000 Subject: [PATCH] made getmountopt and checkmountopt public as quota_mnt_getmountopt and quota_mnt_checkmountopt --- src/quota_mnt.c | 45 +++++++++++++++++++-------------------------- src/quota_mnt.h | 9 ++++++--- 2 files changed, 25 insertions(+), 29 deletions(-) diff --git a/src/quota_mnt.c b/src/quota_mnt.c index a0efab15..921c5898 100644 --- a/src/quota_mnt.c +++ b/src/quota_mnt.c @@ -72,13 +72,6 @@ -/* *** *** *** prototypes *** *** *** */ - -static char *getmountopt(char *line, char *keyword); -static char *checkmountopt(char *line, char *keyword, int full); - - - /* *** *** *** local functions *** *** *** */ @@ -444,8 +437,8 @@ quota_mnt_getvfsmnt(FILE *mntf, quota_mnt_t **list) } #endif /* HAVE_GETVFSENT */ -static char * -checkmountopt(char *line, char *keyword, int full) +char * +quota_mnt_checkmountopt(char *line, char *keyword, int full) { char *line2, *l2; int l = strlen(keyword); @@ -482,14 +475,14 @@ checkmountopt(char *line, char *keyword, int full) free(line2); return NULL; -} /* static char *checkmountopt(char *line, char *keyword, int full) */ +} /* char *quota_mnt_checkmountopt(char *line, char *keyword, int full) */ -static char * -getmountopt(char *line, char *keyword) +char * +quota_mnt_getmountopt(char *line, char *keyword) { char *r; - r = checkmountopt(line, keyword, 0); + r = quota_mnt_checkmountopt(line, keyword, 0); if(r != NULL) { char *p; r += strlen(keyword); @@ -510,7 +503,7 @@ getmountopt(char *line, char *keyword) } } return r; -} /* static char *getmountopt(char *line, char *keyword) */ +} /* char *quota_mnt_getmountopt(char *line, char *keyword) */ #if HAVE_GETMNTENT static void @@ -541,19 +534,19 @@ quota_mnt_getmntent(FILE *mntf, quota_mnt_t **list) continue; } - if(checkmountopt(mnt->mnt_opts, MNTOPT_NOQUOTA, 1) != NULL) { + if(quota_mnt_checkmountopt(mnt->mnt_opts, MNTOPT_NOQUOTA, 1) != NULL) { DBG("noquota option on fs (%s) %s (%s): ignored", mnt->mnt_type, mnt->mnt_dir, mnt->mnt_fsname); continue; } - if(checkmountopt(mnt->mnt_opts, "bind", 1) != NULL) { + if(quota_mnt_checkmountopt(mnt->mnt_opts, "bind", 1) != NULL) { DBG("bind mount on fs (%s) %s (%s): ignored", mnt->mnt_type, mnt->mnt_dir, mnt->mnt_fsname); continue; } - loop = getmountopt(mnt->mnt_opts, "loop="); + loop = quota_mnt_getmountopt(mnt->mnt_opts, "loop="); if(loop == NULL) { /* no loop= mount */ device = get_device_name(mnt->mnt_fsname); if(device == NULL) { @@ -566,9 +559,9 @@ quota_mnt_getmntent(FILE *mntf, quota_mnt_t **list) device = loop; } - usrjquota = getmountopt(mnt->mnt_opts, "usrjquota="); - grpjquota = getmountopt(mnt->mnt_opts, "grpjquota="); - jqfmt = getmountopt(mnt->mnt_opts, "jqfmt="); + usrjquota = quota_mnt_getmountopt(mnt->mnt_opts, "usrjquota="); + grpjquota = quota_mnt_getmountopt(mnt->mnt_opts, "grpjquota="); + jqfmt = quota_mnt_getmountopt(mnt->mnt_opts, "jqfmt="); #if HAVE_XFS_XQM_H if(!strcmp(mnt->mnt_type, MNTTYPE_XFS)) { @@ -586,11 +579,11 @@ quota_mnt_getmntent(FILE *mntf, quota_mnt_t **list) } } else { #endif /* HAVE_XFS_XQM_H */ - if(checkmountopt(mnt->mnt_opts, MNTOPT_QUOTA, 1) + if(quota_mnt_checkmountopt(mnt->mnt_opts, MNTOPT_QUOTA, 1) == NULL - && checkmountopt(mnt->mnt_opts, MNTOPT_USRQUOTA, 1) + && quota_mnt_checkmountopt(mnt->mnt_opts, MNTOPT_USRQUOTA, 1) == NULL - && checkmountopt(mnt->mnt_opts, MNTOPT_GRPQUOTA, 1) + && quota_mnt_checkmountopt(mnt->mnt_opts, MNTOPT_GRPQUOTA, 1) == NULL && quota_fs_isnfs(mnt->mnt_type) == EXIT_FAILURE) { @@ -620,11 +613,11 @@ quota_mnt_getmntent(FILE *mntf, quota_mnt_t **list) /* TODO: this is not sufficient for XFS! */ /* TODO: maybe we should anyway NOT rely on the option in the mountfile... ... maybe the fs should be asked direktly all time! */ - if(checkmountopt(mnt->mnt_opts, MNTOPT_QUOTA, 1) != NULL - || checkmountopt(mnt->mnt_opts, MNTOPT_USRQUOTA, 1) != NULL) { + if(quota_mnt_checkmountopt(mnt->mnt_opts, MNTOPT_QUOTA, 1) != NULL + || quota_mnt_checkmountopt(mnt->mnt_opts, MNTOPT_USRQUOTA, 1) != NULL) { (*list)->opts |= QMO_USRQUOTA; } - if(checkmountopt(mnt->mnt_opts, MNTOPT_GRPQUOTA, 1) != NULL) { + if(quota_mnt_checkmountopt(mnt->mnt_opts, MNTOPT_GRPQUOTA, 1) != NULL) { (*list)->opts |= QMO_GRPQUOTA; } (*list)->next = NULL; diff --git a/src/quota_mnt.h b/src/quota_mnt.h index cbe0a094..7b56bf1c 100644 --- a/src/quota_mnt.h +++ b/src/quota_mnt.h @@ -42,9 +42,9 @@ typedef struct _quota_mnt_t quota_mnt_t; struct _quota_mnt_t { - char *dir; - char *device; - char *type; + char *dir; /* "/sys" or "/" */ + char *device; /* "none" or "/dev/hda1" */ + char *type; /* "sysfs" or "ext3"*/ char *usrjquota; char *grpjquota; char *jqfmt; @@ -54,6 +54,9 @@ struct _quota_mnt_t { int quota_mnt_type(const char *type); +char *quota_mnt_getmountopt(char *line, char *keyword); +char *quota_mnt_checkmountopt(char *line, char *keyword, int full); + quota_mnt_t *quota_mnt_getlist(quota_mnt_t **list); void quota_mnt_freelist(quota_mnt_t *list); -- 2.11.0