|
|
@@ -1,6 +1,6 @@
|
|
|
Index: Makefile.defs
|
|
|
---- Makefile.defs.orig 2007-05-23 18:53:19 +0200
|
|
|
-+++ Makefile.defs 2007-05-24 08:59:11 +0200
|
|
|
+--- Makefile.defs.orig 2007-08-16 16:23:20 +0200
|
|
|
++++ Makefile.defs 2007-11-12 08:39:32 +0100
|
|
|
@@ -983,6 +983,8 @@
|
|
|
|
|
|
endif #mode=release
|
|
|
@@ -21,10 +21,37 @@ Index: Makefile.defs
|
|
|
endif
|
|
|
|
|
|
ifneq ($(found_lock_method), yes)
|
|
|
+Index: modules/permissions/parse_config.c
|
|
|
+--- modules/permissions/parse_config.c.orig 2007-08-16 16:22:57 +0200
|
|
|
++++ modules/permissions/parse_config.c 2007-11-12 08:39:32 +0100
|
|
|
+@@ -114,8 +114,11 @@
|
|
|
+ except = strstr(str, " EXCEPT ");
|
|
|
+ if (except) {
|
|
|
+ /* exception found */
|
|
|
+- strncpy(str2, str, except-str);
|
|
|
+- str2[except-str] = '\0';
|
|
|
++ int l = except - str;
|
|
|
++ if (l > sizeof(str2) - 1)
|
|
|
++ l = sizeof(str2) - 1;
|
|
|
++ strncpy(str2, str, l);
|
|
|
++ str2[l] = '\0';
|
|
|
+ /* except+8 points to the exception */
|
|
|
+ if (parse_expression_list(except+8, e_exceptions)) {
|
|
|
+ /* error */
|
|
|
+@@ -124,7 +127,8 @@
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ /* no exception */
|
|
|
+- strcpy(str2, str);
|
|
|
++ strncpy(str2, str, sizeof(str2)-1);
|
|
|
++ str2[sizeof(str2)-1] = '\0';
|
|
|
+ *e_exceptions = NULL;
|
|
|
+ }
|
|
|
+
|
|
|
Index: rtpproxy/main.c
|
|
|
---- rtpproxy/main.c.orig 2006-07-05 02:14:19 +0200
|
|
|
-+++ rtpproxy/main.c 2007-05-24 08:55:28 +0200
|
|
|
-@@ -38,7 +38,7 @@
|
|
|
+--- rtpproxy/main.c.orig 2007-11-12 03:17:02 +0100
|
|
|
++++ rtpproxy/main.c 2007-11-12 08:43:47 +0100
|
|
|
+@@ -40,7 +40,7 @@
|
|
|
#include <sys/select.h>
|
|
|
#include <sys/stat.h>
|
|
|
#include <assert.h>
|
|
|
@@ -33,7 +60,7 @@ Index: rtpproxy/main.c
|
|
|
#include <err.h>
|
|
|
#endif
|
|
|
#include <errno.h>
|
|
|
-@@ -128,7 +128,11 @@
|
|
|
+@@ -139,7 +139,11 @@
|
|
|
bindhost = NULL;
|
|
|
|
|
|
if ((n = resolve(ia, pf, bindhost, servname, AI_PASSIVE)) != 0)
|
|
|
@@ -45,7 +72,7 @@ Index: rtpproxy/main.c
|
|
|
}
|
|
|
|
|
|
static void
|
|
|
-@@ -386,10 +390,9 @@
|
|
|
+@@ -399,10 +403,9 @@
|
|
|
|
|
|
rtpp_log_write(RTPP_LOG_DBUG, glog, "received command \"%s\"", buf);
|
|
|
|
|
|
@@ -57,7 +84,7 @@ Index: rtpproxy/main.c
|
|
|
if (**ap != '\0') {
|
|
|
argc++;
|
|
|
if (++ap >= &argv[10])
|
|
|
-@@ -642,7 +645,11 @@
|
|
|
+@@ -660,7 +663,11 @@
|
|
|
}
|
|
|
} else {
|
|
|
rtpp_log_write(RTPP_LOG_ERR, glog, "getaddrinfo: %s",
|
|
|
@@ -69,8 +96,8 @@ Index: rtpproxy/main.c
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
-@@ -1170,7 +1177,7 @@
|
|
|
- if (umode == 0) {
|
|
|
+@@ -1181,7 +1188,7 @@
|
|
|
+ if (cf->umode == 0) {
|
|
|
unlink(cmd_sock);
|
|
|
memset(&ifsun, '\0', sizeof ifsun);
|
|
|
-#if !defined(__linux__) && !defined(__solaris__)
|
|
|
@@ -78,19 +105,19 @@ Index: rtpproxy/main.c
|
|
|
ifsun.sun_len = strlen(cmd_sock);
|
|
|
#endif
|
|
|
ifsun.sun_family = AF_LOCAL;
|
|
|
-@@ -1203,7 +1210,7 @@
|
|
|
- flags = fcntl(controlfd, F_GETFL);
|
|
|
- fcntl(controlfd, F_SETFL, flags | O_NONBLOCK);
|
|
|
+@@ -1483,7 +1490,7 @@
|
|
|
+
|
|
|
+ controlfd = init_controlfd(&cf);
|
|
|
|
|
|
-#if !defined(__solaris__)
|
|
|
+#if !defined(__sun__)
|
|
|
- if (nodaemon == 0) {
|
|
|
+ if (cf.nodaemon == 0) {
|
|
|
if (daemon(0, 0) == -1)
|
|
|
err(1, "can't switch into daemon mode");
|
|
|
Index: rtpproxy/rtpp_util.h
|
|
|
---- rtpproxy/rtpp_util.h.orig 2006-04-13 06:29:19 +0200
|
|
|
-+++ rtpproxy/rtpp_util.h 2007-05-24 08:55:28 +0200
|
|
|
-@@ -83,7 +83,7 @@
|
|
|
+--- rtpproxy/rtpp_util.h.orig 2007-07-28 10:17:02 +0200
|
|
|
++++ rtpproxy/rtpp_util.h 2007-11-12 08:39:32 +0100
|
|
|
+@@ -84,7 +84,7 @@
|
|
|
#define DEFFILEMODE (S_IRUSR|S_IWUSR|S_IRGRP|S_IWGRP|S_IROTH|S_IWOTH)
|
|
|
#endif
|
|
|
|
|
|
@@ -99,35 +126,3 @@ Index: rtpproxy/rtpp_util.h
|
|
|
#define err(exitcode, format, args...) \
|
|
|
errx(exitcode, format ": %s", ## args, strerror(errno))
|
|
|
#define errx(exitcode, format, args...) \
|
|
|
-
|
|
|
-------------------------------------------------------------------------------
|
|
|
-
|
|
|
-Security Fix (OpenPKG-SA-2006.042, OpenPKG-TT-E1#29)
|
|
|
-
|
|
|
-Index: modules/permissions/parse_config.c
|
|
|
---- modules/permissions/parse_config.c.orig 2007-03-12 16:22:54 +0100
|
|
|
-+++ modules/permissions/parse_config.c 2007-05-24 08:55:28 +0200
|
|
|
-@@ -114,8 +114,11 @@
|
|
|
- except = strstr(str, " EXCEPT ");
|
|
|
- if (except) {
|
|
|
- /* exception found */
|
|
|
-- strncpy(str2, str, except-str);
|
|
|
-- str2[except-str] = '\0';
|
|
|
-+ int l = except - str;
|
|
|
-+ if (l > sizeof(str2) - 1)
|
|
|
-+ l = sizeof(str2) - 1;
|
|
|
-+ strncpy(str2, str, l);
|
|
|
-+ str2[l] = '\0';
|
|
|
- /* except+8 points to the exception */
|
|
|
- if (parse_expression_list(except+8, e_exceptions)) {
|
|
|
- /* error */
|
|
|
-@@ -124,7 +127,8 @@
|
|
|
- }
|
|
|
- } else {
|
|
|
- /* no exception */
|
|
|
-- strcpy(str2, str);
|
|
|
-+ strncpy(str2, str, sizeof(str2)-1);
|
|
|
-+ str2[sizeof(str2)-1] = '\0';
|
|
|
- *e_exceptions = NULL;
|
|
|
- }
|
|
|
-
|