static void export_init(nfs_export *exp, nfs_client *clp,
struct exportent *nep);
+static void export_add(nfs_export *exp);
static int export_check(const nfs_export *exp, const struct addrinfo *ai,
const char *path);
static nfs_export *
xfree(exp->m_export.e_sqgids);
free(exp->m_export.e_mountpoint);
free(exp->m_export.e_fslocdata);
+ free(exp->m_export.e_uuid);
xfree(exp->m_export.e_hostname);
xfree(exp);
}
}
-int
+/**
+ * export_read - read entries from /etc/exports
+ * @fname: name of file to read from
+ *
+ */
+void
export_read(char *fname)
{
struct exportent *eep;
warn_duplicated_exports(exp, eep);
}
endexportent();
- return 0;
}
-/*
- * Create an in-core export struct from an export entry.
+/**
+ * export_create - create an in-core nfs_export record from an export entry
+ * @xep: export entry to lookup
+ * @canonical: if set, e_hostname is known to be canonical DNS name
+ *
+ * Returns a freshly instantiated export record, or NULL if
+ * a problem occurred.
*/
nfs_export *
export_create(struct exportent *xep, int canonical)
return new;
}
-/*
- * Add export entry to hash table
- */
-void
+static void
export_add(nfs_export *exp)
{
exp_hash_table *p_tbl;
return NULL;
}
-/*
- * Search hash table for export entry.
- */
+/**
+ * export_lookup - search hash table for export entry
+ * @hname: '\0'-terminated ASCII string containing client hostname to look for
+ * @path: '\0'-terminated ASCII string containing export path to look for
+ * @canonical: if set, @hname is known to be canonical DNS name
+ *
+ * Returns a pointer to nfs_export record matching @hname and @path,
+ * or NULL if the export was not found.
+ */
nfs_export *
-export_lookup(char *hname, char *path, int canonical)
+export_lookup(char *hname, char *path, int canonical)
{
nfs_client *clp;
nfs_export *exp;