X-Git-Url: https://git.decadent.org.uk/gitweb/?a=blobdiff_plain;f=support%2Fexport%2Frmtab.c;h=e11a22a8dd0d96fd18247c5375443c6c4b95eea0;hb=3f23f712477df48fd1d57376b65c44bb2a19ec16;hp=15aab155ff18791c15d6ab68ba32f82d7909a5f6;hpb=ac5b03be829b4c9369ebfb07a688308721103228;p=nfs-utils.git diff --git a/support/export/rmtab.c b/support/export/rmtab.c index 15aab15..e11a22a 100644 --- a/support/export/rmtab.c +++ b/support/export/rmtab.c @@ -23,7 +23,7 @@ int rmtab_read(void) { struct rmtabent *rep; - nfs_export *exp; + nfs_export *exp = NULL; setrmtabent("r"); while ((rep = getrmtabent(1, NULL)) != NULL) { @@ -31,7 +31,7 @@ rmtab_read(void) int htype; htype = client_gettype(rep->r_client); - if (htype == MCL_FQDN + if ((htype == MCL_FQDN || htype == MCL_SUBNETWORK) && (hp = gethostbyname (rep->r_client)) && (hp = hostent_dup (hp), exp = export_allowed (hp, rep->r_path))) { @@ -43,9 +43,7 @@ rmtab_read(void) if (!exp2) { struct exportent ee; dupexportent(&ee, &exp->m_export); - strncpy (ee.e_hostname, rep->r_client, - sizeof (ee.e_hostname) - 1); - ee.e_hostname[sizeof (ee.e_hostname) -1] = '\0'; + ee.e_hostname = rep->r_client; exp2 = export_create(&ee, 0); exp2->m_changed = exp->m_changed; }