summaryrefslogtreecommitdiffstats
path: root/support/export/xtab.c
diff options
context:
space:
mode:
authorJeff Layton <jlayton@redhat.com>2007-09-27 06:53:53 -0400
committerNeil Brown <neilb@suse.de>2007-09-28 11:39:56 +1000
commit4c337e2131123c339bc4921779b57b69b77be2fd (patch)
tree2aa76fb9609a81e3945bc8cd2cf21c209e5054b0 /support/export/xtab.c
parent1cecd88106230fc9a8c3527bcdf4195150e9ad64 (diff)
downloadnfs-utils-4c337e2131123c339bc4921779b57b69b77be2fd.tar.gz
nfs-utils-4c337e2131123c339bc4921779b57b69b77be2fd.tar.xz
nfs-utils-4c337e2131123c339bc4921779b57b69b77be2fd.zip
rpc.mountd: make exportent->e_hostname a dynamically-allocated string
This makes the e_hostname field of the exportent into a pointer to a dynamically allocated string. This is necessary since this is field is often filled out from the m_hostname. This too adds a few micro-optimizations as we can avoid copying the string in some places and simply pass a pointer to the original string instead. Signed-off-by: Jeff Layton <jlayton@redhat.com> Acked-by: Steve Dickson <steved@redhat.com> Signed-off-by: Neil Brown <neilb@suse.de>
Diffstat (limited to 'support/export/xtab.c')
-rw-r--r--support/export/xtab.c9
1 files changed, 2 insertions, 7 deletions
diff --git a/support/export/xtab.c b/support/export/xtab.c
index 292087b..990113e 100644
--- a/support/export/xtab.c
+++ b/support/export/xtab.c
@@ -108,10 +108,7 @@ xtab_write(char *xtab, char *xtabtmp, int is_export)
/* write out the export entry using the FQDN */
xe = exp->m_export;
- strncpy(xe.e_hostname,
- exp->m_client->m_hostname,
- sizeof (xe.e_hostname) - 1);
- xe.e_hostname[sizeof (xe.e_hostname) - 1] = '\0';
+ xe.e_hostname = exp->m_client->m_hostname;
putexportent(&xe);
}
}
@@ -146,9 +143,7 @@ xtab_append(nfs_export *exp)
return;
setexportent(_PATH_XTAB, "a");
xe = exp->m_export;
- strncpy(xe.e_hostname, exp->m_client->m_hostname,
- sizeof (xe.e_hostname) - 1);
- xe.e_hostname[sizeof (xe.e_hostname) - 1] = '\0';
+ xe.e_hostname = exp->m_client->m_hostname;
putexportent(&xe);
endexportent();
xfunlock(lockid);