aboutsummaryrefslogtreecommitdiffstats
path: root/games/acm/files
diff options
context:
space:
mode:
authorse <se@FreeBSD.org>2003-07-06 18:29:12 +0800
committerse <se@FreeBSD.org>2003-07-06 18:29:12 +0800
commita0e9dffee43346593c33a63b65120f91c39b076c (patch)
treec0b317350d10fbd4a8be85b07d1e6c19a9d301bf /games/acm/files
parent0f8757a1dadd157d1dee45abf9712235a24b0020 (diff)
downloadfreebsd-ports-gnome-a0e9dffee43346593c33a63b65120f91c39b076c.tar.gz
freebsd-ports-gnome-a0e9dffee43346593c33a63b65120f91c39b076c.tar.zst
freebsd-ports-gnome-a0e9dffee43346593c33a63b65120f91c39b076c.zip
Fix remotely exploitable buffer overflow (CVE-2002-0391).
Diffstat (limited to 'games/acm/files')
-rw-r--r--games/acm/files/patch-0924
1 files changed, 24 insertions, 0 deletions
diff --git a/games/acm/files/patch-09 b/games/acm/files/patch-09
new file mode 100644
index 000000000000..d0ce1c2950b1
--- /dev/null
+++ b/games/acm/files/patch-09
@@ -0,0 +1,24 @@
+--- dis/lib/xdr_var_array.c~ Mon May 11 20:58:55 1998
++++ dis/lib/xdr_var_array.c Sun Jul 6 03:21:47 2003
+@@ -75,6 +75,12 @@
+
+ #include <stdio.h>
+ #include <stdlib.h>
++#include <sys/param.h>
++#if __FreeBSD_Version__ >= 500113
++# include <sys/limits.h>
++#else
++# include <machine/limits.h>
++#endif
+ #include <rpc/types.h>
+ #include <rpc/xdr.h>
+
+@@ -104,7 +110,7 @@
+ register u_int nodesize;
+
+ c = size;
+- if ((c > maxsize) && (xdrs->x_op != XDR_FREE)) {
++ if ((c > maxsize || c > UINT_MAX/elsize) && (xdrs->x_op != XDR_FREE)) {
+ return (FALSE);
+ }
+ nodesize = c * elsize;