Current 2.3 under Solaris 7/x86 ...
Katsuhiro Kondou
kondou at nec.co.jp
Tue Jun 13 21:52:48 UTC 2000
In article <Pine.BSF.4.21.0006131334460.10507-100000 at thelab.hub.org>,
The Hermit Hacker <scrappy at hub.org> wrote;
} okay, just went through and make sure that my inn.conf was up to date with
} what is in the site directory (just in case I was missing something), and
} still no change ...
How about this time? (patch is diff from CURRENT)
--
Katsuhiro Kondou
--- nnrpd/nnrpd.c.orig Mon Jun 12 10:27:12 2000
+++ nnrpd/nnrpd.c Wed Jun 14 00:25:30 2000
@@ -413,6 +413,7 @@
char *ClientAddr;
char accesslist[BIG_BUFFER];
int code;
+ static ACCESSGROUP *authconf;
/* Get the peer's name. */
length = sizeof sin;
@@ -489,6 +490,10 @@
}
NGgetlist(&PERMreadlist, accesslist);
PERMpostlist = PERMreadlist;
+ if (!authconf)
+ authconf = NEW(ACCESSGROUP, 1);
+ PERMaccessconf = authconf;
+ SetDefaultAccess(PERMaccessconf);
} else {
#endif /* DO_PERL */
@@ -506,6 +511,10 @@
PERMspecified = NGgetlist(&PERMreadlist, accesslist);
PERMpostlist = PERMreadlist;
}
+ if (!authconf)
+ authconf = NEW(ACCESSGROUP, 1);
+ PERMaccessconf = authconf;
+ SetDefaultAccess(PERMaccessconf);
} else {
#endif /* DO_PYTHON */
PERMgetaccess();
--- nnrpd/nnrpd.h.orig Mon Jun 12 10:27:12 2000
+++ nnrpd/nnrpd.h Wed Jun 14 00:06:32 2000
@@ -203,6 +203,7 @@
extern BOOL ParseDistlist();
extern READTYPE READline();
extern char *OVERGetHeader(char *p, int field);
+extern void SetDefaultAccess(ACCESSGROUP*);
#if defined(STDC_HEADERS) || defined(HAVE_STDARG_H)
extern void Reply(const char *fmt, ...);
--- nnrpd/perm.c.orig Wed Jun 14 00:06:58 2000
+++ nnrpd/perm.c Wed Jun 14 06:49:57 2000
@@ -85,7 +85,6 @@
static METHOD *copy_method(METHOD*);
static void free_method(METHOD*);
static AUTHGROUP *copy_authgroup(AUTHGROUP*);
-static void setdefaultaccess(ACCESSGROUP*);
static void free_authgroup(AUTHGROUP*);
static ACCESSGROUP *copy_accessgroup(ACCESSGROUP*);
static void free_accessgroup(ACCESSGROUP*);
@@ -403,7 +402,7 @@
return(ret);
}
-static void setdefaultaccess(ACCESSGROUP *curaccess)
+void SetDefaultAccess(ACCESSGROUP *curaccess)
{
curaccess->localtime = FALSE;
curaccess->strippath = FALSE;
@@ -1025,7 +1024,7 @@
curaccess = NEW(ACCESSGROUP, 1);
memset((POINTER) curaccess, 0, sizeof(ACCESSGROUP));
memset(ConfigBit, '\0', ConfigBitsize);
- setdefaultaccess(curaccess);
+ SetDefaultAccess(curaccess);
}
curaccess->name = str;
inwhat = 2;
@@ -1118,7 +1117,7 @@
(void)memset((POINTER)curgroup->access, 0,
sizeof(ACCESSGROUP));
memset(ConfigBit, '\0', ConfigBitsize);
- setdefaultaccess(curgroup->access);
+ SetDefaultAccess(curgroup->access);
}
accessdecl_parse(curgroup->access, cf->f, tok);
break;
@@ -1327,6 +1326,7 @@
int i;
char *cp, **list;
char *user[2];
+ static ACCESSGROUP *noaccessconf;
if (ConfigBit == NULL) {
if (PERMMAX % 8 == 0)
@@ -1416,8 +1416,13 @@
}
} else
VirtualPathlen = 0;
- } else
+ } else {
+ if (!noaccessconf)
+ noaccessconf = NEW(ACCESSGROUP, 1);
+ PERMaccessconf = noaccessconf;
+ SetDefaultAccess(PERMaccessconf);
syslog(L_TRACE, "%s no_access_realm", ClientHost);
+ }
}
/* strip blanks out of a string */
More information about the inn-workers
mailing list