diff options
Diffstat (limited to 'xlators/nfs/server/src/exports.c')
-rw-r--r-- | xlators/nfs/server/src/exports.c | 58 |
1 files changed, 34 insertions, 24 deletions
diff --git a/xlators/nfs/server/src/exports.c b/xlators/nfs/server/src/exports.c index 30810361785..3c80fc9ea0f 100644 --- a/xlators/nfs/server/src/exports.c +++ b/xlators/nfs/server/src/exports.c @@ -15,6 +15,7 @@ #include "exports.h" #include "hashfn.h" #include "parse-utils.h" +#include "nfs-messages.h" static void _exp_dict_destroy (dict_t *ng_dict); static void _export_options_print (const struct export_options *opts); @@ -79,7 +80,7 @@ _exports_file_init () file = GF_CALLOC (1, sizeof (*file), gf_common_mt_nfs_exports); if (!file) { - gf_log (GF_EXP, GF_LOG_CRITICAL, + gf_msg (GF_EXP, GF_LOG_CRITICAL, ENOMEM, NFS_MSG_NO_MEMORY, "Failed to allocate file struct!"); goto out; } @@ -87,7 +88,8 @@ _exports_file_init () file->exports_dict = dict_new (); file->exports_map = dict_new (); if (!file->exports_dict || !file->exports_map) { - gf_log (GF_EXP, GF_LOG_CRITICAL, "Failed to allocate dict!"); + gf_msg (GF_EXP, GF_LOG_CRITICAL, ENOMEM, NFS_MSG_NO_MEMORY, + "Failed to allocate dict!"); goto free_and_out; } @@ -180,7 +182,7 @@ _export_dir_init () gf_common_mt_nfs_exports); if (!expdir) - gf_log (GF_EXP, GF_LOG_CRITICAL, + gf_msg (GF_EXP, GF_LOG_CRITICAL, ENOMEM, NFS_MSG_NO_MEMORY, "Failed to allocate export dir structure!"); return expdir; @@ -239,7 +241,7 @@ _export_item_init () gf_common_mt_nfs_exports); if (!item) - gf_log (GF_EXP, GF_LOG_CRITICAL, + gf_msg (GF_EXP, GF_LOG_CRITICAL, ENOMEM, NFS_MSG_NO_MEMORY, "Failed to allocate export item!"); return item; @@ -278,7 +280,7 @@ _export_options_init () gf_common_mt_nfs_exports); if (!opts) - gf_log (GF_EXP, GF_LOG_CRITICAL, + gf_msg (GF_EXP, GF_LOG_CRITICAL, ENOMEM, NFS_MSG_NO_MEMORY, "Failed to allocate options structure!"); return opts; @@ -665,6 +667,10 @@ __exp_line_opt_parse (const char *opt_str, struct export_options **exp_opts) goto out; } } else + /* Cannot change to gf_msg. + * gf_msg not giving output to STDOUT + * Bug id : BZ1215017 + */ gf_log (GF_EXP, GF_LOG_WARNING, "Could not find any valid options for " "string: %s", strmatch); @@ -1024,8 +1030,8 @@ __exp_line_dir_parse (const char *line, char **dirname, struct mount3_state *ms) */ mnt3export = mnt3_mntpath_to_export (ms, dir, _gf_true); if (!mnt3export) { - gf_log (GF_EXP, GF_LOG_DEBUG, "%s not in mount state, " - "ignoring!", dir); + gf_msg_debug (GF_EXP, 0, "%s not in mount state, " + "ignoring!", dir); ret = GF_EXP_PARSE_ITEM_NOT_IN_MOUNT_STATE; goto out; } @@ -1131,8 +1137,8 @@ _exp_line_parse (const char *line, struct export_dir **dir, /* Get the directory string from the line */ ret = __exp_line_dir_parse (line, &dirstr, ms); if (ret < 0) { - gf_log (GF_EXP, GF_LOG_ERROR, "Parsing directory failed: %s", - strerror (-ret)); + gf_msg (GF_EXP, GF_LOG_ERROR, 0, NFS_MSG_PARSE_DIR_FAIL, + "Parsing directory failed: %s", strerror (-ret)); /* If parsing the directory failed, * we should simply fail because there's * nothing else we can extract from the string to make @@ -1147,8 +1153,8 @@ _exp_line_parse (const char *line, struct export_dir **dir, /* Parse the netgroup part of the string */ ret = __exp_line_ng_parse (line, &netgroups); if (ret < 0) { - gf_log (GF_EXP, GF_LOG_ERROR, "Critical error: %s", - strerror (-ret)); + gf_msg (GF_EXP, GF_LOG_ERROR, -ret, NFS_MSG_PARSE_FAIL, + "Critical error: %s", strerror (-ret)); /* Return values less than 0 * indicate critical failures (null parameters, * failure to allocate memory, etc). @@ -1157,6 +1163,10 @@ _exp_line_parse (const char *line, struct export_dir **dir, } if (ret != 0) { if (ret == GF_EXP_PARSE_ITEM_FAILURE) + /* Cannot change to gf_msg. + * gf_msg not giving output to STDOUT + * Bug id : BZ1215017 + */ gf_log (GF_EXP, GF_LOG_WARNING, "Error parsing netgroups for: %s", line); /* Even though parsing failed for the netgroups we should let @@ -1168,13 +1178,13 @@ _exp_line_parse (const char *line, struct export_dir **dir, /* Parse the host part of the string */ ret = __exp_line_host_parse (line, &hosts); if (ret < 0) { - gf_log (GF_EXP, GF_LOG_ERROR, "Critical error: %s", - strerror (-ret)); + gf_msg (GF_EXP, GF_LOG_ERROR, -ret, NFS_MSG_PARSE_FAIL, + "Critical error: %s", strerror (-ret)); goto free_and_out; } if (ret != 0) { if (ret == GF_EXP_PARSE_ITEM_FAILURE) - gf_log (GF_EXP, GF_LOG_WARNING, + gf_msg (GF_EXP, GF_LOG_WARNING, 0, NFS_MSG_PARSE_FAIL, "Error parsing hosts for: %s", line); /* If netgroups parsing failed, AND * host parsing failed, then theres something really @@ -1210,8 +1220,8 @@ exp_dir_get_netgroup (const struct export_dir *expdir, const char *netgroup) dict_res = dict_get (expdir->netgroups, (char *)netgroup); if (!dict_res) { - gf_log (GF_EXP, GF_LOG_DEBUG, "%s not found for %s", - netgroup, expdir->dir_name); + gf_msg_debug (GF_EXP, 0, "%s not found for %s", + netgroup, expdir->dir_name); } lookup_res = (struct export_item *)dict_res->data; @@ -1243,8 +1253,8 @@ exp_dir_get_host (const struct export_dir *expdir, const char *host) dict_res = dict_get (expdir->hosts, (char *)host); if (!dict_res) { - gf_log (GF_EXP, GF_LOG_DEBUG, "%s not found for %s", - host, expdir->dir_name); + gf_msg_debug (GF_EXP, 0, "%s not found for %s", + host, expdir->dir_name); /* Check if wildcards are allowed for the host */ dict_res = dict_get (expdir->hosts, "*"); @@ -1294,8 +1304,8 @@ exp_file_get_dir (const struct exports_file *file, const char *dir) dict_res = dict_get (file->exports_dict, dirdup); if (!dict_res) { - gf_log (GF_EXP, GF_LOG_DEBUG, "%s not found in %s", dirdup, - file->filename); + gf_msg_debug (GF_EXP, 0, "%s not found in %s", dirdup, + file->filename); goto out; } @@ -1399,7 +1409,7 @@ exp_file_parse (const char *filepath, struct exports_file **expfile, } if (ret < 0) { - gf_log (GF_EXP, GF_LOG_ERROR, + gf_msg (GF_EXP, GF_LOG_ERROR, -ret, NFS_MSG_PARSE_FAIL, "Failed to parse line #%lu", line_number); continue; /* Skip entering this line and continue */ } @@ -1408,9 +1418,9 @@ exp_file_parse (const char *filepath, struct exports_file **expfile, /* This just means the line was empty or started with a * '#' or a ' ' and we are ignoring it. */ - gf_log (GF_EXP, GF_LOG_DEBUG, - "Ignoring line #%lu because it started " - "with a %c", line_number, *line); + gf_msg_debug (GF_EXP, 0, + "Ignoring line #%lu because it started " + "with a %c", line_number, *line); continue; } |