summaryrefslogtreecommitdiff
path: root/inputmethod/skkinput
diff options
context:
space:
mode:
authorseb <seb>2002-05-31 13:00:02 +0000
committerseb <seb>2002-05-31 13:00:02 +0000
commitf0464cd0631a8757e51dbd0cb20246ccd10ac58d (patch)
tree43d22d046c033dc729ec370014ba513e6823d0a9 /inputmethod/skkinput
parentb25219f0eb166ed8086bfe845047893f8304d724 (diff)
downloadpkgsrc-f0464cd0631a8757e51dbd0cb20246ccd10ac58d.tar.gz
Reimport of package skkinput from japanese/skkinput into inputmethod/skkinput.
This is part of the japanese category retirement. CATEGORIES adjusted.
Diffstat (limited to 'inputmethod/skkinput')
-rw-r--r--inputmethod/skkinput/DESCR4
-rw-r--r--inputmethod/skkinput/INSTALL39
-rw-r--r--inputmethod/skkinput/MESSAGE9
-rw-r--r--inputmethod/skkinput/Makefile34
-rw-r--r--inputmethod/skkinput/PLIST9
-rw-r--r--inputmethod/skkinput/distinfo9
-rw-r--r--inputmethod/skkinput/patches/patch-aa21
-rw-r--r--inputmethod/skkinput/patches/patch-ab103
-rw-r--r--inputmethod/skkinput/patches/patch-ac75
-rw-r--r--inputmethod/skkinput/patches/patch-ad184
-rw-r--r--inputmethod/skkinput/patches/patch-ae39
11 files changed, 526 insertions, 0 deletions
diff --git a/inputmethod/skkinput/DESCR b/inputmethod/skkinput/DESCR
new file mode 100644
index 00000000000..6e37b3af95b
--- /dev/null
+++ b/inputmethod/skkinput/DESCR
@@ -0,0 +1,4 @@
+ skkinput is an X11 frontend of SKK (Simple Kana to Kanji conversion).
+It behaves as a kana-kanji conversion server of kinput, kinput2, and Ximp
+protocols and X11R6 X Input Method. It makes use of skkserv to access
+the common dictionary.
diff --git a/inputmethod/skkinput/INSTALL b/inputmethod/skkinput/INSTALL
new file mode 100644
index 00000000000..897ce217ba0
--- /dev/null
+++ b/inputmethod/skkinput/INSTALL
@@ -0,0 +1,39 @@
+#! /bin/sh
+# $NetBSD: INSTALL,v 1.1.1.1 2002/05/31 13:00:02 seb Exp $
+
+conf=@PKGBASE@/etc/skk.conf
+
+case "$2" in
+POST-INSTALL)
+ # install skkserv port number
+ if grep '^skkserv[ ]' /etc/services >/dev/null; then
+ :
+ else
+ echo '
+skkserv 1178/tcp # SKK server' >>/etc/services
+ fi
+
+ # install skk.conf
+ if [ -f $conf ] && grep -v -e '^#' -e '^$' $conf >/dev/null; then
+ : file exists and it seems to have some configurations
+ else
+ cat <<'END' >$conf
+# skk.conf - configuration file for SKK client programs
+
+# Syntax
+# Lines start with '#' are comments.
+#
+# skkserv_host: <hostnme> # Host which skkserv is running on.
+# # default: localhost
+#
+# skkserv_port: <port> # TCP service name or port number of skkserv.
+# # default: skkserv
+#
+
+# skkserv_host: localhost
+# skkserv_port: skkserv
+# skkserv_port: 1178
+END
+ fi
+ ;;
+esac
diff --git a/inputmethod/skkinput/MESSAGE b/inputmethod/skkinput/MESSAGE
new file mode 100644
index 00000000000..85f123cad84
--- /dev/null
+++ b/inputmethod/skkinput/MESSAGE
@@ -0,0 +1,9 @@
+======================================================================
+$NetBSD: MESSAGE,v 1.1.1.1 2002/05/31 13:00:02 seb Exp $
+
+ To use skkinput, the dictionary server (skkserv) is almost
+required. Use "skkserv" pkg, or, if you have another machine
+running skkserv, put the hostname in ${LOCALBASE}/etc/skk.conf
+file, and skkinput will connect to the host.
+
+======================================================================
diff --git a/inputmethod/skkinput/Makefile b/inputmethod/skkinput/Makefile
new file mode 100644
index 00000000000..c376ca9420f
--- /dev/null
+++ b/inputmethod/skkinput/Makefile
@@ -0,0 +1,34 @@
+# $NetBSD: Makefile,v 1.1.1.1 2002/05/31 13:00:02 seb Exp $
+
+DISTNAME= skkinput-2.03
+CATEGORIES= japanese inputmethod
+MASTER_SITES= http://member.nifty.ne.jp/Tatari_SAKAMOTO/
+
+MAINTAINER= packages@netbsd.org
+HOMEPAGE= http://www.yajima.kuis.kyoto-u.ac.jp/staffs/sakamoto/skkinput/skkinput.html
+COMMENT= X11 frontend for SKK
+
+BUILD_DEFS+= USE_INET6
+
+USE_IMAKE= YES
+
+# skk.conf uses /usr/pkg (${LOCALBASE}), not /usr/X11R6 (${PREFIX})
+MAKE_ENV= MAKE_FLAGS='EXECBASE=${LOCALBASE}'
+PLIST_SUBST= PKGBASE=${LOCALBASE}
+
+DESCR_SRC= ${WRKDIR}/DESCR
+INSTALL_FILE= ${WRKDIR}/INSTALL
+
+post-build:
+ ${SED} 's#@PKGBASE@#${LOCALBASE}#g' ${PKGDIR}/DESCR >${DESCR_SRC}
+ ${SED} 's#@PKGBASE@#${LOCALBASE}#g' ${PKGDIR}/INSTALL >${INSTALL_FILE}
+
+post-install:
+ ${INSTALL_MAN} ${WRKSRC}/skkinput.man ${PREFIX}/man/ja_JP.EUC/man1/skkinput.1
+ ${INSTALL_DATA_DIR} ${PREFIX}/share/doc/skkinput
+ ${INSTALL_DATA} ${WRKSRC}/README.jis ${PREFIX}/share/doc/skkinput
+ ${INSTALL_DATA} ${WRKSRC}/FAQ.jis ${PREFIX}/share/doc/skkinput
+ ${INSTALL_DATA} ${WRKSRC}/BUGS.jis ${PREFIX}/share/doc/skkinput
+ ${SH} ${INSTALL_FILE} ${PKGNAME} POST-INSTALL
+
+.include "../../mk/bsd.pkg.mk"
diff --git a/inputmethod/skkinput/PLIST b/inputmethod/skkinput/PLIST
new file mode 100644
index 00000000000..977427d176e
--- /dev/null
+++ b/inputmethod/skkinput/PLIST
@@ -0,0 +1,9 @@
+@comment $NetBSD: PLIST,v 1.1.1.1 2002/05/31 13:00:02 seb Exp $
+bin/skkinput
+lib/X11/app-defaults/Skkinput
+man/ja_JP.EUC/man1/skkinput.1
+share/doc/skkinput/README.jis
+share/doc/skkinput/FAQ.jis
+share/doc/skkinput/BUGS.jis
+@dirrm share/doc/skkinput
+@unexec if [ -f ${PKGBASE}/etc/skk.conf ]; then echo 'Remove "${PKGBASE}/etc/skk.conf" if you will not use SKK programs any longer.'; fi
diff --git a/inputmethod/skkinput/distinfo b/inputmethod/skkinput/distinfo
new file mode 100644
index 00000000000..c08bc8e86f2
--- /dev/null
+++ b/inputmethod/skkinput/distinfo
@@ -0,0 +1,9 @@
+$NetBSD: distinfo,v 1.1.1.1 2002/05/31 13:00:02 seb Exp $
+
+SHA1 (skkinput-2.03.tar.gz) = d36af4f0c28ce86baee658560e36566885fbe2da
+Size (skkinput-2.03.tar.gz) = 398821 bytes
+SHA1 (patch-aa) = 662b5d54615745fa2bad9d662f9db88009df5d4e
+SHA1 (patch-ab) = 205a6fed61467f188abecfa559d3405832fe07a8
+SHA1 (patch-ac) = 77a06d8827e048c735543cae75ce6116b1318264
+SHA1 (patch-ad) = 1c5597d2fa41a00ce662eec5b8944dd823b4b8fd
+SHA1 (patch-ae) = 1cf9ea8cb4bf29ffcdb8d5ad5b2b6d74b6e0eca5
diff --git a/inputmethod/skkinput/patches/patch-aa b/inputmethod/skkinput/patches/patch-aa
new file mode 100644
index 00000000000..16247697a89
--- /dev/null
+++ b/inputmethod/skkinput/patches/patch-aa
@@ -0,0 +1,21 @@
+$NetBSD: patch-aa,v 1.1.1.1 2002/05/31 13:00:02 seb Exp $
+
+--- Imakefile.orig Tue Mar 3 21:59:39 1998
++++ Imakefile Tue Dec 21 01:29:48 1999
+@@ -81,7 +81,8 @@
+ OBJS = $(COMMONOBJS) $(KINPUTOBJS) $(XIMPOBJS) $(IMOBJS)
+
+ #ifdef SkkServer
+-SKKSERVER_DEFS = -DDEFAULT_SKKSERVER=\"SkkServer\"
++SKKSERVER_DEFS = -DDEFAULT_SKKSERVER=\"SkkServer\" \
++ -DSKK_CONF=\"$(EXECBASE)/etc/skk.conf\"
+ #endif
+
+ #ifdef SkkPort
+@@ -95,5 +96,5 @@
+ DEFINES = $(SKKSERVER_DEFS) $(SKKPORT_DEFS) $(SKK_DEBUGFLAGS) \
+ $(SKKFONT_DEFS) $(SKK_KINPUTDEFS) $(SKK_XIMPDEFS) $(SKK_IMDEFS)
+
+-ComplexProgramTarget(skkinput)
++ComplexProgramTargetNoMan(skkinput)
+ InstallAppDefaults(Skkinput)
diff --git a/inputmethod/skkinput/patches/patch-ab b/inputmethod/skkinput/patches/patch-ab
new file mode 100644
index 00000000000..57ad937f86e
--- /dev/null
+++ b/inputmethod/skkinput/patches/patch-ab
@@ -0,0 +1,103 @@
+$NetBSD: patch-ab,v 1.1.1.1 2002/05/31 13:00:02 seb Exp $
+
+--- skkconfig.c.orig Thu Nov 13 22:42:43 1997
++++ skkconfig.c Thu Nov 9 00:19:40 2000
+@@ -100,6 +100,7 @@
+ * skkinput の動作を決定する変数群。
+ */
+ extern int skkserv_portnum ;
++extern char *skkserv_portstr ;
+ extern char *skkserv_host ;
+ extern char *skkinput_local_jisyo_name ;
+ extern char *skkinput_backup_jisyo_name ;
+@@ -980,6 +981,21 @@
+ return ;
+ }
+
++#ifdef SKK_CONF
++char *
++strsave(const char *str)
++{
++ char *p;
++
++ if ((p = malloc(strlen(str) + 1)) == NULL) {
++ fprintf(stderr, "Fatal: Memory Exhausted.\n");
++ exit(1);
++ }
++ strcpy(p, str);
++ return p;
++}
++#endif
++
+ /*
+ * skkinput の動作記述をする変数を初期化する関数。
+ *------
+@@ -987,30 +1003,54 @@
+ */
+ void initSkkinputDousaketteiVariables( void )
+ {
+- struct servent *servent ;
++#ifdef SKK_CONF /* use skk.conf */
++ FILE *conffp;
++ char line[128];
++ char hostbuf[128];
++ char servbuf[128];
++ char *confhost = NULL;
++ char *confport = NULL;
++
++ if ((conffp = fopen(SKK_CONF, "r")) != NULL) {
++ char *p, *data;
++
++ while (fgets(line, sizeof line, conffp) != NULL) {
++ if ((p = strchr(line, '#')) != NULL)
++ *p = '\0';
++ if ((p = strtok(line, ": \t\n")) == NULL)
++ continue;
++ if ((data = strtok((char *) NULL, " \t\n")) == NULL)
++ continue;
++ if (!strcmp(p, "skkserv_host")) {
++ strcpy(hostbuf, data);
++ confhost = hostbuf;
++ } else if (!strcmp(p, "skkserv_port")) {
++ strcpy(servbuf, data);
++ confport = servbuf;
++ }
++ }
++ }
++#endif
+
+ /* 局所辞書の所在を知らないとしておく。*/
+ skkinput_local_jisyo_name = DEFAULT_SKKLJISYO ;
+ skkinput_backup_jisyo_name = DEFAULT_SKKBJISYO ;
+ skkinput_record_name = DEFAULT_SKKRECORD ;
+ skk_local_jisyo_name = DEFAULT_SKKLOCALJISYO ;
+- /* "/etc/services" からポート番号を得ておく。*/
+- servent = getservbyname( SKKSERV_SERVICE_NAME, SKKSERV_SERVICE_PROTO ) ;
+- if( servent == NULL ){
+- /* /etc/services に設定はなかったので、config.h の中のを使う。*/
+- skkserv_portnum = atoi( DEFAULT_SKKPORT ) ;
+- } else {
+- /* /etc/services に設定があった…。*/
+- skkserv_portnum = htons( servent->s_port ) ;
+-#if defined(DEBUG)
+- fprintf
+- ( stderr, "getservbyname: \"%s\", %d\n",
+- servent->s_name, skkserv_portnum ) ;
++#ifdef SKK_CONF
++ if (confport)
++ skkserv_portstr = strsave(confport);
++ else
+ #endif
+- }
++ skkserv_portstr = SKKSERV_SERVICE_NAME;
+ /* 環境変数 SKKSERV が設定されていれば、それを DEFAULT の skkserv *
+ * host とする。*/
+ if( ( skkserv_host = getenv( "SKKSERVER" ) ) == NULL )
++#ifdef SKK_CONF
++ if (confhost)
++ skkserv_host = strsave(confhost); /* XXX this may leak */
++ else
++#endif
+ skkserv_host = DEFAULT_SKKSERVER ;
+
+ /* デフォルトのキーマップを作成する。*/
diff --git a/inputmethod/skkinput/patches/patch-ac b/inputmethod/skkinput/patches/patch-ac
new file mode 100644
index 00000000000..c490b0b2c94
--- /dev/null
+++ b/inputmethod/skkinput/patches/patch-ac
@@ -0,0 +1,75 @@
+$NetBSD: patch-ac,v 1.1.1.1 2002/05/31 13:00:02 seb Exp $
+
+--- skkldic.c.orig Fri Nov 14 13:04:12 1997
++++ skkldic.c Wed Nov 8 20:01:38 2000
+@@ -27,6 +27,13 @@
+ #include <sys/types.h>
+ #include <X11/Intrinsic.h>
+
++#ifdef CSRG_BASED
++#include <sys/param.h>
++#if defined(BSD) && BSD >= 199306
++#define HAVE_MKSTEMP
++#endif
++#endif
++
+ #include "commondef.h"
+ #include "buffers.h"
+ #include "config.h"
+@@ -863,7 +870,12 @@
+ {
+ FILE *fpSrc, *fpDest ;
+ unsigned long lines ;
++#ifdef HAVE_MKSTEMP
++ char tempfilename[64] ;
++ int tmpfd;
++#else
+ char *tempfilename ;
++#endif
+
+ #ifdef DEBUG_LDIC
+ fprintf( stderr, "Now saving ....\"%s\"\n", skkinput_local_jisyo_path ) ;
+@@ -890,7 +902,15 @@
+ * 存在しない場合はどうするのか? */
+
+ /* 辞書の更新を行う際に利用されるテンポラリファイル。*/
++#ifdef HAVE_MKSTEMP
++ strcpy(tempfilename, "/tmp/skkinputXXXXXXXX");
++ if ((tmpfd = mkstemp(tempfilename)) < 0) {
++ perror("skkinput: cannot create temp file");
++ return;
++ }
++#else
+ tempfilename = tmpnam( NULL ) ;
++#endif
+
+ /* 局所辞書のバックアップを削除する。失敗した場合なんかは知らない。*/
+ unlink( skkinput_jisyo_backup_path ) ;
+@@ -901,12 +921,19 @@
+ skkinput_copyFile
+ ( skkinput_local_jisyo_path, tempfilename ) ;
+ /* 局所辞書のコピーが存在しない。これは不味い状態である。*/
++#ifdef HAVE_MKSTEMP
++ if( ( fpSrc = fdopen( tmpfd, "rb" ) ) == NULL ){
++ close(tmpfd);
++ return;
++ }
++#else
+ if( ( fpSrc = fopen( tempfilename, "rb" ) ) == NULL ){
+ #ifdef DEBUG_LDIC
+ fprintf( stderr, "cannot create backup jisyo...error!\n" ) ;
+ #endif
+ return ;
+ }
++#endif
+ /* 書き込めない…これは無理だ…。*/
+ if( ( fpDest = fopen( skkinput_local_jisyo_path, "wb" ) ) == NULL ){
+ #ifdef DEBUG_LDIC
+@@ -922,6 +949,7 @@
+ /* file coding system を調べ直す。*/
+ skkinput_local_jisyo_coding_system =
+ check_skkinput_jisyo_code( skkinput_local_jisyo_path ) ;
++ unlink( tempfilename ) ;
+ return ;
+ }
+ lines = 0 ;
diff --git a/inputmethod/skkinput/patches/patch-ad b/inputmethod/skkinput/patches/patch-ad
new file mode 100644
index 00000000000..5b7b73e0980
--- /dev/null
+++ b/inputmethod/skkinput/patches/patch-ad
@@ -0,0 +1,184 @@
+$NetBSD: patch-ad,v 1.1.1.1 2002/05/31 13:00:02 seb Exp $
+
+--- skksoc.c.orig Thu Oct 30 13:40:59 1997
++++ skksoc.c Wed Nov 8 21:48:24 2000
+@@ -36,6 +36,11 @@
+
+ #include "commondef.h"
+ #include "buffers.h"
++#include "config.h"
++
++#ifdef PF_INET6
++# define HAVE_GETADDRINFO
++#endif
+
+ /*
+ * プロトタイプ宣言。
+@@ -51,12 +56,15 @@
+ } ;
+
+ extern char *skkserv_host ;
+-extern int skkserv_portnum ;
++extern char *skkserv_portnum ;
++extern char *skkserv_portstr ;
+
+ /* skkserv とお話する際のバッファ。*/
+ static struct MessageBuffer mesbuf ;
++#ifndef HAVE_GETADDRINFO
+ /* SKK server の情報。*/
+ struct sockaddr_in server ;
++#endif
+ /* SKK server の Host の情報。*/
+ static struct hostent *host ;
+ /* skkserv をお話するのに利用する socket */
+@@ -79,13 +87,14 @@
+ static void myCharStringToNormalString
+ ( struct MessageBuffer *buf, struct myChar *string ) ;
+
++#ifndef HAVE_GETADDRINFO
+ /*
+ * ソケットを作成する関数。
+ *------------
+ * server の名前が与えられると、そこに対しての socket を作成しよう
+ * と試みる。
+ */
+-static int makeSocket( char *server_name, int port_num )
++static int makeSocket( char *server_name )
+ {
+ struct protoent *proto;
+ /* Protocol の設定。*/
+@@ -115,22 +124,10 @@
+ #else
+ memcpy( &server.sin_addr, host->h_addr, host->h_length ) ;
+ #endif
+- server.sin_port = htons( port_num ) ;
+-
+- read_skkserv_fp = fdopen( skkserv_soc, "r" ) ;
+- write_skkserv_fp = fdopen( skkserv_soc, "w" ) ;
+
+- /* fdopen に失敗したら… */
+- if( read_skkserv_fp == NULL || write_skkserv_fp == NULL ){
+- if( read_skkserv_fp != NULL )
+- fclose( read_skkserv_fp ) ;
+- if( write_skkserv_fp != NULL )
+- fclose( write_skkserv_fp ) ;
+- read_skkserv_fp = write_skkserv_fp = NULL ;
+- return 1 ;
+- }
+ return 0 ;
+ }
++#endif /* ! HAVE_GETADDRINFO */
+
+ /*
+ * skkserv に message を送信する関数。
+@@ -294,14 +291,72 @@
+ * socket を用意し、skkerv に接続する関数。
+ *----
+ */
+-int skkinput_StartCommunication( char *server_name, int port_num )
++int skkinput_StartCommunication( char *server_name, char *port_str )
+ {
++#ifdef HAVE_GETADDRINFO
++ struct addrinfo aihint, *ai0, *ai;
++ int error;
++ char portnum[32];
++
++ /* backward compatibility */
++ if (skkserv_portnum) {
++ sprintf(portnum, "%d", skkserv_portnum);
++ port_str = portnum;
++ }
++
++#ifdef HAVE_BZERO
++ bzero((char*)&aihint, sizeof aihint);
++#else
++ memset((char*)&aihint, 0, sizeof aihint);
++#endif
++ aihint.ai_family = PF_UNSPEC;
++ aihint.ai_socktype = SOCK_STREAM;
++ aihint.ai_flags = AI_CANONNAME;
++ error = getaddrinfo(server_name, port_str, &aihint, &ai0);
++ if (error) {
++ printf("%s: %s\r\n", gai_strerror(error), server_name);
++ return -1;
++ }
++
++ skkserv_soc = -1;
++ for (ai = ai0; ai; ai = ai->ai_next) {
++ skkserv_soc = socket(ai->ai_family, ai->ai_socktype, ai->ai_protocol);
++ if (skkserv_soc >= 0 &&
++ connect(skkserv_soc, ai->ai_addr, ai->ai_addrlen) == 0)
++ break;
++ close(skkserv_soc);
++ skkserv_soc = -1;
++ }
++ if (skkserv_soc < 0) {
++ perror(server_name);
++ skkserv_connection_ok = False ;
++ return 1;
++ }
++#else
++ struct servent *servent ;
++ int port;
++
++ if ((port = atoi(port_str)) <= 0) {
++ /* "/etc/services" からポート番号を得ておく。*/
++ servent = getservbyname( port_str, SKKSERV_SERVICE_PROTO ) ;
++ if( servent == NULL ){
++ /* /etc/services に設定はなかったので、config.h の中のを使う。*/
++ port = atoi( DEFAULT_SKKPORT ) ;
++ } else {
++ /* /etc/services に設定があった…。*/
++ port = ntohs( servent->s_port ) ;
++#if defined(DEBUG)
++ fprintf( stderr, "getservbyname: \"%s\", %d\n", servent->s_name, port ) ;
++#endif
++ }
++ }
+ /* skkerv と通信するためのソケットを作成致します。*/
+- if( makeSocket( server_name, port_num ) ){
++ if( makeSocket( server_name ) ){
+ fprintf( stderr, "Warning : cannot make a socket." ) ;
+ skkserv_connection_ok = False ;
+ return 1 ;
+ }
++ server.sin_port = htons( port ) ;
+ /* 接続要求。*/
+ if( connect( skkserv_soc,
+ ( struct sockaddr *)&server, sizeof( server ) ) < 0 ){
+@@ -312,6 +367,19 @@
+ skkserv_connection_ok = False ;
+ return 1 ;
+ }
++#endif
++ read_skkserv_fp = fdopen( skkserv_soc, "r" ) ;
++ write_skkserv_fp = fdopen( skkserv_soc, "w" ) ;
++
++ /* fdopen に失敗したら… */
++ if( read_skkserv_fp == NULL || write_skkserv_fp == NULL ){
++ if( read_skkserv_fp != NULL )
++ fclose( read_skkserv_fp ) ;
++ if( write_skkserv_fp != NULL )
++ fclose( write_skkserv_fp ) ;
++ read_skkserv_fp = write_skkserv_fp = NULL ;
++ return 1 ;
++ }
+ skkserv_connection_ok = True ;
+ return 0 ;
+ }
+@@ -357,13 +425,13 @@
+
+ #ifndef MAIKAI_SKKSERV_TO_CONNECT_SURU
+ if( !skkserv_connection_ok ){
+- if( skkinput_StartCommunication( skkserv_host, skkserv_portnum ) )
++ if( skkinput_StartCommunication( skkserv_host, skkserv_portstr ) )
+ return top ;
+ }
+ #else
+ /* skkserv が生きていなければ、メッセージの送りようが無いので終了
+ する。*/
+- if( skkinput_StartCommunication( skkserv_host, skkserv_portnum ) )
++ if( skkinput_StartCommunication( skkserv_host, skkserv_portstr ) )
+ return top ;
+ #endif
+
diff --git a/inputmethod/skkinput/patches/patch-ae b/inputmethod/skkinput/patches/patch-ae
new file mode 100644
index 00000000000..42eddf96858
--- /dev/null
+++ b/inputmethod/skkinput/patches/patch-ae
@@ -0,0 +1,39 @@
+$NetBSD: patch-ae,v 1.1.1.1 2002/05/31 13:00:02 seb Exp $
+
+--- main.c.orig Mon Mar 23 15:05:22 1998
++++ main.c Wed Nov 8 03:07:44 2000
+@@ -110,7 +110,7 @@
+ extern void initHenkanKakuteiHashTable( void ) ;
+ extern void clearHenkanKakuteiHash( void ) ;
+ /* skksoc.c */
+-extern int skkinput_StartCommunication( char *server_name, int port_num ) ;
++extern int skkinput_StartCommunication( char *server_name, char *port_str ) ;
+ extern int skkinput_CloseCommunication( void ) ;
+ /* skkldic.c */
+ extern int set_localjisyo
+@@ -197,6 +197,7 @@
+ /* その他、skkinput が必要とする…skkInputWidget 毎には必要としない情報。*/
+ char *skkserv_host ;
+ int skkserv_portnum ;
++char *skkserv_portstr ;
+ char *skkinput_local_jisyo_name ;
+ char *skkinput_backup_jisyo_name ;
+ char *skk_local_jisyo_name ;
+@@ -375,7 +376,7 @@
+ if( number_of_protocols > 0 ){
+ #ifndef MAIKAI_SKKSERV_TO_CONNECT_SURU
+ /* socket を作成しておく。*/
+- skkinput_StartCommunication( skkserv_host, skkserv_portnum ) ;
++ skkinput_StartCommunication( skkserv_host, skkserv_portstr ) ;
+ #endif
+ /* 局所辞書の情報を入れておく。*/
+ set_localjisyo
+@@ -698,7 +699,7 @@
+ break ;
+ /* skkserv と通信するに利用するポート番号を設定する。*/
+ case OPTION_PORT :
+- skkserv_portnum = atoi( argv[ i ] ) ;
++ skkserv_portstr = argv[ i ];
+ break ;
+ /* 局所辞書の名前を設定する。*/
+ case OPTION_USERDIC :