summaryrefslogtreecommitdiffstats
path: root/utils/exportfs/exportfs.c
diff options
context:
space:
mode:
Diffstat (limited to 'utils/exportfs/exportfs.c')
-rw-r--r--utils/exportfs/exportfs.c14
1 files changed, 6 insertions, 8 deletions
diff --git a/utils/exportfs/exportfs.c b/utils/exportfs/exportfs.c
index 83d00a0..50f1e34 100644
--- a/utils/exportfs/exportfs.c
+++ b/utils/exportfs/exportfs.c
@@ -263,14 +263,10 @@ exportfs(char *arg, char *options, int verbose)
if (!exp) {
if (!(eep = mkexportent(hname, path, options)) ||
- !(exp = export_create(eep, 0))) {
- if (hp) free (hp);
- return;
- }
- } else if (!updateexportent(&exp->m_export, options)) {
- if (hp) free (hp);
- return;
- }
+ !(exp = export_create(eep, 0)))
+ goto out;
+ } else if (!updateexportent(&exp->m_export, options))
+ goto out;
if (verbose)
printf("exporting %s:%s\n", exp->m_client->m_hostname,
@@ -280,6 +276,8 @@ exportfs(char *arg, char *options, int verbose)
exp->m_changed = 1;
exp->m_warned = 0;
validate_export(exp);
+
+out:
if (hp) free (hp);
}