Current 2.3 under Solaris 7/x86 ...
Katsuhiro Kondou
kondou at nec.co.jp
Tue Jun 13 15:29:15 UTC 2000
In article <20000613234535O.kondou at inn.do.mms.mt.nec.co.jp>,
Katsuhiro Kondou <kondou at nec.co.jp> wrote;
} Ok, I think nnrpperlauth or nnrppythonauth is enabled in your
} inn.conf, and the problem happens. I'll fix it anyway. Tell
} me if those parameters are false.
Try attached. That should fix.
--
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 00:05:34 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;
More information about the inn-workers
mailing list