summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog4
-rw-r--r--utils/mountd/auth.c5
2 files changed, 7 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index 0e31d54..b981f63 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2004-12-06 Bruce Allan <bwa@us.ibm.com>
+ * utils/mountd/auth.c(auth_reload) Clear the "my_client" cache on
+ an auth_reload to avoid old data getting used.
+
2004-12-03 NeilBrown <neilb@cse.unsw.edu.au>
Release 1.0.7-pre1 for testing
diff --git a/utils/mountd/auth.c b/utils/mountd/auth.c
index 9de7ba7..4e1cdbd 100644
--- a/utils/mountd/auth.c
+++ b/utils/mountd/auth.c
@@ -30,6 +30,8 @@ enum auth_error
static void auth_fixpath(char *path);
static char *export_file = NULL;
+static nfs_export my_exp;
+static nfs_client my_client;
extern int new_cache;
@@ -55,6 +57,7 @@ auth_reload()
last_modified = stb.st_mtime;
export_freeall();
+ memset(&my_client, 0, sizeof(my_client));
// export_read(export_file);
xtab_export_read();
@@ -69,8 +72,6 @@ auth_authenticate_internal(char *what, struct sockaddr_in *caller,
nfs_export *exp;
if (new_cache) {
- static nfs_export my_exp;
- static nfs_client my_client;
int i;
/* return static nfs_export with details filled in */
if (my_client.m_naddr != 1 ||