2008-06-25 01:04:40

by Steve Dickson

[permalink] [raw]
Subject: [PATCH] nfs-utils: FQDNs in the rmtab causes exportfs to seg fault

When a FQDN exists in /var/lib/nfs/rmtab it causes
the exportfs command to seg fault due to the nfs_export pointer
not being allocated. Reworking the parentheses in rmtab_read()
so the htype variable is evaluated correctly fix the problem.

Signed-off-by: Steve Dickson <[email protected]>

diff --git a/support/export/rmtab.c b/support/export/rmtab.c
index 0ce3682..e11a22a 100644
--- a/support/export/rmtab.c
+++ b/support/export/rmtab.c
@@ -31,10 +31,10 @@ rmtab_read(void)
int htype;

htype = client_gettype(rep->r_client);
- if (htype == MCL_FQDN || (htype == MCL_SUBNETWORK
+ if ((htype == MCL_FQDN || htype == MCL_SUBNETWORK)
&& (hp = gethostbyname (rep->r_client))
&& (hp = hostent_dup (hp),
- (exp = export_allowed (hp, rep->r_path))))) {
+ exp = export_allowed (hp, rep->r_path))) {
/* see if the entry already exists, otherwise this was an instantiated
* wild card, and we must add it
*/