diff options
author | 2003-07-11 13:03:48 +0000 | |
---|---|---|
committer | 2003-07-11 13:03:48 +0000 | |
commit | 51d03fb6bc6510cbe57068beb1bd42440b20ca00 (patch) | |
tree | cf4231bc0912532bc9c6e724f087f89df4720016 /net-dialup/cistronradius/files | |
parent | adding metadata.xml (diff) | |
download | historical-51d03fb6bc6510cbe57068beb1bd42440b20ca00.tar.gz historical-51d03fb6bc6510cbe57068beb1bd42440b20ca00.tar.bz2 historical-51d03fb6bc6510cbe57068beb1bd42440b20ca00.zip |
security update
Diffstat (limited to 'net-dialup/cistronradius/files')
-rw-r--r-- | net-dialup/cistronradius/files/cistronradius-1.6.6-security.patch | 42 | ||||
-rw-r--r-- | net-dialup/cistronradius/files/digest-cistronradius-1.6.6-r1 | 1 |
2 files changed, 43 insertions, 0 deletions
diff --git a/net-dialup/cistronradius/files/cistronradius-1.6.6-security.patch b/net-dialup/cistronradius/files/cistronradius-1.6.6-security.patch new file mode 100644 index 000000000000..be9e24b54d7b --- /dev/null +++ b/net-dialup/cistronradius/files/cistronradius-1.6.6-security.patch @@ -0,0 +1,42 @@ +--- radiusd-cistron-1.6.6.orig/src/acct.c ++++ radiusd-cistron-1.6.6/src/acct.c +@@ -119,9 +119,10 @@ + */ + static void make_wtmp(struct radutmp *ut, struct utmp *wt, int status) + { +- char buf[32]; ++ char buf[48]; + NAS *cl; + char *s; ++ int len; + + /* + * Fill out the UTMP struct for the radwtmp file. +@@ -143,11 +144,13 @@ + s = cl->shortname; + if (s == NULL || s[0] == 0) s = uue(&(ut->nas_address)); + #if UT_LINESIZE > 9 +- sprintf(buf, "%03d:%.20s", ut->nas_port, s); ++ sprintf(buf, "%03u:%.20s", ut->nas_port, s); + #else +- sprintf(buf, "%02d%.20s", ut->nas_port, s); ++ sprintf(buf, "%02u%.20s", ut->nas_port, s); + #endif +- strncpy(wt->ut_line, buf, UT_LINESIZE); ++ len = UT_LINESIZE; ++ if (len > sizeof(buf)) len = sizeof(buf); ++ strncpy(wt->ut_line, buf, len); + + /* + * We store the dynamic IP address in the hostname field. +@@ -155,7 +158,9 @@ + #ifdef UT_HOSTSIZE + if (ut->framed_address) { + ipaddr2str(buf, ntohl(ut->framed_address)); +- strncpy(wt->ut_host, buf, UT_HOSTSIZE); ++ len = UT_HOSTSIZE; ++ if (len > sizeof(buf)) len = sizeof(buf); ++ strncpy(wt->ut_host, buf, len); + } + #endif + #ifdef __svr4__ diff --git a/net-dialup/cistronradius/files/digest-cistronradius-1.6.6-r1 b/net-dialup/cistronradius/files/digest-cistronradius-1.6.6-r1 new file mode 100644 index 000000000000..894e581b50c0 --- /dev/null +++ b/net-dialup/cistronradius/files/digest-cistronradius-1.6.6-r1 @@ -0,0 +1 @@ +MD5 16084870890fd2ec577dbe183b51a379 radiusd-cistron-1.6.6.tar.gz 194154 |