diff options
-rw-r--r-- | UPDATING | 10 | ||||
-rw-r--r-- | japanese/FreeWnn-lib/Makefile | 2 | ||||
-rw-r--r-- | japanese/FreeWnn-lib/files/patch-Wnn-jd-jserverrc | 11 | ||||
-rw-r--r-- | japanese/FreeWnn-lib/files/patch-Wnn-jd-serverdefs (renamed from japanese/FreeWnn-lib/files/patch-serverdefs) | 4 | ||||
-rw-r--r-- | japanese/FreeWnn-server/Makefile | 6 | ||||
-rw-r--r-- | japanese/FreeWnn-server/files/patch-Wnn-jserver-de.c | 67 | ||||
-rw-r--r-- | japanese/FreeWnn-server/files/patch-Wnn-jserver-de_header.h | 19 | ||||
-rw-r--r-- | japanese/FreeWnn-server/files/patch-Wnn-jserver-initjserv.c | 24 |
8 files changed, 133 insertions, 10 deletions
@@ -6,6 +6,16 @@ You should get into the habit of checking this file for changes each time you update your ports collection, before attempting any port upgrades. +20081030: + AFFECTS: users of japanese/FreeWnn-server + AUTHOR: hrs@FreeBSD.org + + The jserver daemon in japanese/FreeWnn-server port now uses "127.0.0.1" + as the default listen address for security reason. If you need + the wildcard address (INADDR_ANY), you have to explicitly set + "listenaddr" to 0.0.0.0 in ${PREFIX}/lib/wnn/ja_JP/jserverrc or + add "-a 0.0.0.0" to ${wnn_flags} in /etc/rc.conf. + 20081026: AFFECTS: users of www/asterisk-gui AUTHOR: pneumann@gmail.com diff --git a/japanese/FreeWnn-lib/Makefile b/japanese/FreeWnn-lib/Makefile index 88d0ccfa95bc..7532f4f146c9 100644 --- a/japanese/FreeWnn-lib/Makefile +++ b/japanese/FreeWnn-lib/Makefile @@ -7,7 +7,7 @@ PORTNAME= FreeWnn PORTVERSION= 1.1.1.a021 -PORTREVISION= 3 +PORTREVISION= 4 CATEGORIES?= japanese MASTER_SITES= ftp://ftp.freewnn.org/pub/%SUBDIR%/ \ ${MASTER_SITE_SOURCEFORGE_JP} diff --git a/japanese/FreeWnn-lib/files/patch-Wnn-jd-jserverrc b/japanese/FreeWnn-lib/files/patch-Wnn-jd-jserverrc new file mode 100644 index 000000000000..a690aa99e24b --- /dev/null +++ b/japanese/FreeWnn-lib/files/patch-Wnn-jd-jserverrc @@ -0,0 +1,11 @@ +--- Wnn/jd/jserverrc.orig 2008-10-30 15:41:31.000000000 +0900 ++++ Wnn/jd/jserverrc 2008-10-30 15:41:47.000000000 +0900 +@@ -29,6 +29,8 @@ + ; Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + ; + ++listenaddr 127.0.0.1 ++ + max_client 64 + jserver_dir @LIBDIR/@LANG/dic + readfile pubdic/kihon.dic diff --git a/japanese/FreeWnn-lib/files/patch-serverdefs b/japanese/FreeWnn-lib/files/patch-Wnn-jd-serverdefs index 38e3b5397ac3..d37852859185 100644 --- a/japanese/FreeWnn-lib/files/patch-serverdefs +++ b/japanese/FreeWnn-lib/files/patch-Wnn-jd-serverdefs @@ -1,5 +1,5 @@ ---- Wnn/jd/serverdefs.orig Tue May 20 13:56:08 2003 -+++ Wnn/jd/serverdefs Tue May 20 13:56:46 2003 +--- Wnn/jd/serverdefs.orig 2008-10-30 15:08:34.000000000 +0900 ++++ Wnn/jd/serverdefs 2008-10-30 15:09:22.000000000 +0900 @@ -30,12 +30,12 @@ ; diff --git a/japanese/FreeWnn-server/Makefile b/japanese/FreeWnn-server/Makefile index 865db29eaf7c..67e4e5e20deb 100644 --- a/japanese/FreeWnn-server/Makefile +++ b/japanese/FreeWnn-server/Makefile @@ -7,7 +7,7 @@ PORTNAME= FreeWnn PORTVERSION= 1.1.1.a021 -PORTREVISION= 3 +PORTREVISION= 4 CATEGORIES?= japanese MASTER_SITES= ftp://ftp.freewnn.org/pub/%SUBDIR%/ \ ${MASTER_SITE_SOURCEFORGE_JP} @@ -17,7 +17,7 @@ PKGNAMESUFFIX= -server DISTNAME= ${PORTNAME}-1.1.1-a021 MAINTAINER= hrs@FreeBSD.org -COMMENT?= A Japanese/Chinese/Korean input method (Japanese client libraries) +COMMENT?= A Japanese/Chinese/Korean input method (Japanese server) USE_BZIP2= yes GNU_CONFIGURE= yes @@ -32,7 +32,7 @@ SUB_LIST= RC_SUBR=${RC_SUBR} PKGINSTALL= ${WRKDIR}/pkg-install WNNTYPE?= WNN -CONFIGURE_ARGS= --enable-library=no ${CONFIGURE_ARGS.${WNNTYPE}} +CONFIGURE_ARGS= --enable-libraries=no ${CONFIGURE_ARGS.${WNNTYPE}} # Wnn LIB_DEPENDS.WNN= wnn.0:${PORTSDIR}/japanese/FreeWnn-lib diff --git a/japanese/FreeWnn-server/files/patch-Wnn-jserver-de.c b/japanese/FreeWnn-server/files/patch-Wnn-jserver-de.c new file mode 100644 index 000000000000..7b1e79e93667 --- /dev/null +++ b/japanese/FreeWnn-server/files/patch-Wnn-jserver-de.c @@ -0,0 +1,67 @@ +--- Wnn/jserver/de.c.orig 2004-06-19 01:32:41.000000000 +0900 ++++ Wnn/jserver/de.c 2008-10-30 15:45:46.000000000 +0900 +@@ -102,9 +102,9 @@ + #endif + + #ifndef INET6 +-# define OPTIONARGS "Df:s:h:N:p:vu4" ++# define OPTIONARGS "a:Df:s:h:N:p:vu4" + #else +-# define OPTIONARGS "Df:s:h:N:p:vu46" ++# define OPTIONARGS "a:Df:s:h:N:p:vu46" + #endif /* INET6 */ + + /* Accept Socket */ +@@ -1063,7 +1063,16 @@ + #else + saddr_in.sin_family = AF_INET; + saddr_in.sin_port = htons (port); +- saddr_in.sin_addr.s_addr = htonl (INADDR_ANY); ++ if (!inet_aton(listenaddr, &saddr_in.sin_addr)) { ++ struct hostent *hp; ++ struct in_addr **pptr; ++ ++ if ((hp = gethostbyname(listenaddr)) == NULL) { ++ xerror ("could not create inet socket"); ++ } ++ pptr = (struct in_addr **)hp->h_addr_list; ++ memcpy(&saddr_in.sin_addr, pptr[0], sizeof(struct in_addr)); ++ } + if ((sock_d_in = socket (AF_INET, SOCK_STREAM, 0)) == ERROR) + #endif + { +@@ -1193,6 +1202,7 @@ + {"inet", 0, NULL, '4'}, + {"inet6", 0, NULL, '6'}, + {"jserverrc", 1, NULL, 'f'}, ++ {"listenaddr", 1, NULL, 'a'}, + {"version", 0, NULL, 'v'}, + {0, 0, 0, 0} + }; +@@ -1209,7 +1219,13 @@ + break; + + case 'f': /* --jserverrc FILENAME */ +- strcpy (jserverrcfile, optarg); ++ strncpy(jserverrcfile, optarg, sizeof(jserverrcfile) - 1); ++ jserverrcfile[sizeof(jserverrcfile) - 1] = '\0'; ++ break; ++ ++ case 'a': /* --listenaddr ADDR */ ++ strncpy(listenaddr, optarg, sizeof(listenaddr) - 1); ++ listenaddr[sizeof(listenaddr) - 1] = '\0'; + break; + + case 's': +@@ -1318,9 +1334,9 @@ + { + fprintf(stderr, + #ifdef INET6 +- "usage: %s [-Du46][-f <init_file> -s <log_file(\"-\" for stderr)> -h <pos_file> -N <serverNO> -p <port_base>]\n", ++ "usage: %s [-Du46][-f <init_file> -a <listenaddr> -s <log_file(\"-\" for stderr)> -h <pos_file> -N <serverNO> -p <port_base>]\n", + #else +- "usage: %s [-Du4][-f <init_file> -s <log_file(\"-\" for stderr)> -h <pos_file> -N <serverNO> -p <port_base>]\n", ++ "usage: %s [-Du4][-f <init_file> -a <listenaddr> -s <log_file(\"-\" for stderr)> -h <pos_file> -N <serverNO> -p <port_base>]\n", + #endif + cmd_name); + fprintf(stderr, diff --git a/japanese/FreeWnn-server/files/patch-Wnn-jserver-de_header.h b/japanese/FreeWnn-server/files/patch-Wnn-jserver-de_header.h new file mode 100644 index 000000000000..70c8a57c5a73 --- /dev/null +++ b/japanese/FreeWnn-server/files/patch-Wnn-jserver-de_header.h @@ -0,0 +1,19 @@ +--- Wnn/jserver/de_header.h.orig 2004-12-30 02:45:32.000000000 +0900 ++++ Wnn/jserver/de_header.h 2008-10-30 15:45:17.000000000 +0900 +@@ -52,6 +52,8 @@ + # endif /* KOREAN */ + #endif /* CHINESE */ + ++#include <netdb.h> ++ + #include "jslib.h" + #include "commonhd.h" + #include "jdata.h" +@@ -205,6 +207,7 @@ + + GLOBAL char jserver_dir[MAXPATHLEN]; + GLOBAL char jserverrcfile[MAXPATHLEN]; ++GLOBAL char listenaddr[NI_MAXHOST]; + GLOBAL char *hinsi_file_name GLOBAL_VAL(NULL); + GLOBAL char lang_dir[MAXPATHLEN]; + diff --git a/japanese/FreeWnn-server/files/patch-Wnn-jserver-initjserv.c b/japanese/FreeWnn-server/files/patch-Wnn-jserver-initjserv.c index 6fb5a53487a8..a6bd9d040f95 100644 --- a/japanese/FreeWnn-server/files/patch-Wnn-jserver-initjserv.c +++ b/japanese/FreeWnn-server/files/patch-Wnn-jserver-initjserv.c @@ -1,6 +1,22 @@ ---- Wnn/jserver/initjserv.c.orig Wed Dec 7 18:33:51 2005 -+++ Wnn/jserver/initjserv.c Wed Dec 7 18:34:43 2005 -@@ -305,7 +305,9 @@ +--- Wnn/jserver/initjserv.c.orig 2003-05-12 03:43:15.000000000 +0900 ++++ Wnn/jserver/initjserv.c 2008-10-30 16:01:50.000000000 +0900 +@@ -215,6 +215,15 @@ + } + log_debug ("max_client=%d", max_client); + } ++ else if (listenaddr[0] == '\0' && strcmp (code, "listenaddr") == 0) ++ { ++ num = sscanf (data, "%s %s ", code, &listenaddr); ++ if (num != 2) ++ { ++ log_err ("command %s invalid.", code); ++ continue; ++ } ++ } + else if (strcmp (code, "max_sticky_env") == 0) + { + num = sscanf (data, "%s %d ", code, &max_sticky_env); +@@ -305,7 +314,9 @@ } fclose (fp); @@ -10,7 +26,7 @@ return (0); } -@@ -340,7 +342,9 @@ +@@ -340,7 +351,9 @@ files[fid].localf = LOCAL; strcpy (files[fid].name, buffer); |