diff -BbuprN -x '*.o' suntzu/ChangeLog.suntzu yoda/ChangeLog.suntzu --- suntzu/ChangeLog.suntzu 2004-08-31 21:47:06.000000000 -0500 +++ yoda/ChangeLog.suntzu 2004-09-29 21:06:28.000000000 -0500 @@ -1,4 +1,57 @@ changelog: + 9/28/04 + - Added the wizupdate command back in, it appears to have been + taken out during the APF upgrade a few releases back. + Thanks to Random for pointing that out! + 9/27/04 + - Added current.patch submitted by Cunning. + This code randomly moves you out of a room flagged CURRENT. + - Added color_question_remove.patch submitted by Cunning. + This modifies the query ansi code so you don't have to answer + Y/N each time you connect. + 9/23/04 + - Added Circle Unsigned Patch submitted by + Star (starchaser5000@yahoo.co.uk) + 9/20/04 + - Updates to oedit.c to fix iedit crashes. + Thanks to Fnord! + 9/18/04 + - Added a cedit toggle for CONFIG_ALL_ITEMS_UNIQUE. This + goes along with code submitted by Fnord which tags all + items in the game with a unique ID stamp. This is to help + prevent object duping. The default behavior is ON, and this + means all objects created will be flagged with the UNIQUE flag. + You can see more info with the show uniques command, or + show uniques (vnum) of an object you are interested in. If you do + toggle this flag ON or OFF you should copyover to reload all objects + appropriately. + Thanks to Fnord! + 9/11/04 + - Added a cedit toggle for CONFIG_ENABLE_LANGUAGES. The default + behavior is ON. However, turning this off makes everyone speak + and understand the same language. + - Added sector type to the information displayed on a room if + you have ROOMFLAGS turned on. + - Added Autoassist patch. Also updated it so that it works either + way (master assists followers or followers assist master). + Thanks to Dark for submitting the original update! + 9/10/04 + - Updates for cedit and DISPLAY_CLOSED_DOORS tag. There was + some mixed confusion about disp_closed_doors and display_closed_doors + so changes to the toggle weren't behaving correctly. + Thanks to Dark (dark_court_jester@hotmail.com) for pointing this out! + 9/7/04 + - Added iedit code updated by Fnord. + 9/6/04 + - Added MCCP2 compression code submitted by Fnord. + - Added duplicate object checking code submitted by Fnord. + 9/4/04 + - Hopefully the final fixes for dynamic board code. + Thanks Fnord and Fade both! + 9/1/04 + - Added short title to board objects (in show_board) when you look + at them. + Thanks Ken! 8/31/04 (release) - Boards are pretty much broken at this point. Sorry. I'll try to get it fixed by the next release. diff -BbuprN -x '*.o' suntzu/cnf/configure.in yoda/cnf/configure.in --- suntzu/cnf/configure.in 2003-02-06 22:20:01.000000000 -0600 +++ yoda/cnf/configure.in 2004-09-06 16:18:41.000000000 -0500 @@ -3,6 +3,7 @@ AC_INIT(src/act.comm.c) AC_SUBST(MYFLAGS) AC_SUBST(NETLIB) AC_SUBST(CRYPTLIB) +AC_SUBST(ZLIB) AC_CONFIG_HEADER(src/conf.h) AC_DEFINE(CIRCLE_UNIX) @@ -87,6 +88,9 @@ AC_CHECK_FUNC(crypt, AC_DEFINE(CIRCLE_CR [AC_CHECK_LIB(crypt, crypt, AC_DEFINE(CIRCLE_CRYPT) CRYPTLIB="-lcrypt")] ) +AC_CHECK_FUNC(deflate, , + [AC_CHECK_LIB(z, deflate, ZLIB="-lz $ZLIB")]) + dnl Checks for header files. AC_HEADER_STDC AC_HEADER_SYS_WAIT @@ -94,7 +98,7 @@ AC_CHECK_HEADERS(fcntl.h sys/fcntl.h err AC_CHECK_HEADERS(limits.h sys/time.h sys/select.h sys/types.h unistd.h) AC_CHECK_HEADERS(memory.h crypt.h assert.h arpa/telnet.h arpa/inet.h) AC_CHECK_HEADERS(sys/stat.h sys/socket.h sys/resource.h netinet/in.h netdb.h) -AC_CHECK_HEADERS(signal.h sys/uio.h mcheck.h) +AC_CHECK_HEADERS(signal.h sys/uio.h mcheck.h zlib.h) AC_UNSAFE_CRYPT diff -BbuprN -x '*.o' suntzu/config.status yoda/config.status --- suntzu/config.status 2004-07-18 12:42:55.000000000 -0500 +++ yoda/config.status 2004-09-06 16:20:30.000000000 -0500 @@ -60,6 +60,7 @@ s%@mandir@%${prefix}/man%g s%@MYFLAGS@%-Wall%g s%@NETLIB@%%g s%@CRYPTLIB@%-lcrypt%g +s%@ZLIB@%-lz %g s%@MORE@%less%g s%@CC@%gcc%g s%@CPP@%gcc -E%g @@ -304,15 +305,18 @@ ${ac_eA}HAVE_SYS_UIO_H${ac_eB}HAVE_SYS_U ${ac_dA}HAVE_MCHECK_H${ac_dB}HAVE_MCHECK_H${ac_dC}1${ac_dD} ${ac_uA}HAVE_MCHECK_H${ac_uB}HAVE_MCHECK_H${ac_uC}1${ac_uD} ${ac_eA}HAVE_MCHECK_H${ac_eB}HAVE_MCHECK_H${ac_eC}1${ac_eD} -${ac_dA}TIME_WITH_SYS_TIME${ac_dB}TIME_WITH_SYS_TIME${ac_dC}1${ac_dD} -${ac_uA}TIME_WITH_SYS_TIME${ac_uB}TIME_WITH_SYS_TIME${ac_uC}1${ac_uD} -${ac_eA}TIME_WITH_SYS_TIME${ac_eB}TIME_WITH_SYS_TIME${ac_eC}1${ac_eD} +${ac_dA}HAVE_ZLIB_H${ac_dB}HAVE_ZLIB_H${ac_dC}1${ac_dD} +${ac_uA}HAVE_ZLIB_H${ac_uB}HAVE_ZLIB_H${ac_uC}1${ac_uD} +${ac_eA}HAVE_ZLIB_H${ac_eB}HAVE_ZLIB_H${ac_eC}1${ac_eD} CEOF sed -f conftest.frag conftest.in > conftest.out rm -f conftest.in mv conftest.out conftest.in cat > conftest.frag <<CEOF +${ac_dA}TIME_WITH_SYS_TIME${ac_dB}TIME_WITH_SYS_TIME${ac_dC}1${ac_dD} +${ac_uA}TIME_WITH_SYS_TIME${ac_uB}TIME_WITH_SYS_TIME${ac_uC}1${ac_uD} +${ac_eA}TIME_WITH_SYS_TIME${ac_eB}TIME_WITH_SYS_TIME${ac_eC}1${ac_eD} ${ac_dA}HAVE_STRUCT_IN_ADDR${ac_dB}HAVE_STRUCT_IN_ADDR${ac_dC}1${ac_dD} ${ac_uA}HAVE_STRUCT_IN_ADDR${ac_uB}HAVE_STRUCT_IN_ADDR${ac_uC}1${ac_uD} ${ac_eA}HAVE_STRUCT_IN_ADDR${ac_eB}HAVE_STRUCT_IN_ADDR${ac_eC}1${ac_eD} @@ -322,15 +326,15 @@ ${ac_eA}RETSIGTYPE${ac_eB}RETSIGTYPE${ac ${ac_dA}HAVE_VPRINTF${ac_dB}HAVE_VPRINTF${ac_dC}1${ac_dD} ${ac_uA}HAVE_VPRINTF${ac_uB}HAVE_VPRINTF${ac_uC}1${ac_uD} ${ac_eA}HAVE_VPRINTF${ac_eB}HAVE_VPRINTF${ac_eC}1${ac_eD} -${ac_dA}HAVE_GETTIMEOFDAY${ac_dB}HAVE_GETTIMEOFDAY${ac_dC}1${ac_dD} -${ac_uA}HAVE_GETTIMEOFDAY${ac_uB}HAVE_GETTIMEOFDAY${ac_uC}1${ac_uD} -${ac_eA}HAVE_GETTIMEOFDAY${ac_eB}HAVE_GETTIMEOFDAY${ac_eC}1${ac_eD} CEOF sed -f conftest.frag conftest.in > conftest.out rm -f conftest.in mv conftest.out conftest.in cat > conftest.frag <<CEOF +${ac_dA}HAVE_GETTIMEOFDAY${ac_dB}HAVE_GETTIMEOFDAY${ac_dC}1${ac_dD} +${ac_uA}HAVE_GETTIMEOFDAY${ac_uB}HAVE_GETTIMEOFDAY${ac_uC}1${ac_uD} +${ac_eA}HAVE_GETTIMEOFDAY${ac_eB}HAVE_GETTIMEOFDAY${ac_eC}1${ac_eD} ${ac_dA}HAVE_SELECT${ac_dB}HAVE_SELECT${ac_dC}1${ac_dD} ${ac_uA}HAVE_SELECT${ac_uB}HAVE_SELECT${ac_uC}1${ac_uD} ${ac_eA}HAVE_SELECT${ac_eB}HAVE_SELECT${ac_eC}1${ac_eD} @@ -340,15 +344,15 @@ ${ac_eA}HAVE_SNPRINTF${ac_eB}HAVE_SNPRIN ${ac_dA}HAVE_STRCASECMP${ac_dB}HAVE_STRCASECMP${ac_dC}1${ac_dD} ${ac_uA}HAVE_STRCASECMP${ac_uB}HAVE_STRCASECMP${ac_uC}1${ac_uD} ${ac_eA}HAVE_STRCASECMP${ac_eB}HAVE_STRCASECMP${ac_eC}1${ac_eD} -${ac_dA}HAVE_STRDUP${ac_dB}HAVE_STRDUP${ac_dC}1${ac_dD} -${ac_uA}HAVE_STRDUP${ac_uB}HAVE_STRDUP${ac_uC}1${ac_uD} -${ac_eA}HAVE_STRDUP${ac_eB}HAVE_STRDUP${ac_eC}1${ac_eD} CEOF sed -f conftest.frag conftest.in > conftest.out rm -f conftest.in mv conftest.out conftest.in cat > conftest.frag <<CEOF +${ac_dA}HAVE_STRDUP${ac_dB}HAVE_STRDUP${ac_dC}1${ac_dD} +${ac_uA}HAVE_STRDUP${ac_uB}HAVE_STRDUP${ac_uC}1${ac_uD} +${ac_eA}HAVE_STRDUP${ac_eB}HAVE_STRDUP${ac_eC}1${ac_eD} ${ac_dA}HAVE_STRERROR${ac_dB}HAVE_STRERROR${ac_dC}1${ac_dD} ${ac_uA}HAVE_STRERROR${ac_uB}HAVE_STRERROR${ac_uC}1${ac_uD} ${ac_eA}HAVE_STRERROR${ac_eB}HAVE_STRERROR${ac_eC}1${ac_eD} @@ -358,15 +362,15 @@ ${ac_eA}HAVE_STRNCASECMP${ac_eB}HAVE_STR ${ac_dA}HAVE_STRSTR${ac_dB}HAVE_STRSTR${ac_dC}1${ac_dD} ${ac_uA}HAVE_STRSTR${ac_uB}HAVE_STRSTR${ac_uC}1${ac_uD} ${ac_eA}HAVE_STRSTR${ac_eB}HAVE_STRSTR${ac_eC}1${ac_eD} -${ac_dA}HAVE_VSNPRINTF${ac_dB}HAVE_VSNPRINTF${ac_dC}1${ac_dD} -${ac_uA}HAVE_VSNPRINTF${ac_uB}HAVE_VSNPRINTF${ac_uC}1${ac_uD} -${ac_eA}HAVE_VSNPRINTF${ac_eB}HAVE_VSNPRINTF${ac_eC}1${ac_eD} CEOF sed -f conftest.frag conftest.in > conftest.out rm -f conftest.in mv conftest.out conftest.in cat > conftest.frag <<CEOF +${ac_dA}HAVE_VSNPRINTF${ac_dB}HAVE_VSNPRINTF${ac_dC}1${ac_dD} +${ac_uA}HAVE_VSNPRINTF${ac_uB}HAVE_VSNPRINTF${ac_uC}1${ac_uD} +${ac_eA}HAVE_VSNPRINTF${ac_eB}HAVE_VSNPRINTF${ac_eC}1${ac_eD} ${ac_dA}HAVE_INET_ADDR${ac_dB}HAVE_INET_ADDR${ac_dC}1${ac_dD} ${ac_uA}HAVE_INET_ADDR${ac_uB}HAVE_INET_ADDR${ac_uC}1${ac_uD} ${ac_eA}HAVE_INET_ADDR${ac_eB}HAVE_INET_ADDR${ac_eC}1${ac_eD} @@ -376,15 +380,15 @@ ${ac_eA}HAVE_INET_ATON${ac_eB}HAVE_INET_ ${ac_dA}NEED_STRICMP_PROTO${ac_dB}NEED_STRICMP_PROTO${ac_dC}${ac_dD} ${ac_uA}NEED_STRICMP_PROTO${ac_uB}NEED_STRICMP_PROTO${ac_uC}${ac_uD} ${ac_eA}NEED_STRICMP_PROTO${ac_eB}NEED_STRICMP_PROTO${ac_eC}${ac_eD} -${ac_dA}NEED_STRLCPY_PROTO${ac_dB}NEED_STRLCPY_PROTO${ac_dC}${ac_dD} -${ac_uA}NEED_STRLCPY_PROTO${ac_uB}NEED_STRLCPY_PROTO${ac_uC}${ac_uD} -${ac_eA}NEED_STRLCPY_PROTO${ac_eB}NEED_STRLCPY_PROTO${ac_eC}${ac_eD} CEOF sed -f conftest.frag conftest.in > conftest.out rm -f conftest.in mv conftest.out conftest.in cat > conftest.frag <<CEOF +${ac_dA}NEED_STRLCPY_PROTO${ac_dB}NEED_STRLCPY_PROTO${ac_dC}${ac_dD} +${ac_uA}NEED_STRLCPY_PROTO${ac_uB}NEED_STRLCPY_PROTO${ac_uC}${ac_uD} +${ac_eA}NEED_STRLCPY_PROTO${ac_eB}NEED_STRLCPY_PROTO${ac_eC}${ac_eD} ${ac_dA}NEED_STRNICMP_PROTO${ac_dB}NEED_STRNICMP_PROTO${ac_dC}${ac_dD} ${ac_uA}NEED_STRNICMP_PROTO${ac_uB}NEED_STRNICMP_PROTO${ac_uC}${ac_uD} ${ac_eA}NEED_STRNICMP_PROTO${ac_eB}NEED_STRNICMP_PROTO${ac_eC}${ac_eD} diff -BbuprN -x '*.o' suntzu/configure yoda/configure --- suntzu/configure 2003-02-06 22:20:00.000000000 -0600 +++ yoda/configure 2004-09-06 16:18:41.000000000 -0500 @@ -536,7 +536,7 @@ do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:540: checking for $ac_word" >&5 +echo "configure:541: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_MORE'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -569,7 +569,7 @@ done # Extract the first word of "gcc", so it can be a program name with args. set dummy gcc; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:573: checking for $ac_word" >&5 +echo "configure:574: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -599,7 +599,7 @@ if test -z "$CC"; then # Extract the first word of "cc", so it can be a program name with args. set dummy cc; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:603: checking for $ac_word" >&5 +echo "configure:604: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -650,7 +650,7 @@ fi # Extract the first word of "cl", so it can be a program name with args. set dummy cl; ac_word=$2 echo $ac_n "checking for $ac_word""... $ac_c" 1>&6 -echo "configure:654: checking for $ac_word" >&5 +echo "configure:655: checking for $ac_word" >&5 if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -682,7 +682,7 @@ fi fi echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works""... $ac_c" 1>&6 -echo "configure:686: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5 +echo "configure:687: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5 ac_ext=c # CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options. @@ -693,12 +693,12 @@ cross_compiling=$ac_cv_prog_cc_cross cat > conftest.$ac_ext << EOF -#line 697 "configure" +#line 698 "configure" #include "confdefs.h" main(){return(0);} EOF -if { (eval echo configure:702: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:703: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then ac_cv_prog_cc_works=yes # If we can't run a trivial program, we are probably using a cross compiler. if (./conftest; exit) 2>/dev/null; then @@ -724,12 +724,12 @@ if test $ac_cv_prog_cc_works = no; then { echo "configure: error: installation or configuration problem: C compiler cannot create executables." 1>&2; exit 1; } fi echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler""... $ac_c" 1>&6 -echo "configure:728: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5 +echo "configure:729: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5 echo "$ac_t""$ac_cv_prog_cc_cross" 1>&6 cross_compiling=$ac_cv_prog_cc_cross echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6 -echo "configure:733: checking whether we are using GNU C" >&5 +echo "configure:734: checking whether we are using GNU C" >&5 if eval "test \"`echo '$''{'ac_cv_prog_gcc'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -738,7 +738,7 @@ else yes; #endif EOF -if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:742: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then +if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:743: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then ac_cv_prog_gcc=yes else ac_cv_prog_gcc=no @@ -757,7 +757,7 @@ ac_test_CFLAGS="${CFLAGS+set}" ac_save_CFLAGS="$CFLAGS" CFLAGS= echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6 -echo "configure:761: checking whether ${CC-cc} accepts -g" >&5 +echo "configure:762: checking whether ${CC-cc} accepts -g" >&5 if eval "test \"`echo '$''{'ac_cv_prog_cc_g'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -792,7 +792,7 @@ fi if test $ac_cv_prog_gcc = yes; then echo $ac_n "checking whether ${CC-cc} -Wall also needs -Wno-char-subscripts""... $ac_c" 1>&6 -echo "configure:796: checking whether ${CC-cc} -Wall also needs -Wno-char-subscripts" >&5 +echo "configure:797: checking whether ${CC-cc} -Wall also needs -Wno-char-subscripts" >&5 if eval "test \"`echo '$''{'ac_cv_char_warn'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -800,7 +800,7 @@ else OLDCFLAGS=$CFLAGS CFLAGS="$CFLAGS -Wall -Werror" cat > conftest.$ac_ext <<EOF -#line 804 "configure" +#line 805 "configure" #include "confdefs.h" #include <ctype.h> int main() { @@ -811,7 +811,7 @@ int main() { ; return 0; } EOF -if { (eval echo configure:815: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:816: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_char_warn=no else @@ -828,7 +828,7 @@ fi echo "$ac_t""$ac_cv_char_warn" 1>&6 echo $ac_n "checking whether ${CC-cc} accepts -Wno-char-subscripts""... $ac_c" 1>&6 -echo "configure:832: checking whether ${CC-cc} accepts -Wno-char-subscripts" >&5 +echo "configure:833: checking whether ${CC-cc} accepts -Wno-char-subscripts" >&5 if eval "test \"`echo '$''{'ac_cv_gcc_ncs'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -836,14 +836,14 @@ else OLDCFLAGS=$CFLAGS CFLAGS="$CFLAGS -Wno-char-subscripts" cat > conftest.$ac_ext <<EOF -#line 840 "configure" +#line 841 "configure" #include "confdefs.h" int main() { ; return 0; } EOF -if { (eval echo configure:847: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:848: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_gcc_ncs=yes else @@ -860,7 +860,7 @@ fi echo "$ac_t""$ac_cv_gcc_ncs" 1>&6 echo $ac_n "checking whether ${CC-cc} accepts -fno-builtin""... $ac_c" 1>&6 -echo "configure:864: checking whether ${CC-cc} accepts -fno-builtin" >&5 +echo "configure:865: checking whether ${CC-cc} accepts -fno-builtin" >&5 if eval "test \"`echo '$''{'ac_cv_gcc_fnb'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -868,14 +868,14 @@ else OLDCFLAGS=$CFLAGS CFLAGS="$CFLAGS -fno-builtin" cat > conftest.$ac_ext <<EOF -#line 872 "configure" +#line 873 "configure" #include "confdefs.h" int main() { ; return 0; } EOF -if { (eval echo configure:879: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:880: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_gcc_fnb=yes else @@ -908,12 +908,12 @@ else fi echo $ac_n "checking for gethostbyaddr""... $ac_c" 1>&6 -echo "configure:912: checking for gethostbyaddr" >&5 +echo "configure:913: checking for gethostbyaddr" >&5 if eval "test \"`echo '$''{'ac_cv_func_gethostbyaddr'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 917 "configure" +#line 918 "configure" #include "confdefs.h" /* System header to define __stub macros and hopefully few prototypes, which can conflict with char gethostbyaddr(); below. */ @@ -936,7 +936,7 @@ gethostbyaddr(); ; return 0; } EOF -if { (eval echo configure:940: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:941: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_gethostbyaddr=yes" else @@ -954,7 +954,7 @@ if eval "test \"`echo '$ac_cv_func_'geth else echo "$ac_t""no" 1>&6 echo $ac_n "checking for gethostbyaddr in -lnsl""... $ac_c" 1>&6 -echo "configure:958: checking for gethostbyaddr in -lnsl" >&5 +echo "configure:959: checking for gethostbyaddr in -lnsl" >&5 ac_lib_var=`echo nsl'_'gethostbyaddr | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -962,7 +962,7 @@ else ac_save_LIBS="$LIBS" LIBS="-lnsl $LIBS" cat > conftest.$ac_ext <<EOF -#line 966 "configure" +#line 967 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -973,7 +973,7 @@ int main() { gethostbyaddr() ; return 0; } EOF -if { (eval echo configure:977: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:978: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -997,12 +997,12 @@ fi echo $ac_n "checking for socket""... $ac_c" 1>&6 -echo "configure:1001: checking for socket" >&5 +echo "configure:1002: checking for socket" >&5 if eval "test \"`echo '$''{'ac_cv_func_socket'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 1006 "configure" +#line 1007 "configure" #include "confdefs.h" /* System header to define __stub macros and hopefully few prototypes, which can conflict with char socket(); below. */ @@ -1025,7 +1025,7 @@ socket(); ; return 0; } EOF -if { (eval echo configure:1029: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:1030: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_socket=yes" else @@ -1043,7 +1043,7 @@ if eval "test \"`echo '$ac_cv_func_'sock else echo "$ac_t""no" 1>&6 echo $ac_n "checking for socket in -lsocket""... $ac_c" 1>&6 -echo "configure:1047: checking for socket in -lsocket" >&5 +echo "configure:1048: checking for socket in -lsocket" >&5 ac_lib_var=`echo socket'_'socket | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -1051,7 +1051,7 @@ else ac_save_LIBS="$LIBS" LIBS="-lsocket $LIBS" cat > conftest.$ac_ext <<EOF -#line 1055 "configure" +#line 1056 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -1062,7 +1062,7 @@ int main() { socket() ; return 0; } EOF -if { (eval echo configure:1066: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:1067: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -1086,12 +1086,12 @@ fi echo $ac_n "checking for malloc""... $ac_c" 1>&6 -echo "configure:1090: checking for malloc" >&5 +echo "configure:1091: checking for malloc" >&5 if eval "test \"`echo '$''{'ac_cv_func_malloc'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 1095 "configure" +#line 1096 "configure" #include "confdefs.h" /* System header to define __stub macros and hopefully few prototypes, which can conflict with char malloc(); below. */ @@ -1114,7 +1114,7 @@ malloc(); ; return 0; } EOF -if { (eval echo configure:1118: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:1119: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_malloc=yes" else @@ -1132,7 +1132,7 @@ if eval "test \"`echo '$ac_cv_func_'mall else echo "$ac_t""no" 1>&6 echo $ac_n "checking for malloc in -lmalloc""... $ac_c" 1>&6 -echo "configure:1136: checking for malloc in -lmalloc" >&5 +echo "configure:1137: checking for malloc in -lmalloc" >&5 ac_lib_var=`echo malloc'_'malloc | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -1140,7 +1140,7 @@ else ac_save_LIBS="$LIBS" LIBS="-lmalloc $LIBS" cat > conftest.$ac_ext <<EOF -#line 1144 "configure" +#line 1145 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -1151,7 +1151,7 @@ int main() { malloc() ; return 0; } EOF -if { (eval echo configure:1155: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:1156: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -1182,12 +1182,12 @@ fi echo $ac_n "checking for crypt""... $ac_c" 1>&6 -echo "configure:1186: checking for crypt" >&5 +echo "configure:1187: checking for crypt" >&5 if eval "test \"`echo '$''{'ac_cv_func_crypt'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 1191 "configure" +#line 1192 "configure" #include "confdefs.h" /* System header to define __stub macros and hopefully few prototypes, which can conflict with char crypt(); below. */ @@ -1210,7 +1210,7 @@ crypt(); ; return 0; } EOF -if { (eval echo configure:1214: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:1215: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_crypt=yes" else @@ -1231,7 +1231,7 @@ EOF else echo "$ac_t""no" 1>&6 echo $ac_n "checking for crypt in -lcrypt""... $ac_c" 1>&6 -echo "configure:1235: checking for crypt in -lcrypt" >&5 +echo "configure:1236: checking for crypt in -lcrypt" >&5 ac_lib_var=`echo crypt'_'crypt | sed 'y%./+-%__p_%'` if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 @@ -1239,7 +1239,7 @@ else ac_save_LIBS="$LIBS" LIBS="-lcrypt $LIBS" cat > conftest.$ac_ext <<EOF -#line 1243 "configure" +#line 1244 "configure" #include "confdefs.h" /* Override any gcc2 internal prototype to avoid an error. */ /* We use char because int might match the return type of a gcc2 @@ -1250,7 +1250,7 @@ int main() { crypt() ; return 0; } EOF -if { (eval echo configure:1254: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:1255: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_lib_$ac_lib_var=yes" else @@ -1277,8 +1277,97 @@ fi fi +echo $ac_n "checking for deflate""... $ac_c" 1>&6 +echo "configure:1283: checking for deflate" >&5 +if eval "test \"`echo '$''{'ac_cv_func_deflate'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + cat > conftest.$ac_ext <<EOF +#line 1288 "configure" +#include "confdefs.h" +/* System header to define __stub macros and hopefully few prototypes, + which can conflict with char deflate(); below. */ +#include <assert.h> +/* Override any gcc2 internal prototype to avoid an error. */ +/* We use char because int might match the return type of a gcc2 + builtin and then its argument prototype would still apply. */ +char deflate(); + +int main() { + +/* The GNU C library defines this for functions which it implements + to always fail with ENOSYS. Some functions are actually named + something starting with __ and the normal name is an alias. */ +#if defined (__stub_deflate) || defined (__stub___deflate) +choke me +#else +deflate(); +#endif + +; return 0; } +EOF +if { (eval echo configure:1311: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then + rm -rf conftest* + eval "ac_cv_func_deflate=yes" +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + eval "ac_cv_func_deflate=no" +fi +rm -f conftest* +fi + +if eval "test \"`echo '$ac_cv_func_'deflate`\" = yes"; then + echo "$ac_t""yes" 1>&6 + : +else + echo "$ac_t""no" 1>&6 +echo $ac_n "checking for deflate in -lz""... $ac_c" 1>&6 +echo "configure:1329: checking for deflate in -lz" >&5 +ac_lib_var=`echo z'_'deflate | sed 'y%./+-%__p_%'` +if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then + echo $ac_n "(cached) $ac_c" 1>&6 +else + ac_save_LIBS="$LIBS" +LIBS="-lz $LIBS" +cat > conftest.$ac_ext <<EOF +#line 1337 "configure" +#include "confdefs.h" +/* Override any gcc2 internal prototype to avoid an error. */ +/* We use char because int might match the return type of a gcc2 + builtin and then its argument prototype would still apply. */ +char deflate(); + +int main() { +deflate() +; return 0; } +EOF +if { (eval echo configure:1348: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then + rm -rf conftest* + eval "ac_cv_lib_$ac_lib_var=yes" +else + echo "configure: failed program was:" >&5 + cat conftest.$ac_ext >&5 + rm -rf conftest* + eval "ac_cv_lib_$ac_lib_var=no" +fi +rm -f conftest* +LIBS="$ac_save_LIBS" + +fi +if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then + echo "$ac_t""yes" 1>&6 + ZLIB="-lz $ZLIB" +else + echo "$ac_t""no" 1>&6 +fi + +fi + + echo $ac_n "checking how to run the C preprocessor""... $ac_c" 1>&6 -echo "configure:1282: checking how to run the C preprocessor" >&5 +echo "configure:1372: checking how to run the C preprocessor" >&5 # On Suns, sometimes $CPP names a directory. if test -n "$CPP" && test -d "$CPP"; then CPP= @@ -1293,13 +1382,13 @@ else # On the NeXT, cc -E runs the code through the compiler's parser, # not just through cpp. cat > conftest.$ac_ext <<EOF -#line 1297 "configure" +#line 1387 "configure" #include "confdefs.h" #include <assert.h> Syntax Error EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:1303: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:1393: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then : @@ -1310,13 +1399,13 @@ else rm -rf conftest* CPP="${CC-cc} -E -traditional-cpp" cat > conftest.$ac_ext <<EOF -#line 1314 "configure" +#line 1404 "configure" #include "confdefs.h" #include <assert.h> Syntax Error EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:1320: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:1410: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then : @@ -1327,13 +1416,13 @@ else rm -rf conftest* CPP="${CC-cc} -nologo -E" cat > conftest.$ac_ext <<EOF -#line 1331 "configure" +#line 1421 "configure" #include "confdefs.h" #include <assert.h> Syntax Error EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:1337: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:1427: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then : @@ -1358,12 +1447,12 @@ fi echo "$ac_t""$CPP" 1>&6 echo $ac_n "checking for ANSI C header files""... $ac_c" 1>&6 -echo "configure:1362: checking for ANSI C header files" >&5 +echo "configure:1452: checking for ANSI C header files" >&5 if eval "test \"`echo '$''{'ac_cv_header_stdc'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 1367 "configure" +#line 1457 "configure" #include "confdefs.h" #include <stdlib.h> #include <stdarg.h> @@ -1371,7 +1460,7 @@ else #include <float.h> EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:1375: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:1465: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* @@ -1388,7 +1477,7 @@ rm -f conftest* if test $ac_cv_header_stdc = yes; then # SunOS 4.x string.h does not declare mem*, contrary to ANSI. cat > conftest.$ac_ext <<EOF -#line 1392 "configure" +#line 1482 "configure" #include "confdefs.h" #include <string.h> EOF @@ -1406,7 +1495,7 @@ fi if test $ac_cv_header_stdc = yes; then # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI. cat > conftest.$ac_ext <<EOF -#line 1410 "configure" +#line 1500 "configure" #include "confdefs.h" #include <stdlib.h> EOF @@ -1427,7 +1516,7 @@ if test "$cross_compiling" = yes; then : else cat > conftest.$ac_ext <<EOF -#line 1431 "configure" +#line 1521 "configure" #include "confdefs.h" #include <ctype.h> #define ISLOWER(c) ('a' <= (c) && (c) <= 'z') @@ -1438,7 +1527,7 @@ if (XOR (islower (i), ISLOWER (i)) || to exit (0); } EOF -if { (eval echo configure:1442: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:1532: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null then : else @@ -1462,12 +1551,12 @@ EOF fi echo $ac_n "checking for sys/wait.h that is POSIX.1 compatible""... $ac_c" 1>&6 -echo "configure:1466: checking for sys/wait.h that is POSIX.1 compatible" >&5 +echo "configure:1556: checking for sys/wait.h that is POSIX.1 compatible" >&5 if eval "test \"`echo '$''{'ac_cv_header_sys_wait_h'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 1471 "configure" +#line 1561 "configure" #include "confdefs.h" #include <sys/types.h> #include <sys/wait.h> @@ -1483,7 +1572,7 @@ wait (&s); s = WIFEXITED (s) ? WEXITSTATUS (s) : 1; ; return 0; } EOF -if { (eval echo configure:1487: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:1577: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_header_sys_wait_h=yes else @@ -1507,17 +1596,17 @@ for ac_hdr in fcntl.h sys/fcntl.h errno. do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 -echo "configure:1511: checking for $ac_hdr" >&5 +echo "configure:1601: checking for $ac_hdr" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 1516 "configure" +#line 1606 "configure" #include "confdefs.h" #include <$ac_hdr> EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:1521: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:1611: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* @@ -1547,17 +1636,17 @@ for ac_hdr in limits.h sys/time.h sys/se do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 -echo "configure:1551: checking for $ac_hdr" >&5 +echo "configure:1641: checking for $ac_hdr" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 1556 "configure" +#line 1646 "configure" #include "confdefs.h" #include <$ac_hdr> EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:1561: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:1651: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* @@ -1587,17 +1676,17 @@ for ac_hdr in memory.h crypt.h assert.h do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 -echo "configure:1591: checking for $ac_hdr" >&5 +echo "configure:1681: checking for $ac_hdr" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 1596 "configure" +#line 1686 "configure" #include "confdefs.h" #include <$ac_hdr> EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:1601: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:1691: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* @@ -1627,17 +1716,17 @@ for ac_hdr in sys/stat.h sys/socket.h sy do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 -echo "configure:1631: checking for $ac_hdr" >&5 +echo "configure:1721: checking for $ac_hdr" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 1636 "configure" +#line 1726 "configure" #include "confdefs.h" #include <$ac_hdr> EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:1641: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:1731: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* @@ -1663,21 +1752,21 @@ else fi done -for ac_hdr in signal.h sys/uio.h mcheck.h +for ac_hdr in signal.h sys/uio.h mcheck.h zlib.h do ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'` echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6 -echo "configure:1671: checking for $ac_hdr" >&5 +echo "configure:1761: checking for $ac_hdr" >&5 if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 1676 "configure" +#line 1766 "configure" #include "confdefs.h" #include <$ac_hdr> EOF ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out" -{ (eval echo configure:1681: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } +{ (eval echo configure:1771: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; } ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"` if test -z "$ac_err"; then rm -rf conftest* @@ -1706,7 +1795,7 @@ done echo $ac_n "checking whether crypt needs over 10 characters""... $ac_c" 1>&6 -echo "configure:1710: checking whether crypt needs over 10 characters" >&5 +echo "configure:1800: checking whether crypt needs over 10 characters" >&5 if eval "test \"`echo '$''{'ac_cv_unsafe_crypt'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -1722,7 +1811,7 @@ else ac_cv_unsafe_crypt=no else cat > conftest.$ac_ext <<EOF -#line 1726 "configure" +#line 1816 "configure" #include "confdefs.h" #define _XOPEN_SOURCE @@ -1745,7 +1834,7 @@ int main(void) EOF -if { (eval echo configure:1749: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null +if { (eval echo configure:1839: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null then ac_cv_unsafe_crypt=yes else @@ -1772,12 +1861,12 @@ fi echo $ac_n "checking for working const""... $ac_c" 1>&6 -echo "configure:1776: checking for working const" >&5 +echo "configure:1866: checking for working const" >&5 if eval "test \"`echo '$''{'ac_cv_c_const'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 1781 "configure" +#line 1871 "configure" #include "confdefs.h" int main() { @@ -1826,7 +1915,7 @@ ccp = (char const *const *) p; ; return 0; } EOF -if { (eval echo configure:1830: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:1920: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_c_const=yes else @@ -1847,12 +1936,12 @@ EOF fi echo $ac_n "checking for pid_t""... $ac_c" 1>&6 -echo "configure:1851: checking for pid_t" >&5 +echo "configure:1941: checking for pid_t" >&5 if eval "test \"`echo '$''{'ac_cv_type_pid_t'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 1856 "configure" +#line 1946 "configure" #include "confdefs.h" #include <sys/types.h> #if STDC_HEADERS @@ -1880,12 +1969,12 @@ EOF fi echo $ac_n "checking for size_t""... $ac_c" 1>&6 -echo "configure:1884: checking for size_t" >&5 +echo "configure:1974: checking for size_t" >&5 if eval "test \"`echo '$''{'ac_cv_type_size_t'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 1889 "configure" +#line 1979 "configure" #include "confdefs.h" #include <sys/types.h> #if STDC_HEADERS @@ -1913,12 +2002,12 @@ EOF fi echo $ac_n "checking for ssize_t""... $ac_c" 1>&6 -echo "configure:1917: checking for ssize_t" >&5 +echo "configure:2007: checking for ssize_t" >&5 if eval "test \"`echo '$''{'ac_cv_type_ssize_t'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 1922 "configure" +#line 2012 "configure" #include "confdefs.h" #include <sys/types.h> #if STDC_HEADERS @@ -1946,12 +2035,12 @@ EOF fi echo $ac_n "checking whether time.h and sys/time.h may both be included""... $ac_c" 1>&6 -echo "configure:1950: checking whether time.h and sys/time.h may both be included" >&5 +echo "configure:2040: checking whether time.h and sys/time.h may both be included" >&5 if eval "test \"`echo '$''{'ac_cv_header_time'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 1955 "configure" +#line 2045 "configure" #include "confdefs.h" #include <sys/types.h> #include <sys/time.h> @@ -1960,7 +2049,7 @@ int main() { struct tm *tp; ; return 0; } EOF -if { (eval echo configure:1964: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:2054: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_header_time=yes else @@ -1995,19 +2084,19 @@ EOF fi echo $ac_n "checking for struct in_addr""... $ac_c" 1>&6 -echo "configure:1999: checking for struct in_addr" >&5 +echo "configure:2089: checking for struct in_addr" >&5 if eval "test \"`echo '$''{'ac_cv_struct_in_addr'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 2004 "configure" +#line 2094 "configure" #include "confdefs.h" $headers int main() { struct in_addr tp; tp.s_addr; ; return 0; } EOF -if { (eval echo configure:2011: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:2101: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_struct_in_addr=yes else @@ -2034,19 +2123,19 @@ if test $ac_cv_header_sys_socket_h = no; ac_cv_socklen_t = no; else echo $ac_n "checking for typedef socklen_t""... $ac_c" 1>&6 -echo "configure:2038: checking for typedef socklen_t" >&5 +echo "configure:2128: checking for typedef socklen_t" >&5 if eval "test \"`echo '$''{'ac_cv_socklen_t'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 2043 "configure" +#line 2133 "configure" #include "confdefs.h" #include <sys/socket.h> int main() { socklen_t sl; sl=0; ; return 0; } EOF -if { (eval echo configure:2050: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:2140: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_socklen_t=yes else @@ -2070,12 +2159,12 @@ fi echo $ac_n "checking return type of signal handlers""... $ac_c" 1>&6 -echo "configure:2074: checking return type of signal handlers" >&5 +echo "configure:2164: checking return type of signal handlers" >&5 if eval "test \"`echo '$''{'ac_cv_type_signal'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 2079 "configure" +#line 2169 "configure" #include "confdefs.h" #include <sys/types.h> #include <signal.h> @@ -2092,7 +2181,7 @@ int main() { int i; ; return 0; } EOF -if { (eval echo configure:2096: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:2186: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* ac_cv_type_signal=void else @@ -2111,12 +2200,12 @@ EOF echo $ac_n "checking for vprintf""... $ac_c" 1>&6 -echo "configure:2115: checking for vprintf" >&5 +echo "configure:2205: checking for vprintf" >&5 if eval "test \"`echo '$''{'ac_cv_func_vprintf'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 2120 "configure" +#line 2210 "configure" #include "confdefs.h" /* System header to define __stub macros and hopefully few prototypes, which can conflict with char vprintf(); below. */ @@ -2139,7 +2228,7 @@ vprintf(); ; return 0; } EOF -if { (eval echo configure:2143: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:2233: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_vprintf=yes" else @@ -2163,12 +2252,12 @@ fi if test "$ac_cv_func_vprintf" != yes; then echo $ac_n "checking for _doprnt""... $ac_c" 1>&6 -echo "configure:2167: checking for _doprnt" >&5 +echo "configure:2257: checking for _doprnt" >&5 if eval "test \"`echo '$''{'ac_cv_func__doprnt'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 2172 "configure" +#line 2262 "configure" #include "confdefs.h" /* System header to define __stub macros and hopefully few prototypes, which can conflict with char _doprnt(); below. */ @@ -2191,7 +2280,7 @@ _doprnt(); ; return 0; } EOF -if { (eval echo configure:2195: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:2285: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func__doprnt=yes" else @@ -2218,12 +2307,12 @@ fi for ac_func in gettimeofday select snprintf strcasecmp strdup strerror stricmp strlcpy strncasecmp strnicmp strstr vsnprintf do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 -echo "configure:2222: checking for $ac_func" >&5 +echo "configure:2312: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 2227 "configure" +#line 2317 "configure" #include "confdefs.h" /* System header to define __stub macros and hopefully few prototypes, which can conflict with char $ac_func(); below. */ @@ -2246,7 +2335,7 @@ $ac_func(); ; return 0; } EOF -if { (eval echo configure:2250: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:2340: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else @@ -2276,12 +2365,12 @@ LIBS="$LIBS $NETLIB" for ac_func in inet_addr inet_aton do echo $ac_n "checking for $ac_func""... $ac_c" 1>&6 -echo "configure:2280: checking for $ac_func" >&5 +echo "configure:2370: checking for $ac_func" >&5 if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else cat > conftest.$ac_ext <<EOF -#line 2285 "configure" +#line 2375 "configure" #include "confdefs.h" /* System header to define __stub macros and hopefully few prototypes, which can conflict with char $ac_func(); below. */ @@ -2304,7 +2393,7 @@ $ac_func(); ; return 0; } EOF -if { (eval echo configure:2308: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then +if { (eval echo configure:2398: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then rm -rf conftest* eval "ac_cv_func_$ac_func=yes" else @@ -2334,7 +2423,7 @@ LIBS=$ORIGLIBS ac_safe=accept; echo $ac_n "checking if accept is prototyped""... $ac_c" 1>&6 -echo "configure:2338: checking if accept is prototyped" >&5 +echo "configure:2428: checking if accept is prototyped" >&5 if eval "test \"`echo '$''{'ac_cv_prototype_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2344,7 +2433,7 @@ else CFLAGS="$CFLAGS -fno-builtin" fi cat > conftest.$ac_ext <<EOF -#line 2348 "configure" +#line 2438 "configure" #include "confdefs.h" #define NO_LIBRARY_PROTOTYPES @@ -2360,7 +2449,7 @@ int main() { ; return 0; } EOF -if { (eval echo configure:2364: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:2454: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* eval "ac_cv_prototype_$ac_safe=no" else @@ -2391,7 +2480,7 @@ fi ac_safe=atoi; echo $ac_n "checking if atoi is prototyped""... $ac_c" 1>&6 -echo "configure:2395: checking if atoi is prototyped" >&5 +echo "configure:2485: checking if atoi is prototyped" >&5 if eval "test \"`echo '$''{'ac_cv_prototype_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2401,7 +2490,7 @@ else CFLAGS="$CFLAGS -fno-builtin" fi cat > conftest.$ac_ext <<EOF -#line 2405 "configure" +#line 2495 "configure" #include "confdefs.h" #define NO_LIBRARY_PROTOTYPES @@ -2417,7 +2506,7 @@ int main() { ; return 0; } EOF -if { (eval echo configure:2421: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:2511: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* eval "ac_cv_prototype_$ac_safe=no" else @@ -2448,7 +2537,7 @@ fi ac_safe=atol; echo $ac_n "checking if atol is prototyped""... $ac_c" 1>&6 -echo "configure:2452: checking if atol is prototyped" >&5 +echo "configure:2542: checking if atol is prototyped" >&5 if eval "test \"`echo '$''{'ac_cv_prototype_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2458,7 +2547,7 @@ else CFLAGS="$CFLAGS -fno-builtin" fi cat > conftest.$ac_ext <<EOF -#line 2462 "configure" +#line 2552 "configure" #include "confdefs.h" #define NO_LIBRARY_PROTOTYPES @@ -2474,7 +2563,7 @@ int main() { ; return 0; } EOF -if { (eval echo configure:2478: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:2568: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* eval "ac_cv_prototype_$ac_safe=no" else @@ -2505,7 +2594,7 @@ fi ac_safe=bind; echo $ac_n "checking if bind is prototyped""... $ac_c" 1>&6 -echo "configure:2509: checking if bind is prototyped" >&5 +echo "configure:2599: checking if bind is prototyped" >&5 if eval "test \"`echo '$''{'ac_cv_prototype_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2515,7 +2604,7 @@ else CFLAGS="$CFLAGS -fno-builtin" fi cat > conftest.$ac_ext <<EOF -#line 2519 "configure" +#line 2609 "configure" #include "confdefs.h" #define NO_LIBRARY_PROTOTYPES @@ -2531,7 +2620,7 @@ int main() { ; return 0; } EOF -if { (eval echo configure:2535: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:2625: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* eval "ac_cv_prototype_$ac_safe=no" else @@ -2562,7 +2651,7 @@ fi ac_safe=bzero; echo $ac_n "checking if bzero is prototyped""... $ac_c" 1>&6 -echo "configure:2566: checking if bzero is prototyped" >&5 +echo "configure:2656: checking if bzero is prototyped" >&5 if eval "test \"`echo '$''{'ac_cv_prototype_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2572,7 +2661,7 @@ else CFLAGS="$CFLAGS -fno-builtin" fi cat > conftest.$ac_ext <<EOF -#line 2576 "configure" +#line 2666 "configure" #include "confdefs.h" #define NO_LIBRARY_PROTOTYPES @@ -2588,7 +2677,7 @@ int main() { ; return 0; } EOF -if { (eval echo configure:2592: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:2682: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* eval "ac_cv_prototype_$ac_safe=no" else @@ -2619,7 +2708,7 @@ fi ac_safe=chdir; echo $ac_n "checking if chdir is prototyped""... $ac_c" 1>&6 -echo "configure:2623: checking if chdir is prototyped" >&5 +echo "configure:2713: checking if chdir is prototyped" >&5 if eval "test \"`echo '$''{'ac_cv_prototype_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2629,7 +2718,7 @@ else CFLAGS="$CFLAGS -fno-builtin" fi cat > conftest.$ac_ext <<EOF -#line 2633 "configure" +#line 2723 "configure" #include "confdefs.h" #define NO_LIBRARY_PROTOTYPES @@ -2645,7 +2734,7 @@ int main() { ; return 0; } EOF -if { (eval echo configure:2649: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:2739: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* eval "ac_cv_prototype_$ac_safe=no" else @@ -2676,7 +2765,7 @@ fi ac_safe=close; echo $ac_n "checking if close is prototyped""... $ac_c" 1>&6 -echo "configure:2680: checking if close is prototyped" >&5 +echo "configure:2770: checking if close is prototyped" >&5 if eval "test \"`echo '$''{'ac_cv_prototype_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2686,7 +2775,7 @@ else CFLAGS="$CFLAGS -fno-builtin" fi cat > conftest.$ac_ext <<EOF -#line 2690 "configure" +#line 2780 "configure" #include "confdefs.h" #define NO_LIBRARY_PROTOTYPES @@ -2702,7 +2791,7 @@ int main() { ; return 0; } EOF -if { (eval echo configure:2706: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:2796: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* eval "ac_cv_prototype_$ac_safe=no" else @@ -2733,7 +2822,7 @@ fi ac_safe=crypt; echo $ac_n "checking if crypt is prototyped""... $ac_c" 1>&6 -echo "configure:2737: checking if crypt is prototyped" >&5 +echo "configure:2827: checking if crypt is prototyped" >&5 if eval "test \"`echo '$''{'ac_cv_prototype_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2743,7 +2832,7 @@ else CFLAGS="$CFLAGS -fno-builtin" fi cat > conftest.$ac_ext <<EOF -#line 2747 "configure" +#line 2837 "configure" #include "confdefs.h" #define NO_LIBRARY_PROTOTYPES @@ -2759,7 +2848,7 @@ int main() { ; return 0; } EOF -if { (eval echo configure:2763: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:2853: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* eval "ac_cv_prototype_$ac_safe=no" else @@ -2790,7 +2879,7 @@ fi ac_safe=fclose; echo $ac_n "checking if fclose is prototyped""... $ac_c" 1>&6 -echo "configure:2794: checking if fclose is prototyped" >&5 +echo "configure:2884: checking if fclose is prototyped" >&5 if eval "test \"`echo '$''{'ac_cv_prototype_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2800,7 +2889,7 @@ else CFLAGS="$CFLAGS -fno-builtin" fi cat > conftest.$ac_ext <<EOF -#line 2804 "configure" +#line 2894 "configure" #include "confdefs.h" #define NO_LIBRARY_PROTOTYPES @@ -2816,7 +2905,7 @@ int main() { ; return 0; } EOF -if { (eval echo configure:2820: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:2910: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* eval "ac_cv_prototype_$ac_safe=no" else @@ -2847,7 +2936,7 @@ fi ac_safe=fcntl; echo $ac_n "checking if fcntl is prototyped""... $ac_c" 1>&6 -echo "configure:2851: checking if fcntl is prototyped" >&5 +echo "configure:2941: checking if fcntl is prototyped" >&5 if eval "test \"`echo '$''{'ac_cv_prototype_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2857,7 +2946,7 @@ else CFLAGS="$CFLAGS -fno-builtin" fi cat > conftest.$ac_ext <<EOF -#line 2861 "configure" +#line 2951 "configure" #include "confdefs.h" #define NO_LIBRARY_PROTOTYPES @@ -2873,7 +2962,7 @@ int main() { ; return 0; } EOF -if { (eval echo configure:2877: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:2967: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* eval "ac_cv_prototype_$ac_safe=no" else @@ -2904,7 +2993,7 @@ fi ac_safe=fflush; echo $ac_n "checking if fflush is prototyped""... $ac_c" 1>&6 -echo "configure:2908: checking if fflush is prototyped" >&5 +echo "configure:2998: checking if fflush is prototyped" >&5 if eval "test \"`echo '$''{'ac_cv_prototype_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2914,7 +3003,7 @@ else CFLAGS="$CFLAGS -fno-builtin" fi cat > conftest.$ac_ext <<EOF -#line 2918 "configure" +#line 3008 "configure" #include "confdefs.h" #define NO_LIBRARY_PROTOTYPES @@ -2930,7 +3019,7 @@ int main() { ; return 0; } EOF -if { (eval echo configure:2934: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:3024: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* eval "ac_cv_prototype_$ac_safe=no" else @@ -2961,7 +3050,7 @@ fi ac_safe=fprintf; echo $ac_n "checking if fprintf is prototyped""... $ac_c" 1>&6 -echo "configure:2965: checking if fprintf is prototyped" >&5 +echo "configure:3055: checking if fprintf is prototyped" >&5 if eval "test \"`echo '$''{'ac_cv_prototype_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -2971,7 +3060,7 @@ else CFLAGS="$CFLAGS -fno-builtin" fi cat > conftest.$ac_ext <<EOF -#line 2975 "configure" +#line 3065 "configure" #include "confdefs.h" #define NO_LIBRARY_PROTOTYPES @@ -2987,7 +3076,7 @@ int main() { ; return 0; } EOF -if { (eval echo configure:2991: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:3081: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* eval "ac_cv_prototype_$ac_safe=no" else @@ -3018,7 +3107,7 @@ fi ac_safe=fputc; echo $ac_n "checking if fputc is prototyped""... $ac_c" 1>&6 -echo "configure:3022: checking if fputc is prototyped" >&5 +echo "configure:3112: checking if fputc is prototyped" >&5 if eval "test \"`echo '$''{'ac_cv_prototype_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -3028,7 +3117,7 @@ else CFLAGS="$CFLAGS -fno-builtin" fi cat > conftest.$ac_ext <<EOF -#line 3032 "configure" +#line 3122 "configure" #include "confdefs.h" #define NO_LIBRARY_PROTOTYPES @@ -3044,7 +3133,7 @@ int main() { ; return 0; } EOF -if { (eval echo configure:3048: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:3138: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* eval "ac_cv_prototype_$ac_safe=no" else @@ -3075,7 +3164,7 @@ fi ac_safe=fputs; echo $ac_n "checking if fputs is prototyped""... $ac_c" 1>&6 -echo "configure:3079: checking if fputs is prototyped" >&5 +echo "configure:3169: checking if fputs is prototyped" >&5 if eval "test \"`echo '$''{'ac_cv_prototype_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -3085,7 +3174,7 @@ else CFLAGS="$CFLAGS -fno-builtin" fi cat > conftest.$ac_ext <<EOF -#line 3089 "configure" +#line 3179 "configure" #include "confdefs.h" #define NO_LIBRARY_PROTOTYPES @@ -3101,7 +3190,7 @@ int main() { ; return 0; } EOF -if { (eval echo configure:3105: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:3195: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* eval "ac_cv_prototype_$ac_safe=no" else @@ -3132,7 +3221,7 @@ fi ac_safe=fread; echo $ac_n "checking if fread is prototyped""... $ac_c" 1>&6 -echo "configure:3136: checking if fread is prototyped" >&5 +echo "configure:3226: checking if fread is prototyped" >&5 if eval "test \"`echo '$''{'ac_cv_prototype_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -3142,7 +3231,7 @@ else CFLAGS="$CFLAGS -fno-builtin" fi cat > conftest.$ac_ext <<EOF -#line 3146 "configure" +#line 3236 "configure" #include "confdefs.h" #define NO_LIBRARY_PROTOTYPES @@ -3158,7 +3247,7 @@ int main() { ; return 0; } EOF -if { (eval echo configure:3162: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:3252: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* eval "ac_cv_prototype_$ac_safe=no" else @@ -3189,7 +3278,7 @@ fi ac_safe=fscanf; echo $ac_n "checking if fscanf is prototyped""... $ac_c" 1>&6 -echo "configure:3193: checking if fscanf is prototyped" >&5 +echo "configure:3283: checking if fscanf is prototyped" >&5 if eval "test \"`echo '$''{'ac_cv_prototype_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -3199,7 +3288,7 @@ else CFLAGS="$CFLAGS -fno-builtin" fi cat > conftest.$ac_ext <<EOF -#line 3203 "configure" +#line 3293 "configure" #include "confdefs.h" #define NO_LIBRARY_PROTOTYPES @@ -3215,7 +3304,7 @@ int main() { ; return 0; } EOF -if { (eval echo configure:3219: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:3309: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* eval "ac_cv_prototype_$ac_safe=no" else @@ -3246,7 +3335,7 @@ fi ac_safe=fseek; echo $ac_n "checking if fseek is prototyped""... $ac_c" 1>&6 -echo "configure:3250: checking if fseek is prototyped" >&5 +echo "configure:3340: checking if fseek is prototyped" >&5 if eval "test \"`echo '$''{'ac_cv_prototype_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -3256,7 +3345,7 @@ else CFLAGS="$CFLAGS -fno-builtin" fi cat > conftest.$ac_ext <<EOF -#line 3260 "configure" +#line 3350 "configure" #include "confdefs.h" #define NO_LIBRARY_PROTOTYPES @@ -3272,7 +3361,7 @@ int main() { ; return 0; } EOF -if { (eval echo configure:3276: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:3366: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* eval "ac_cv_prototype_$ac_safe=no" else @@ -3303,7 +3392,7 @@ fi ac_safe=fwrite; echo $ac_n "checking if fwrite is prototyped""... $ac_c" 1>&6 -echo "configure:3307: checking if fwrite is prototyped" >&5 +echo "configure:3397: checking if fwrite is prototyped" >&5 if eval "test \"`echo '$''{'ac_cv_prototype_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -3313,7 +3402,7 @@ else CFLAGS="$CFLAGS -fno-builtin" fi cat > conftest.$ac_ext <<EOF -#line 3317 "configure" +#line 3407 "configure" #include "confdefs.h" #define NO_LIBRARY_PROTOTYPES @@ -3329,7 +3418,7 @@ int main() { ; return 0; } EOF -if { (eval echo configure:3333: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:3423: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* eval "ac_cv_prototype_$ac_safe=no" else @@ -3360,7 +3449,7 @@ fi ac_safe=getpeername; echo $ac_n "checking if getpeername is prototyped""... $ac_c" 1>&6 -echo "configure:3364: checking if getpeername is prototyped" >&5 +echo "configure:3454: checking if getpeername is prototyped" >&5 if eval "test \"`echo '$''{'ac_cv_prototype_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -3370,7 +3459,7 @@ else CFLAGS="$CFLAGS -fno-builtin" fi cat > conftest.$ac_ext <<EOF -#line 3374 "configure" +#line 3464 "configure" #include "confdefs.h" #define NO_LIBRARY_PROTOTYPES @@ -3386,7 +3475,7 @@ int main() { ; return 0; } EOF -if { (eval echo configure:3390: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:3480: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* eval "ac_cv_prototype_$ac_safe=no" else @@ -3417,7 +3506,7 @@ fi ac_safe=getpid; echo $ac_n "checking if getpid is prototyped""... $ac_c" 1>&6 -echo "configure:3421: checking if getpid is prototyped" >&5 +echo "configure:3511: checking if getpid is prototyped" >&5 if eval "test \"`echo '$''{'ac_cv_prototype_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -3427,7 +3516,7 @@ else CFLAGS="$CFLAGS -fno-builtin" fi cat > conftest.$ac_ext <<EOF -#line 3431 "configure" +#line 3521 "configure" #include "confdefs.h" #define NO_LIBRARY_PROTOTYPES @@ -3443,7 +3532,7 @@ int main() { ; return 0; } EOF -if { (eval echo configure:3447: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:3537: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* eval "ac_cv_prototype_$ac_safe=no" else @@ -3474,7 +3563,7 @@ fi ac_safe=getrlimit; echo $ac_n "checking if getrlimit is prototyped""... $ac_c" 1>&6 -echo "configure:3478: checking if getrlimit is prototyped" >&5 +echo "configure:3568: checking if getrlimit is prototyped" >&5 if eval "test \"`echo '$''{'ac_cv_prototype_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -3484,7 +3573,7 @@ else CFLAGS="$CFLAGS -fno-builtin" fi cat > conftest.$ac_ext <<EOF -#line 3488 "configure" +#line 3578 "configure" #include "confdefs.h" #define NO_LIBRARY_PROTOTYPES @@ -3500,7 +3589,7 @@ int main() { ; return 0; } EOF -if { (eval echo configure:3504: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:3594: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* eval "ac_cv_prototype_$ac_safe=no" else @@ -3531,7 +3620,7 @@ fi ac_safe=getsockname; echo $ac_n "checking if getsockname is prototyped""... $ac_c" 1>&6 -echo "configure:3535: checking if getsockname is prototyped" >&5 +echo "configure:3625: checking if getsockname is prototyped" >&5 if eval "test \"`echo '$''{'ac_cv_prototype_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -3541,7 +3630,7 @@ else CFLAGS="$CFLAGS -fno-builtin" fi cat > conftest.$ac_ext <<EOF -#line 3545 "configure" +#line 3635 "configure" #include "confdefs.h" #define NO_LIBRARY_PROTOTYPES @@ -3557,7 +3646,7 @@ int main() { ; return 0; } EOF -if { (eval echo configure:3561: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:3651: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* eval "ac_cv_prototype_$ac_safe=no" else @@ -3588,7 +3677,7 @@ fi ac_safe=gettimeofday; echo $ac_n "checking if gettimeofday is prototyped""... $ac_c" 1>&6 -echo "configure:3592: checking if gettimeofday is prototyped" >&5 +echo "configure:3682: checking if gettimeofday is prototyped" >&5 if eval "test \"`echo '$''{'ac_cv_prototype_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -3598,7 +3687,7 @@ else CFLAGS="$CFLAGS -fno-builtin" fi cat > conftest.$ac_ext <<EOF -#line 3602 "configure" +#line 3692 "configure" #include "confdefs.h" #define NO_LIBRARY_PROTOTYPES @@ -3614,7 +3703,7 @@ int main() { ; return 0; } EOF -if { (eval echo configure:3618: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:3708: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* eval "ac_cv_prototype_$ac_safe=no" else @@ -3645,7 +3734,7 @@ fi ac_safe=htonl; echo $ac_n "checking if htonl is prototyped""... $ac_c" 1>&6 -echo "configure:3649: checking if htonl is prototyped" >&5 +echo "configure:3739: checking if htonl is prototyped" >&5 if eval "test \"`echo '$''{'ac_cv_prototype_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -3655,7 +3744,7 @@ else CFLAGS="$CFLAGS -fno-builtin" fi cat > conftest.$ac_ext <<EOF -#line 3659 "configure" +#line 3749 "configure" #include "confdefs.h" #define NO_LIBRARY_PROTOTYPES @@ -3671,7 +3760,7 @@ int main() { ; return 0; } EOF -if { (eval echo configure:3675: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:3765: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* eval "ac_cv_prototype_$ac_safe=no" else @@ -3702,7 +3791,7 @@ fi ac_safe=htons; echo $ac_n "checking if htons is prototyped""... $ac_c" 1>&6 -echo "configure:3706: checking if htons is prototyped" >&5 +echo "configure:3796: checking if htons is prototyped" >&5 if eval "test \"`echo '$''{'ac_cv_prototype_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -3712,7 +3801,7 @@ else CFLAGS="$CFLAGS -fno-builtin" fi cat > conftest.$ac_ext <<EOF -#line 3716 "configure" +#line 3806 "configure" #include "confdefs.h" #define NO_LIBRARY_PROTOTYPES @@ -3728,7 +3817,7 @@ int main() { ; return 0; } EOF -if { (eval echo configure:3732: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:3822: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* eval "ac_cv_prototype_$ac_safe=no" else @@ -3759,7 +3848,7 @@ fi ac_safe=inet_addr; echo $ac_n "checking if inet_addr is prototyped""... $ac_c" 1>&6 -echo "configure:3763: checking if inet_addr is prototyped" >&5 +echo "configure:3853: checking if inet_addr is prototyped" >&5 if eval "test \"`echo '$''{'ac_cv_prototype_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -3769,7 +3858,7 @@ else CFLAGS="$CFLAGS -fno-builtin" fi cat > conftest.$ac_ext <<EOF -#line 3773 "configure" +#line 3863 "configure" #include "confdefs.h" #define NO_LIBRARY_PROTOTYPES @@ -3785,7 +3874,7 @@ int main() { ; return 0; } EOF -if { (eval echo configure:3789: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:3879: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* eval "ac_cv_prototype_$ac_safe=no" else @@ -3816,7 +3905,7 @@ fi ac_safe=inet_aton; echo $ac_n "checking if inet_aton is prototyped""... $ac_c" 1>&6 -echo "configure:3820: checking if inet_aton is prototyped" >&5 +echo "configure:3910: checking if inet_aton is prototyped" >&5 if eval "test \"`echo '$''{'ac_cv_prototype_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -3826,7 +3915,7 @@ else CFLAGS="$CFLAGS -fno-builtin" fi cat > conftest.$ac_ext <<EOF -#line 3830 "configure" +#line 3920 "configure" #include "confdefs.h" #define NO_LIBRARY_PROTOTYPES @@ -3842,7 +3931,7 @@ int main() { ; return 0; } EOF -if { (eval echo configure:3846: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:3936: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* eval "ac_cv_prototype_$ac_safe=no" else @@ -3873,7 +3962,7 @@ fi ac_safe=inet_ntoa; echo $ac_n "checking if inet_ntoa is prototyped""... $ac_c" 1>&6 -echo "configure:3877: checking if inet_ntoa is prototyped" >&5 +echo "configure:3967: checking if inet_ntoa is prototyped" >&5 if eval "test \"`echo '$''{'ac_cv_prototype_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -3883,7 +3972,7 @@ else CFLAGS="$CFLAGS -fno-builtin" fi cat > conftest.$ac_ext <<EOF -#line 3887 "configure" +#line 3977 "configure" #include "confdefs.h" #define NO_LIBRARY_PROTOTYPES @@ -3899,7 +3988,7 @@ int main() { ; return 0; } EOF -if { (eval echo configure:3903: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:3993: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* eval "ac_cv_prototype_$ac_safe=no" else @@ -3930,7 +4019,7 @@ fi ac_safe=listen; echo $ac_n "checking if listen is prototyped""... $ac_c" 1>&6 -echo "configure:3934: checking if listen is prototyped" >&5 +echo "configure:4024: checking if listen is prototyped" >&5 if eval "test \"`echo '$''{'ac_cv_prototype_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -3940,7 +4029,7 @@ else CFLAGS="$CFLAGS -fno-builtin" fi cat > conftest.$ac_ext <<EOF -#line 3944 "configure" +#line 4034 "configure" #include "confdefs.h" #define NO_LIBRARY_PROTOTYPES @@ -3956,7 +4045,7 @@ int main() { ; return 0; } EOF -if { (eval echo configure:3960: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:4050: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* eval "ac_cv_prototype_$ac_safe=no" else @@ -3987,7 +4076,7 @@ fi ac_safe=ntohl; echo $ac_n "checking if ntohl is prototyped""... $ac_c" 1>&6 -echo "configure:3991: checking if ntohl is prototyped" >&5 +echo "configure:4081: checking if ntohl is prototyped" >&5 if eval "test \"`echo '$''{'ac_cv_prototype_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -3997,7 +4086,7 @@ else CFLAGS="$CFLAGS -fno-builtin" fi cat > conftest.$ac_ext <<EOF -#line 4001 "configure" +#line 4091 "configure" #include "confdefs.h" #define NO_LIBRARY_PROTOTYPES @@ -4013,7 +4102,7 @@ int main() { ; return 0; } EOF -if { (eval echo configure:4017: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:4107: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* eval "ac_cv_prototype_$ac_safe=no" else @@ -4044,7 +4133,7 @@ fi ac_safe=perror; echo $ac_n "checking if perror is prototyped""... $ac_c" 1>&6 -echo "configure:4048: checking if perror is prototyped" >&5 +echo "configure:4138: checking if perror is prototyped" >&5 if eval "test \"`echo '$''{'ac_cv_prototype_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -4054,7 +4143,7 @@ else CFLAGS="$CFLAGS -fno-builtin" fi cat > conftest.$ac_ext <<EOF -#line 4058 "configure" +#line 4148 "configure" #include "confdefs.h" #define NO_LIBRARY_PROTOTYPES @@ -4070,7 +4159,7 @@ int main() { ; return 0; } EOF -if { (eval echo configure:4074: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:4164: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* eval "ac_cv_prototype_$ac_safe=no" else @@ -4101,7 +4190,7 @@ fi ac_safe=printf; echo $ac_n "checking if printf is prototyped""... $ac_c" 1>&6 -echo "configure:4105: checking if printf is prototyped" >&5 +echo "configure:4195: checking if printf is prototyped" >&5 if eval "test \"`echo '$''{'ac_cv_prototype_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -4111,7 +4200,7 @@ else CFLAGS="$CFLAGS -fno-builtin" fi cat > conftest.$ac_ext <<EOF -#line 4115 "configure" +#line 4205 "configure" #include "confdefs.h" #define NO_LIBRARY_PROTOTYPES @@ -4127,7 +4216,7 @@ int main() { ; return 0; } EOF -if { (eval echo configure:4131: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:4221: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* eval "ac_cv_prototype_$ac_safe=no" else @@ -4158,7 +4247,7 @@ fi ac_safe=qsort; echo $ac_n "checking if qsort is prototyped""... $ac_c" 1>&6 -echo "configure:4162: checking if qsort is prototyped" >&5 +echo "configure:4252: checking if qsort is prototyped" >&5 if eval "test \"`echo '$''{'ac_cv_prototype_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -4168,7 +4257,7 @@ else CFLAGS="$CFLAGS -fno-builtin" fi cat > conftest.$ac_ext <<EOF -#line 4172 "configure" +#line 4262 "configure" #include "confdefs.h" #define NO_LIBRARY_PROTOTYPES @@ -4184,7 +4273,7 @@ int main() { ; return 0; } EOF -if { (eval echo configure:4188: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:4278: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* eval "ac_cv_prototype_$ac_safe=no" else @@ -4215,7 +4304,7 @@ fi ac_safe=read; echo $ac_n "checking if read is prototyped""... $ac_c" 1>&6 -echo "configure:4219: checking if read is prototyped" >&5 +echo "configure:4309: checking if read is prototyped" >&5 if eval "test \"`echo '$''{'ac_cv_prototype_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -4225,7 +4314,7 @@ else CFLAGS="$CFLAGS -fno-builtin" fi cat > conftest.$ac_ext <<EOF -#line 4229 "configure" +#line 4319 "configure" #include "confdefs.h" #define NO_LIBRARY_PROTOTYPES @@ -4241,7 +4330,7 @@ int main() { ; return 0; } EOF -if { (eval echo configure:4245: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:4335: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* eval "ac_cv_prototype_$ac_safe=no" else @@ -4272,7 +4361,7 @@ fi ac_safe=remove; echo $ac_n "checking if remove is prototyped""... $ac_c" 1>&6 -echo "configure:4276: checking if remove is prototyped" >&5 +echo "configure:4366: checking if remove is prototyped" >&5 if eval "test \"`echo '$''{'ac_cv_prototype_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -4282,7 +4371,7 @@ else CFLAGS="$CFLAGS -fno-builtin" fi cat > conftest.$ac_ext <<EOF -#line 4286 "configure" +#line 4376 "configure" #include "confdefs.h" #define NO_LIBRARY_PROTOTYPES @@ -4298,7 +4387,7 @@ int main() { ; return 0; } EOF -if { (eval echo configure:4302: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:4392: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* eval "ac_cv_prototype_$ac_safe=no" else @@ -4329,7 +4418,7 @@ fi ac_safe=rewind; echo $ac_n "checking if rewind is prototyped""... $ac_c" 1>&6 -echo "configure:4333: checking if rewind is prototyped" >&5 +echo "configure:4423: checking if rewind is prototyped" >&5 if eval "test \"`echo '$''{'ac_cv_prototype_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -4339,7 +4428,7 @@ else CFLAGS="$CFLAGS -fno-builtin" fi cat > conftest.$ac_ext <<EOF -#line 4343 "configure" +#line 4433 "configure" #include "confdefs.h" #define NO_LIBRARY_PROTOTYPES @@ -4355,7 +4444,7 @@ int main() { ; return 0; } EOF -if { (eval echo configure:4359: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:4449: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* eval "ac_cv_prototype_$ac_safe=no" else @@ -4386,7 +4475,7 @@ fi ac_safe=select; echo $ac_n "checking if select is prototyped""... $ac_c" 1>&6 -echo "configure:4390: checking if select is prototyped" >&5 +echo "configure:4480: checking if select is prototyped" >&5 if eval "test \"`echo '$''{'ac_cv_prototype_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -4396,7 +4485,7 @@ else CFLAGS="$CFLAGS -fno-builtin" fi cat > conftest.$ac_ext <<EOF -#line 4400 "configure" +#line 4490 "configure" #include "confdefs.h" #define NO_LIBRARY_PROTOTYPES @@ -4412,7 +4501,7 @@ int main() { ; return 0; } EOF -if { (eval echo configure:4416: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:4506: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* eval "ac_cv_prototype_$ac_safe=no" else @@ -4443,7 +4532,7 @@ fi ac_safe=setitimer; echo $ac_n "checking if setitimer is prototyped""... $ac_c" 1>&6 -echo "configure:4447: checking if setitimer is prototyped" >&5 +echo "configure:4537: checking if setitimer is prototyped" >&5 if eval "test \"`echo '$''{'ac_cv_prototype_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -4453,7 +4542,7 @@ else CFLAGS="$CFLAGS -fno-builtin" fi cat > conftest.$ac_ext <<EOF -#line 4457 "configure" +#line 4547 "configure" #include "confdefs.h" #define NO_LIBRARY_PROTOTYPES @@ -4469,7 +4558,7 @@ int main() { ; return 0; } EOF -if { (eval echo configure:4473: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:4563: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* eval "ac_cv_prototype_$ac_safe=no" else @@ -4500,7 +4589,7 @@ fi ac_safe=setrlimit; echo $ac_n "checking if setrlimit is prototyped""... $ac_c" 1>&6 -echo "configure:4504: checking if setrlimit is prototyped" >&5 +echo "configure:4594: checking if setrlimit is prototyped" >&5 if eval "test \"`echo '$''{'ac_cv_prototype_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -4510,7 +4599,7 @@ else CFLAGS="$CFLAGS -fno-builtin" fi cat > conftest.$ac_ext <<EOF -#line 4514 "configure" +#line 4604 "configure" #include "confdefs.h" #define NO_LIBRARY_PROTOTYPES @@ -4526,7 +4615,7 @@ int main() { ; return 0; } EOF -if { (eval echo configure:4530: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:4620: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* eval "ac_cv_prototype_$ac_safe=no" else @@ -4557,7 +4646,7 @@ fi ac_safe=setsockopt; echo $ac_n "checking if setsockopt is prototyped""... $ac_c" 1>&6 -echo "configure:4561: checking if setsockopt is prototyped" >&5 +echo "configure:4651: checking if setsockopt is prototyped" >&5 if eval "test \"`echo '$''{'ac_cv_prototype_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -4567,7 +4656,7 @@ else CFLAGS="$CFLAGS -fno-builtin" fi cat > conftest.$ac_ext <<EOF -#line 4571 "configure" +#line 4661 "configure" #include "confdefs.h" #define NO_LIBRARY_PROTOTYPES @@ -4583,7 +4672,7 @@ int main() { ; return 0; } EOF -if { (eval echo configure:4587: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:4677: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* eval "ac_cv_prototype_$ac_safe=no" else @@ -4614,7 +4703,7 @@ fi ac_safe=snprintf; echo $ac_n "checking if snprintf is prototyped""... $ac_c" 1>&6 -echo "configure:4618: checking if snprintf is prototyped" >&5 +echo "configure:4708: checking if snprintf is prototyped" >&5 if eval "test \"`echo '$''{'ac_cv_prototype_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -4624,7 +4713,7 @@ else CFLAGS="$CFLAGS -fno-builtin" fi cat > conftest.$ac_ext <<EOF -#line 4628 "configure" +#line 4718 "configure" #include "confdefs.h" #define NO_LIBRARY_PROTOTYPES @@ -4640,7 +4729,7 @@ int main() { ; return 0; } EOF -if { (eval echo configure:4644: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:4734: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* eval "ac_cv_prototype_$ac_safe=no" else @@ -4671,7 +4760,7 @@ fi ac_safe=socket; echo $ac_n "checking if socket is prototyped""... $ac_c" 1>&6 -echo "configure:4675: checking if socket is prototyped" >&5 +echo "configure:4765: checking if socket is prototyped" >&5 if eval "test \"`echo '$''{'ac_cv_prototype_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -4681,7 +4770,7 @@ else CFLAGS="$CFLAGS -fno-builtin" fi cat > conftest.$ac_ext <<EOF -#line 4685 "configure" +#line 4775 "configure" #include "confdefs.h" #define NO_LIBRARY_PROTOTYPES @@ -4697,7 +4786,7 @@ int main() { ; return 0; } EOF -if { (eval echo configure:4701: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:4791: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* eval "ac_cv_prototype_$ac_safe=no" else @@ -4728,7 +4817,7 @@ fi ac_safe=sprintf; echo $ac_n "checking if sprintf is prototyped""... $ac_c" 1>&6 -echo "configure:4732: checking if sprintf is prototyped" >&5 +echo "configure:4822: checking if sprintf is prototyped" >&5 if eval "test \"`echo '$''{'ac_cv_prototype_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -4738,7 +4827,7 @@ else CFLAGS="$CFLAGS -fno-builtin" fi cat > conftest.$ac_ext <<EOF -#line 4742 "configure" +#line 4832 "configure" #include "confdefs.h" #define NO_LIBRARY_PROTOTYPES @@ -4754,7 +4843,7 @@ int main() { ; return 0; } EOF -if { (eval echo configure:4758: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:4848: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* eval "ac_cv_prototype_$ac_safe=no" else @@ -4785,7 +4874,7 @@ fi ac_safe=sscanf; echo $ac_n "checking if sscanf is prototyped""... $ac_c" 1>&6 -echo "configure:4789: checking if sscanf is prototyped" >&5 +echo "configure:4879: checking if sscanf is prototyped" >&5 if eval "test \"`echo '$''{'ac_cv_prototype_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -4795,7 +4884,7 @@ else CFLAGS="$CFLAGS -fno-builtin" fi cat > conftest.$ac_ext <<EOF -#line 4799 "configure" +#line 4889 "configure" #include "confdefs.h" #define NO_LIBRARY_PROTOTYPES @@ -4811,7 +4900,7 @@ int main() { ; return 0; } EOF -if { (eval echo configure:4815: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:4905: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* eval "ac_cv_prototype_$ac_safe=no" else @@ -4842,7 +4931,7 @@ fi ac_safe=strcasecmp; echo $ac_n "checking if strcasecmp is prototyped""... $ac_c" 1>&6 -echo "configure:4846: checking if strcasecmp is prototyped" >&5 +echo "configure:4936: checking if strcasecmp is prototyped" >&5 if eval "test \"`echo '$''{'ac_cv_prototype_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -4852,7 +4941,7 @@ else CFLAGS="$CFLAGS -fno-builtin" fi cat > conftest.$ac_ext <<EOF -#line 4856 "configure" +#line 4946 "configure" #include "confdefs.h" #define NO_LIBRARY_PROTOTYPES @@ -4868,7 +4957,7 @@ int main() { ; return 0; } EOF -if { (eval echo configure:4872: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:4962: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* eval "ac_cv_prototype_$ac_safe=no" else @@ -4899,7 +4988,7 @@ fi ac_safe=strdup; echo $ac_n "checking if strdup is prototyped""... $ac_c" 1>&6 -echo "configure:4903: checking if strdup is prototyped" >&5 +echo "configure:4993: checking if strdup is prototyped" >&5 if eval "test \"`echo '$''{'ac_cv_prototype_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -4909,7 +4998,7 @@ else CFLAGS="$CFLAGS -fno-builtin" fi cat > conftest.$ac_ext <<EOF -#line 4913 "configure" +#line 5003 "configure" #include "confdefs.h" #define NO_LIBRARY_PROTOTYPES @@ -4925,7 +5014,7 @@ int main() { ; return 0; } EOF -if { (eval echo configure:4929: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:5019: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* eval "ac_cv_prototype_$ac_safe=no" else @@ -4956,7 +5045,7 @@ fi ac_safe=strerror; echo $ac_n "checking if strerror is prototyped""... $ac_c" 1>&6 -echo "configure:4960: checking if strerror is prototyped" >&5 +echo "configure:5050: checking if strerror is prototyped" >&5 if eval "test \"`echo '$''{'ac_cv_prototype_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -4966,7 +5055,7 @@ else CFLAGS="$CFLAGS -fno-builtin" fi cat > conftest.$ac_ext <<EOF -#line 4970 "configure" +#line 5060 "configure" #include "confdefs.h" #define NO_LIBRARY_PROTOTYPES @@ -4982,7 +5071,7 @@ int main() { ; return 0; } EOF -if { (eval echo configure:4986: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:5076: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* eval "ac_cv_prototype_$ac_safe=no" else @@ -5013,7 +5102,7 @@ fi ac_safe=stricmp; echo $ac_n "checking if stricmp is prototyped""... $ac_c" 1>&6 -echo "configure:5017: checking if stricmp is prototyped" >&5 +echo "configure:5107: checking if stricmp is prototyped" >&5 if eval "test \"`echo '$''{'ac_cv_prototype_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -5023,7 +5112,7 @@ else CFLAGS="$CFLAGS -fno-builtin" fi cat > conftest.$ac_ext <<EOF -#line 5027 "configure" +#line 5117 "configure" #include "confdefs.h" #define NO_LIBRARY_PROTOTYPES @@ -5039,7 +5128,7 @@ int main() { ; return 0; } EOF -if { (eval echo configure:5043: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:5133: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* eval "ac_cv_prototype_$ac_safe=no" else @@ -5070,7 +5159,7 @@ fi ac_safe=strlcpy; echo $ac_n "checking if strlcpy is prototyped""... $ac_c" 1>&6 -echo "configure:5074: checking if strlcpy is prototyped" >&5 +echo "configure:5164: checking if strlcpy is prototyped" >&5 if eval "test \"`echo '$''{'ac_cv_prototype_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -5080,7 +5169,7 @@ else CFLAGS="$CFLAGS -fno-builtin" fi cat > conftest.$ac_ext <<EOF -#line 5084 "configure" +#line 5174 "configure" #include "confdefs.h" #define NO_LIBRARY_PROTOTYPES @@ -5096,7 +5185,7 @@ int main() { ; return 0; } EOF -if { (eval echo configure:5100: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:5190: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* eval "ac_cv_prototype_$ac_safe=no" else @@ -5127,7 +5216,7 @@ fi ac_safe=strncasecmp; echo $ac_n "checking if strncasecmp is prototyped""... $ac_c" 1>&6 -echo "configure:5131: checking if strncasecmp is prototyped" >&5 +echo "configure:5221: checking if strncasecmp is prototyped" >&5 if eval "test \"`echo '$''{'ac_cv_prototype_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -5137,7 +5226,7 @@ else CFLAGS="$CFLAGS -fno-builtin" fi cat > conftest.$ac_ext <<EOF -#line 5141 "configure" +#line 5231 "configure" #include "confdefs.h" #define NO_LIBRARY_PROTOTYPES @@ -5153,7 +5242,7 @@ int main() { ; return 0; } EOF -if { (eval echo configure:5157: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:5247: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* eval "ac_cv_prototype_$ac_safe=no" else @@ -5184,7 +5273,7 @@ fi ac_safe=strnicmp; echo $ac_n "checking if strnicmp is prototyped""... $ac_c" 1>&6 -echo "configure:5188: checking if strnicmp is prototyped" >&5 +echo "configure:5278: checking if strnicmp is prototyped" >&5 if eval "test \"`echo '$''{'ac_cv_prototype_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -5194,7 +5283,7 @@ else CFLAGS="$CFLAGS -fno-builtin" fi cat > conftest.$ac_ext <<EOF -#line 5198 "configure" +#line 5288 "configure" #include "confdefs.h" #define NO_LIBRARY_PROTOTYPES @@ -5210,7 +5299,7 @@ int main() { ; return 0; } EOF -if { (eval echo configure:5214: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:5304: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* eval "ac_cv_prototype_$ac_safe=no" else @@ -5241,7 +5330,7 @@ fi ac_safe=system; echo $ac_n "checking if system is prototyped""... $ac_c" 1>&6 -echo "configure:5245: checking if system is prototyped" >&5 +echo "configure:5335: checking if system is prototyped" >&5 if eval "test \"`echo '$''{'ac_cv_prototype_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -5251,7 +5340,7 @@ else CFLAGS="$CFLAGS -fno-builtin" fi cat > conftest.$ac_ext <<EOF -#line 5255 "configure" +#line 5345 "configure" #include "confdefs.h" #define NO_LIBRARY_PROTOTYPES @@ -5267,7 +5356,7 @@ int main() { ; return 0; } EOF -if { (eval echo configure:5271: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:5361: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* eval "ac_cv_prototype_$ac_safe=no" else @@ -5298,7 +5387,7 @@ fi ac_safe=time; echo $ac_n "checking if time is prototyped""... $ac_c" 1>&6 -echo "configure:5302: checking if time is prototyped" >&5 +echo "configure:5392: checking if time is prototyped" >&5 if eval "test \"`echo '$''{'ac_cv_prototype_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -5308,7 +5397,7 @@ else CFLAGS="$CFLAGS -fno-builtin" fi cat > conftest.$ac_ext <<EOF -#line 5312 "configure" +#line 5402 "configure" #include "confdefs.h" #define NO_LIBRARY_PROTOTYPES @@ -5324,7 +5413,7 @@ int main() { ; return 0; } EOF -if { (eval echo configure:5328: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:5418: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* eval "ac_cv_prototype_$ac_safe=no" else @@ -5355,7 +5444,7 @@ fi ac_safe=unlink; echo $ac_n "checking if unlink is prototyped""... $ac_c" 1>&6 -echo "configure:5359: checking if unlink is prototyped" >&5 +echo "configure:5449: checking if unlink is prototyped" >&5 if eval "test \"`echo '$''{'ac_cv_prototype_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -5365,7 +5454,7 @@ else CFLAGS="$CFLAGS -fno-builtin" fi cat > conftest.$ac_ext <<EOF -#line 5369 "configure" +#line 5459 "configure" #include "confdefs.h" #define NO_LIBRARY_PROTOTYPES @@ -5381,7 +5470,7 @@ int main() { ; return 0; } EOF -if { (eval echo configure:5385: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:5475: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* eval "ac_cv_prototype_$ac_safe=no" else @@ -5412,7 +5501,7 @@ fi ac_safe=vsnprintf; echo $ac_n "checking if vsnprintf is prototyped""... $ac_c" 1>&6 -echo "configure:5416: checking if vsnprintf is prototyped" >&5 +echo "configure:5506: checking if vsnprintf is prototyped" >&5 if eval "test \"`echo '$''{'ac_cv_prototype_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -5422,7 +5511,7 @@ else CFLAGS="$CFLAGS -fno-builtin" fi cat > conftest.$ac_ext <<EOF -#line 5426 "configure" +#line 5516 "configure" #include "confdefs.h" #define NO_LIBRARY_PROTOTYPES @@ -5438,7 +5527,7 @@ int main() { ; return 0; } EOF -if { (eval echo configure:5442: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:5532: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* eval "ac_cv_prototype_$ac_safe=no" else @@ -5469,7 +5558,7 @@ fi ac_safe=write; echo $ac_n "checking if write is prototyped""... $ac_c" 1>&6 -echo "configure:5473: checking if write is prototyped" >&5 +echo "configure:5563: checking if write is prototyped" >&5 if eval "test \"`echo '$''{'ac_cv_prototype_$ac_safe'+set}'`\" = set"; then echo $ac_n "(cached) $ac_c" 1>&6 else @@ -5479,7 +5568,7 @@ else CFLAGS="$CFLAGS -fno-builtin" fi cat > conftest.$ac_ext <<EOF -#line 5483 "configure" +#line 5573 "configure" #include "confdefs.h" #define NO_LIBRARY_PROTOTYPES @@ -5495,7 +5584,7 @@ int main() { ; return 0; } EOF -if { (eval echo configure:5499: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then +if { (eval echo configure:5589: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then rm -rf conftest* eval "ac_cv_prototype_$ac_safe=no" else @@ -5658,6 +5747,7 @@ s%@mandir@%$mandir%g s%@MYFLAGS@%$MYFLAGS%g s%@NETLIB@%$NETLIB%g s%@CRYPTLIB@%$CRYPTLIB%g +s%@ZLIB@%$ZLIB%g s%@MORE@%$MORE%g s%@CC@%$CC%g s%@CPP@%$CPP%g diff -BbuprN -x '*.o' suntzu/lib/etc/config yoda/lib/etc/config --- suntzu/lib/etc/config 2004-08-21 20:27:15.000000000 -0500 +++ yoda/lib/etc/config 2004-09-25 16:05:42.000000000 -0500 @@ -73,6 +73,15 @@ disp_closed_doors = 1 * Should players be able to reroll stats at creation? reroll_stats = 0 +* Should compression be used if the client supports it? +compression = 1 + +* Should spoken languages be used? +enable_languages = 1 + +* Should all items be treated as unique? +all_items_unique = 1 + * Text sent to players when OK is all that is needed. ok = Okay. diff -BbuprN -x '*.o' suntzu/src/act.comm.c yoda/src/act.comm.c --- suntzu/src/act.comm.c 2004-07-25 14:51:04.000000000 -0500 +++ yoda/src/act.comm.c 2004-09-11 18:58:28.000000000 -0500 @@ -28,6 +28,8 @@ void perform_tell(struct char_data *ch, struct char_data *vict, char *arg); int is_tell_ok(struct char_data *ch, struct char_data *vict); ACMD(do_say); +ACMD(do_say_languages); +ACMD(do_say_original); ACMD(do_gsay); ACMD(do_tell); ACMD(do_reply); @@ -53,7 +55,7 @@ void list_languages(struct char_data *ch send_to_char(ch, "Languages:\r\n["); for (i = MIN_LANGUAGES ; i < MAX_LANGUAGES ; i++) - if (GET_SKILL(ch, i) > 60) + if (GET_SKILL(ch, i) > 59) send_to_char(ch, "%s %s%s%s", a++ != 0 ? "," : "", SPEAKING(ch) == i ? "@r": "@n", @@ -66,6 +68,7 @@ ACMD(do_languages) int i, found = FALSE; char arg[MAX_STRING_LENGTH]; + if (CONFIG_ENABLE_LANGUAGES) { one_argument(argument, arg); if (!*arg) list_languages(ch); @@ -83,6 +86,12 @@ ACMD(do_languages) return; } } + } else { + send_to_char(ch, "But everyone already understands everyone else!\r\n"); + return; + } + + // Strictly speaking, I'm not sure these need to be here. --Ziz /* trigger check */ speech_mtrigger(ch, argument); speech_wtrigger(ch, argument); @@ -117,6 +126,14 @@ void garble_text(char *string, int perce ACMD(do_say) { + if (CONFIG_ENABLE_LANGUAGES) + do_say_languages(ch, argument, 0, 0); + else + do_say_original(ch, argument, 0, 0); +} + +ACMD(do_say_languages) +{ skip_spaces(&argument); if(!*argument) { @@ -165,6 +182,29 @@ ACMD(do_say) } } +ACMD(do_say_original) +{ + skip_spaces(&argument); + + if (!*argument) + send_to_char(ch, "Yes, but WHAT do you want to say?\r\n"); + else { + char buf[MAX_INPUT_LENGTH + 12]; + + snprintf(buf, sizeof(buf), "$n says, '%s'", argument); + act(buf, FALSE, ch, 0, 0, TO_ROOM); + + if (!IS_NPC(ch) && PRF_FLAGGED(ch, PRF_NOREPEAT)) + send_to_char(ch, "%s", CONFIG_OK); + else { + delete_doubledollar(argument); + send_to_char(ch, "You say, '%s'\r\n", argument); + } + /* trigger check */ + speech_mtrigger(ch, argument); + speech_wtrigger(ch, argument); + } +} ACMD(do_gsay) { diff -BbuprN -x '*.o' suntzu/src/act.informative.c yoda/src/act.informative.c --- suntzu/src/act.informative.c 2004-08-26 21:27:36.000000000 -0500 +++ yoda/src/act.informative.c 2004-09-29 20:48:12.000000000 -0500 @@ -246,14 +246,14 @@ void list_obj_to_char(struct obj_data *l for (j = list; j != i; j = j->next_content) if (str_cmp(j->short_description, i->short_description) == 0) break; - else if ((j->item_number == i->item_number) && (j->item_number != -1)) + else if ((j->item_number == i->item_number) && (j->item_number != NOTHING)) break; if (j!=i) continue; for (j = i; j; j = j->next_content) if (str_cmp(j->short_description, i->short_description) == 0) num++; - else if ((j->item_number == i->item_number) && (j->item_number != -1)) + else if ((j->item_number == i->item_number) && (j->item_number != NOTHING)) num++; } if (CAN_SEE_OBJ(ch, i) || (GET_OBJ_TYPE(i) == ITEM_LIGHT)) { @@ -668,13 +668,15 @@ void look_at_room(room_rnum target_room, send_to_char(ch, "%s", CCCYN(ch, C_NRM)); if (!IS_NPC(ch) && PRF_FLAGGED(ch, PRF_ROOMFLAGS)) { char buf[MAX_STRING_LENGTH]; + char buf2[MAX_STRING_LENGTH]; sprintbitarray(ROOM_FLAGS(target_room), room_bits, RF_ARRAY_MAX, buf); + sprinttype(rm->sector_type, sector_types, buf2, sizeof(buf2)); send_to_char(ch, "[%5d] ", GET_ROOM_VNUM(IN_ROOM(ch))); - send_to_char(ch, "%s%s [ %s]", + send_to_char(ch, "%s%s [ %s] [ %s ]", SCRIPT(rm) ? "[TRIG] " : "", - world[IN_ROOM(ch)].name, buf); + world[IN_ROOM(ch)].name, buf, buf2); } else send_to_char(ch, "%s", world[target_room].name); @@ -723,12 +725,11 @@ void look_in_obj(struct char_data *ch, c if (!*arg) send_to_char(ch, "Look in what?\r\n"); - else if (find_exdesc(arg, world[IN_ROOM(ch)].ex_description) != NULL) - send_to_char(ch, "There's nothing inside that!\r\n"); - else if (!(bits = generic_find(arg, FIND_OBJ_INV | FIND_OBJ_ROOM | - FIND_OBJ_EQUIP, ch, &dummy, &obj))) { + else if (!(bits = generic_find(arg, FIND_OBJ_INV | FIND_OBJ_ROOM | FIND_OBJ_EQUIP, ch, &dummy, &obj))) { send_to_char(ch, "There doesn't seem to be %s %s here.\r\n", AN(arg), arg); - } else if ((GET_OBJ_TYPE(obj) == ITEM_PORTAL) && !OBJVAL_FLAGGED(obj, CONT_CLOSEABLE)) { + } else if (find_exdesc(arg, obj->ex_description) != NULL) + send_to_char(ch, "There's nothing inside that!\r\n"); + else if ((GET_OBJ_TYPE(obj) == ITEM_PORTAL) && !OBJVAL_FLAGGED(obj, CONT_CLOSEABLE)) { if (GET_OBJ_VAL(obj, 3) < 0) { /* You can look through the portal to the destination */ /* where does this lead to? */ @@ -738,11 +739,11 @@ void look_in_obj(struct char_data *ch, c } else if (IS_DARK(portal_dest) && !CAN_SEE_IN_DARK(ch)) { send_to_char(ch, "You see nothing but infinite darkness...\r\n"); } else { - send_to_char(ch, "After seconds of concentration you see the image of %s.\r\n", - world[portal_dest].name); + send_to_char(ch, "After seconds of concentration you see the image of %s.\r\n", world[portal_dest].name); } } else if (GET_OBJ_VAL(obj, 3) < MAX_PORTAL_TYPES) { - /* display the appropriate description from the list of descriptions */ + /* display the appropriate description from the list of descriptions +*/ send_to_char(ch, "%s\r\n", portal_appearance[GET_OBJ_VAL(obj, 3)]); } else { /* We shouldn't really get here, so give a default message */ @@ -797,11 +798,13 @@ void look_in_obj(struct char_data *ch, c if (GET_OBJ_VAL(obj, 1) <= 0) send_to_char(ch, "It is empty.\r\n"); else { - if (GET_OBJ_VAL(obj, 0) < 0) { + if (GET_OBJ_VAL(obj, 0) < 0) + { char buf2[MAX_STRING_LENGTH]; sprinttype(GET_OBJ_VAL(obj, 2), color_liquid, buf2, sizeof(buf2)); send_to_char(ch, "It's full of a %s liquid.\r\n", buf2); - } else if (GET_OBJ_VAL(obj,1)>GET_OBJ_VAL(obj,0)) { + } + else if (GET_OBJ_VAL(obj,1)>GET_OBJ_VAL(obj,0)) { send_to_char(ch, "Its contents seem somewhat murky.\r\n"); /* BUG */ } else { char buf2[MAX_STRING_LENGTH]; @@ -1616,7 +1618,7 @@ ACMD(do_who) /* BIG OL' FIXME: Rewrite it all. Similar to do_who(). */ ACMD(do_users) { - char line[200], line2[220], idletime[10], classname[20]; + char line[200], line2[220], idletime[10]; char state[30], *timeptr, mode; char name_search[MAX_INPUT_LENGTH], host_search[MAX_INPUT_LENGTH]; struct char_data *tch; @@ -1673,8 +1675,8 @@ ACMD(do_users) } } /* end while (parser) */ send_to_char(ch, - "Num Class Name State Idl Login@ Site\r\n" - "--- ----------- ------------ -------------- --- -------- -----------------------\r\n"); + "Num Name State Idl Login C Site\r\n" + "--- ------------ -------------- --- -------- - -----------------------\r\n"); one_argument(argument, arg); @@ -1704,15 +1706,7 @@ ACMD(do_users) continue; if (GET_INVIS_LEV(ch) > GET_LEVEL(ch)) continue; - - if (d->original) - sprintf(classname, "[%2d %s %s]", GET_LEVEL(d->original), - CLASS_ABBR(d->original), RACE_ABBR(d->original)); - else - sprintf(classname, "[%2d %s %s]", GET_LEVEL(d->character), - CLASS_ABBR(d->character), RACE_ABBR(d->character)); - } else - strcpy(classname, " - "); + } timeptr = asctime(localtime(&d->login_time)); timeptr += 11; @@ -1729,11 +1723,11 @@ ACMD(do_users) else strcpy(idletime, ""); - sprintf(line, "%3d %-7s %-12s %-14s %-3s %-8s ", d->desc_num, classname, + sprintf(line, "%3d %-12s %-14s %-3s %-8s %1s ", d->desc_num, d->original && d->original->player.name ? d->original->player.name : d->character && d->character->player.name ? d->character->player.name : - "UNDEFINED", - state, idletime, timeptr); + "UNDEFINED", state, idletime, timeptr, + d->comp->state ? d->comp->state == 1 ? "?" : "Y" : "N"); if (d->host && *d->host) sprintf(line + strlen(line), "[%s]\r\n", d->host); @@ -2150,7 +2144,9 @@ ACMD(do_toggle) " Auto Split: %-3s " " Auto Sac: %-3s " - " View Order: %-3s ", + " View Order: %-3s\r\n" + + " Auto Assist: %-3s\r\n", ONOFF(PRF_FLAGGED(ch, PRF_DISPHP)), ONOFF(PRF_FLAGGED(ch, PRF_BRIEF)), @@ -2178,7 +2174,13 @@ ACMD(do_toggle) ONOFF(PRF_FLAGGED(ch, PRF_AUTOSPLIT)), ONOFF(PRF_FLAGGED(ch, PRF_AUTOSAC)), - ONOFF(PRF_FLAGGED(ch, PRF_VIEWORDER))); + ONOFF(PRF_FLAGGED(ch, PRF_VIEWORDER)), + + ONOFF(PRF_FLAGGED(ch, PRF_AUTOASSIST))); + + if (CONFIG_ENABLE_COMPRESSION) { + send_to_char(ch, " Compression: %-3s\r\n", ONOFF(!PRF_FLAGGED(ch, PRF_NOCOMPRESS))); + } } diff -BbuprN -x '*.o' suntzu/src/act.item.c yoda/src/act.item.c --- suntzu/src/act.item.c 2004-07-25 14:51:04.000000000 -0500 +++ yoda/src/act.item.c 2004-09-06 19:17:12.000000000 -0500 @@ -90,6 +90,7 @@ ACMD(do_assemble) send_to_char(ch, "You can't %s %s %s.\r\n", CMD_NAME, AN(argument), argument); return; } + add_unique_id(pObject); /* Now give the object to the character. */ obj_to_char(pObject, ch); @@ -280,9 +281,9 @@ void perform_get_from_container(struct c obj_to_char(obj, ch); act("You get $p from $P.", FALSE, ch, obj, cont, TO_CHAR); act("$n gets $p from $P.", TRUE, ch, obj, cont, TO_ROOM); - get_check_money(ch, obj); if (IS_NPC(ch)) { item_check(obj, ch); + get_check_money(ch, obj); } } } @@ -347,10 +348,10 @@ int perform_get_from_room(struct char_da obj_to_char(obj, ch); act("You get $p.", FALSE, ch, obj, 0, TO_CHAR); act("$n gets $p.", TRUE, ch, obj, 0, TO_ROOM); - get_check_money(ch, obj); if (IS_NPC(ch)) item_check(obj, ch); return (1); + get_check_money(ch, obj); } return (0); } diff -BbuprN -x '*.o' suntzu/src/act.movement.c yoda/src/act.movement.c --- suntzu/src/act.movement.c 2004-02-24 19:05:21.000000000 -0600 +++ yoda/src/act.movement.c 2004-09-27 22:16:28.000000000 -0500 @@ -29,6 +29,7 @@ void death_cry(struct char_data *ch); int find_eq_pos(struct char_data *ch, struct obj_data *obj, char *arg); int buildwalk(struct char_data *ch, int dir); struct obj_data *find_vehicle_by_vnum(int vnum); +void timed_dt(struct char_data *ch); /* local functions */ int has_boat(struct char_data *ch); @@ -46,6 +47,27 @@ ACMD(do_sleep); ACMD(do_wake); ACMD(do_follow); +void current_update(void) +{ + struct char_data *i, *next_char; + char buf[MAX_STRING_LENGTH]; + int door =0; + + /* characters */ + for (i = character_list; i; i = next_char) { + next_char = i->next; + if ((GET_POS(i) == POS_STANDING) && ROOM_FLAGGED(IN_ROOM(i), ROOM_CURRENT) && + ((door = rand_number(0, 18)) < NUM_OF_DIRS) && CAN_GO(i, door) && + !FIGHTING(i) && !IS_NPC(i) && (SECT(IN_ROOM(i)) == SECT_WATER_NOSWIM)) { + snprintf(buf, sizeof(buf),"The strong current carries you %s!\r\n", dirs[door]); + send_to_char(i, buf); + snprintf(buf, sizeof(buf), "$n is taken %s by the rough current!", dirs[door]); + act(buf, FALSE, i, 0, 0, TO_NOTVICT); + perform_move(i, door, 1); + } + } +} + /* simple function to determine if char can walk on water */ int has_boat(struct char_data *ch) @@ -77,6 +99,21 @@ int has_boat(struct char_data *ch) return (0); } +/* simple function to determine if char can fly */ +int has_flight(struct char_data *ch) +{ + if (GET_LEVEL(ch) > LVL_IMMORT) + return (1); + + if (AFF_FLAGGED(ch, AFF_FLYING) || AFF_FLAGGED(ch, AFF_ANGELIC)) + return (1); + + /* anything worn as wings will do */ + if (GET_EQ(ch, WEAR_WINGS)) + return (1); + + return (0); +} /* do_simple_move assumes @@ -123,6 +160,15 @@ int do_simple_move(struct char_data *ch, } } + /* if this room or the one we're going to needs flight, check for it */ + if ((SECT(IN_ROOM(ch)) == SECT_FLYING) || + (SECT(EXIT(ch, dir)->to_room) == SECT_FLYING)) { + if (!has_flight(ch)) { + send_to_char(ch, "You need wings to go there!\r\n"); + return (0); + } + } + /* move points needed is avg. move loss for src and destination sect type */ need_movement = (movement_loss[SECT(IN_ROOM(ch))] + movement_loss[SECT(EXIT(ch, dir)->to_room)]) / 2; @@ -190,6 +236,9 @@ int do_simple_move(struct char_data *ch, if (ch->desc != NULL) look_at_room(IN_ROOM(ch), ch, 0); + if (ROOM_FLAGGED(IN_ROOM(ch), ROOM_TIMED_DT) && GET_LEVEL(ch) < LVL_IMMORT) + timed_dt(NULL); + if (ROOM_FLAGGED(IN_ROOM(ch), ROOM_DEATH) && GET_LEVEL(ch) < LVL_IMMORT) { log_death_trap(ch); death_cry(ch); diff -BbuprN -x '*.o' suntzu/src/act.other.c yoda/src/act.other.c --- suntzu/src/act.other.c 2004-08-14 11:18:04.000000000 -0500 +++ yoda/src/act.other.c 2004-09-10 19:22:48.000000000 -0500 @@ -924,7 +924,11 @@ ACMD(do_gen_tog) {"Autosac disabled.\r\n", "Autosac enabled.\r\n"}, {"Viewing newest board messages first.\r\n", - "Viewing eldest board messages first. Wierdo.\r\n"} + "Viewing eldest board messages first. Wierdo.\r\n"}, + {"Compression will be used if your client supports it.\r\n", + "Compression will not be used even if your client supports it.\r\n"}, + {"You will no longer Auto-Assist.\r\n", + "You will now Auto-Assist.\r\n"} }; @@ -1025,6 +1029,16 @@ ACMD(do_gen_tog) case SCMD_VIEWORDER: result = PRF_TOG_CHK(ch, PRF_VIEWORDER); break; + case SCMD_NOCOMPRESS: + if (CONFIG_ENABLE_COMPRESSION) { + result = PRF_TOG_CHK(ch, PRF_NOCOMPRESS); + break; + } else { + send_to_char(ch, "Sorry, compression is globally disabled.\r\n"); + } + case SCMD_AUTOASSIST: + result = PRF_TOG_CHK(ch, PRF_AUTOASSIST); + break; default: log("SYSERR: Unknown subcmd %d in do_gen_toggle.", subcmd); return; diff -BbuprN -x '*.o' suntzu/src/act.wizard.c yoda/src/act.wizard.c --- suntzu/src/act.wizard.c 2004-08-21 20:47:34.000000000 -0500 +++ yoda/src/act.wizard.c 2004-09-28 20:31:10.000000000 -0500 @@ -108,6 +108,7 @@ ACMD(do_show); ACMD(do_set); void snoop_check(struct char_data *ch); ACMD(do_saveall); +ACMD(do_wizupdate); ACMD(do_echo) { @@ -620,6 +621,9 @@ void do_stat_object(struct char_data *ch CCGRN(ch, C_NRM), vnum, CCNRM(ch, C_NRM), GET_OBJ_RNUM(j), GET_ID(j), buf, GET_OBJ_SPEC(j) ? "Exists" : "None"); + send_to_char(ch, "Generation time: @g%s@nUnique ID: @g%lld@n\r\n", + ctime(&j->generation), j->unique_id); + send_to_char(ch, "Object Hit Points: [ @g%3d@n/@g%3d@n]\r\n", GET_OBJ_VAL(j, 4), GET_OBJ_VAL(j, 5)); @@ -1294,6 +1298,7 @@ ACMD(do_load) return; } obj = read_object(r_num, REAL); + add_unique_id(obj); if (CONFIG_LOAD_INVENTORY) obj_to_char(obj, ch); else @@ -1475,7 +1480,7 @@ ACMD(do_copyover) struct char_data * och = d->character; d_next = d->next; /* We delete from the list , so need to save this */ if (!d->character || d->connected > CON_PLAYING) { - write_to_descriptor (d->descriptor, "\n\rSorry, we are rebooting. Come back in a few seconds.\n\r"); + write_to_descriptor (d->descriptor, "\n\rSorry, we are rebooting. Come back in a few seconds.\n\r", d->comp); close_socket (d); /* throw'em out */ } else { fprintf (fp, "%d %s %s %d\n", d->descriptor, GET_NAME(och), d->host, GET_ROOM_VNUM(IN_ROOM(och))); @@ -1483,7 +1488,21 @@ ACMD(do_copyover) /* save och */ Crash_rentsave(och, 0); save_char(och); - write_to_descriptor (d->descriptor, buf); +#ifdef HAVE_ZLIB_H + if (d->comp->state == 2) { + d->comp->state = 3; /* Code to use Z_FINISH for deflate */ + } +#endif /* HAVE_ZLIB_H */ + write_to_descriptor (d->descriptor, buf, d->comp); + d->comp->state = 0; +#ifdef HAVE_ZLIB_H + if (d->comp->stream) { + deflateEnd(d->comp->stream); + free(d->comp->stream); + free(d->comp->buff_out); + free(d->comp->buff_in); + } +#endif /* HAVE_ZLIB_H */ } } @@ -2263,11 +2282,12 @@ ACMD(do_show) size_t len, nlen; zone_rnum zrn; zone_vnum zvn; + int low, high; byte self = FALSE; struct char_data *vict = NULL; struct obj_data *obj; struct descriptor_data *d; - char field[MAX_INPUT_LENGTH], value[MAX_INPUT_LENGTH], + char field[MAX_INPUT_LENGTH], value[MAX_INPUT_LENGTH], *strp, arg[MAX_INPUT_LENGTH], buf[MAX_STRING_LENGTH]; extern int top_of_trigt; @@ -2288,6 +2308,7 @@ ACMD(do_show) { "snoop", LVL_GRGOD }, /* 10 */ { "assemblies", LVL_IMMORT }, { "guilds", LVL_GOD }, + { "uniques", LVL_GRGOD }, { "\n", 0 } }; @@ -2503,6 +2526,25 @@ ACMD(do_show) show_guild(ch, value); break; + case 13: + if (value && *value) { + if (sscanf(value, "%d-%d", &low, &high) != 2) { + if (sscanf(value, "%d", &low) != 1) { + send_to_char(ch, "Usage: show uniques, show uniques [vnum], or show uniques [low-high]\r\n"); + return; + } else { + high = low; + } + } + } else { + low = -1; + high = 9999999; + } + strp = sprintuniques(low, high); + page_string(ch->desc, strp, TRUE); + free(strp); + break; + /* show what? */ default: send_to_char(ch, "Sorry, I don't understand that.\r\n"); @@ -3128,3 +3170,9 @@ ACMD(do_peace) GET_POS(ch) = POS_STANDING; } +ACMD(do_wizupdate) +{ + run_autowiz(); + send_to_char(ch, "Wizlists updated.\n\r"); +} + diff -BbuprN -x '*.o' suntzu/src/assedit.c yoda/src/assedit.c --- suntzu/src/assedit.c 2004-01-18 18:20:47.000000000 -0600 +++ yoda/src/assedit.c 2004-09-23 21:54:04.000000000 -0500 @@ -324,8 +324,13 @@ send_to_char(d->character, buf); case ASSEDIT_ADD_COMPONENT: /* add a new component */ if (isdigit(*arg)){ pos = atoi(arg); - if ((real_object(pos)) < 0) /* does the object exist? */ +#if CIRCLE_UNSIGNED_INDEX + if ((real_object(pos)) == NOTHING) /* does the object exist? */ break; +#else + if ((real_object(pos)) <= NOTHING) /* does the object exist? */ + break; +#endif for ( i = 0; i < OLC_ASSEDIT(d)->lNumComponents; i++) { if(OLC_ASSEDIT(d)->pComponents[i].lVnum == pos) diff -BbuprN -x '*.o' suntzu/src/assemblies.c yoda/src/assemblies.c --- suntzu/src/assemblies.c 2004-02-27 18:00:24.000000000 -0600 +++ yoda/src/assemblies.c 2004-09-23 21:54:04.000000000 -0500 @@ -210,7 +210,11 @@ bool assemblyAddComponent( long lVnum, l log( "SYSERR: assemblyAddComponent(): Invalid 'lVnum' #%ld.", lVnum ); return (FALSE); } - else if( real_object( lComponentVnum ) < 0 ) +#if CIRCLE_UNSIGNED_INDEX + else if( real_object( lComponentVnum ) == NOTHING) +#else + else if( real_object( lComponentVnum ) <= NOTHING ) +#endif { log( "SYSERR: assemblyAddComponent(): Invalid 'lComponentVnum' #%ld.", lComponentVnum ); diff -BbuprN -x '*.o' suntzu/src/boards.c yoda/src/boards.c --- suntzu/src/boards.c 2004-08-14 10:42:15.000000000 -0500 +++ yoda/src/boards.c 2004-09-06 18:54:43.000000000 -0500 @@ -68,13 +69,21 @@ void init_boards(void) { int i,j,board_vnum; struct xap_dir xd; struct board_info *tmp_board; + char dir_name[128]; if(!insure_directory(BOARD_DIRECTORY,0)) { log("Unable to open/create directory '%s' - Exiting", BOARD_DIRECTORY); exit(1); } - if((i=xdir_scan(BOARD_DIRECTORY,&xd)) <= 0) { + + #if defined(CIRCLE_WINDOWS) + strcpy(dir_name, "etc/boards/*"); + #else + strcpy(dir_name, "etc/boards"); + #endif + + if((i=xdir_scan(dir_name, &xd)) <= 0) { log("Funny, no board files found.\n"); return; } @@ -160,6 +169,7 @@ int save_board(struct board_info *ts) { WRITE_LVL(ts), REMOVE_LVL(ts), BOARD_MNUM(ts)); for(message=BOARD_MESSAGES(ts);message;message=MESG_NEXT(message)) { + if (message) fprintf(fl,"#%d\n" "%ld\n" "%ld\n" @@ -411,6 +421,7 @@ void clear_one_board(struct board_info * void show_board(int board_vnum, struct char_data *ch) { struct board_info *thisboard; struct board_msg *message; + struct obj_data *obj; char *tmstr; int msgcount=0,yesno=0; char buf[MAX_STRING_LENGTH]; @@ -434,8 +445,12 @@ void show_board(int board_vnum, struct c /* send the standard board boilerplate */ - sprintf(buf,"This is a bulletin board.\r\n" - "Usage:READ/REMOVE <messg #>, RESPOND <messg #>, WRITE <header>.\r\n"); + obj = &(obj_proto[real_object(board_vnum)]); + + sprintf(buf,"%s\r\n" + "Usage:READ/REMOVE <messg #>, RESPOND <messg #>, WRITE <header>.\r\n", + obj->short_description); + if (!BOARD_MNUM(thisboard) || !BOARD_MESSAGES(thisboard)) { strcat(buf, "The board is empty.\r\n"); send_to_char(ch,buf); @@ -633,13 +648,13 @@ void write_board_message(int board_vnum, MESG_POSTER(message)=GET_IDNUM(ch); MESG_TIMESTAMP(message)=time(0); MESG_SUBJECT(message) = strdup(arg); - MESG_NEXT(message)=NULL; + MESG_PREV(message)=NULL; MESG_DATA(message)=NULL; BOARD_MNUM(thisboard) = MAX(BOARD_MNUM(thisboard) + 1,1); MESG_NEXT(message)=BOARD_MESSAGES(thisboard); if(BOARD_MESSAGES(thisboard)) { - + MESG_PREV(BOARD_MESSAGES(thisboard)) = message; } BOARD_MESSAGES(thisboard) = message; send_to_char(ch,"Write your message. (/s saves /h for help)\r\n"); @@ -735,7 +750,7 @@ struct board_info *locate_board(int boar void remove_board_msg(int board_vnum, struct char_data * ch, int arg) { struct board_info *thisboard; - struct board_msg *cur; + struct board_msg *cur, *temp; struct descriptor_data *d; int msgcount; char buf[MAX_STRING_LENGTH+1]; @@ -779,24 +794,7 @@ void remove_board_msg(int board_vnum, st } } /* everything else is peachy, kill the message */ - if(BOARD_MESSAGES(thisboard) == cur) { - if(MESG_NEXT(cur) != NULL) { - BOARD_MESSAGES(thisboard) = MESG_NEXT(cur); - } else { - BOARD_MESSAGES(thisboard) = NULL; - } - } - - /* due to the way these things work, these will never dereference nulls - because the unknown is based on cur */ - - if(MESG_PREV(cur)) { - MESG_NEXT(MESG_PREV(cur)) = MESG_NEXT(cur); - } - - if(MESG_NEXT(cur)) { - MESG_PREV(MESG_NEXT(cur)) = MESG_PREV(cur); - } + REMOVE_FROM_LIST(cur, BOARD_MESSAGES(thisboard), next); free(cur); cur = NULL; BOARD_MNUM (thisboard) = BOARD_MNUM (thisboard) - 1; diff -BbuprN -x '*.o' suntzu/src/cedit.c yoda/src/cedit.c --- suntzu/src/cedit.c 2004-05-27 20:38:26.000000000 -0500 +++ yoda/src/cedit.c 2004-09-18 12:22:17.000000000 -0500 @@ -120,6 +120,9 @@ void cedit_setup(struct descriptor_data OLC_CONFIG(d)->play.mob_fighting = CONFIG_MOB_FIGHTING; OLC_CONFIG(d)->play.disp_closed_doors = CONFIG_DISP_CLOSED_DOORS; OLC_CONFIG(d)->play.reroll_player = CONFIG_REROLL_PLAYER_CREATION; + OLC_CONFIG(d)->play.enable_compression = CONFIG_ENABLE_COMPRESSION; + OLC_CONFIG(d)->play.enable_languages = CONFIG_ENABLE_LANGUAGES; + OLC_CONFIG(d)->play.all_items_unique = CONFIG_ALL_ITEMS_UNIQUE; /****************************************************************************/ /** Crash Saves **/ @@ -231,6 +234,9 @@ void cedit_save_internally(struct descri CONFIG_MOB_FIGHTING = OLC_CONFIG(d)->play.mob_fighting; CONFIG_DISP_CLOSED_DOORS = OLC_CONFIG(d)->play.disp_closed_doors; CONFIG_REROLL_PLAYER_CREATION = OLC_CONFIG(d)->play.reroll_player; + CONFIG_ENABLE_COMPRESSION = OLC_CONFIG(d)->play.enable_compression; + CONFIG_ENABLE_LANGUAGES = OLC_CONFIG(d)->play.enable_languages; + CONFIG_ALL_ITEMS_UNIQUE = OLC_CONFIG(d)->play.all_items_unique; /****************************************************************************/ /** Crash Saves **/ @@ -414,6 +420,12 @@ int save_config( IDXTYPE nowhere ) "disp_closed_doors = %d\n\n", CONFIG_DISP_CLOSED_DOORS); fprintf(fl, "* Should players be able to reroll stats at creation?\n" "reroll_stats = %d\n\n", CONFIG_REROLL_PLAYER_CREATION); + fprintf(fl, "* Should compression be used if the client supports it?\n" + "compression = %d\n\n", CONFIG_ENABLE_COMPRESSION); + fprintf(fl, "* Should spoken languages be used?\n" + "enable_languages = %d\n\n", CONFIG_ENABLE_LANGUAGES); + fprintf(fl, "* Should all items be treated as unique?\n" + "all_items_unique = %d\n\n", CONFIG_ALL_ITEMS_UNIQUE); strcpy(buf, CONFIG_OK); @@ -652,6 +664,7 @@ void cedit_disp_game_play_options(struct "%sO%s) Track Through Doors : %s%s\r\n" "%sP%s) Display Closed Doors : %s%s\r\n" "%sR%s) Mortals Level To Immortal : %s%s\r\n" + "%sS%s) Treat all Objects as Unique : %s%s\r\n" "%s1%s) Stack Mobiles in room descs : %s%s\r\n" "%s2%s) Stack Objects in room descs : %s%s\r\n" "%s3%s) Allow mobs to fight mobs : %s%s\r\n" @@ -659,6 +672,8 @@ void cedit_disp_game_play_options(struct "%s5%s) NOPERSON Message Text : %s%s" "%s6%s) NOEFFECT Message Text : %s%s" "%s7%s) Players can reroll stats on creation : %s%s\r\n" + "%s8%s) Allow MCCP2 stream compression (recommended): %s%s\r\n" + "%s9%s) Allow spoken languages : %s%s\r\n" "%sQ%s) Exit To The Main Menu\r\n" "Enter your choice : ", grn, nrm, cyn, CHECK_VAR(OLC_CONFIG(d)->play.pk_allowed), @@ -679,6 +694,7 @@ void cedit_disp_game_play_options(struct grn, nrm, cyn, CHECK_VAR(OLC_CONFIG(d)->play.track_through_doors), grn, nrm, cyn, CHECK_VAR(OLC_CONFIG(d)->play.disp_closed_doors), grn, nrm, cyn, CHECK_VAR(OLC_CONFIG(d)->play.immort_level_ok), + grn, nrm, cyn, CHECK_VAR(OLC_CONFIG(d)->play.all_items_unique), grn, nrm, cyn, CHECK_VAR(OLC_CONFIG(d)->play.stack_mobs), grn, nrm, cyn, CHECK_VAR(OLC_CONFIG(d)->play.stack_objs), grn, nrm, cyn, CHECK_VAR(OLC_CONFIG(d)->play.mob_fighting), @@ -686,6 +702,8 @@ void cedit_disp_game_play_options(struct grn, nrm, cyn, OLC_CONFIG(d)->play.NOPERSON, grn, nrm, cyn, OLC_CONFIG(d)->play.NOEFFECT, grn, nrm, cyn, CHECK_VAR(OLC_CONFIG(d)->play.reroll_player), + grn, nrm, cyn, CHECK_VAR(OLC_CONFIG(d)->play.enable_compression), + grn, nrm, cyn, CHECK_VAR(OLC_CONFIG(d)->play.enable_languages), grn, nrm ); @@ -1000,6 +1018,11 @@ void cedit_parse(struct descriptor_data TOGGLE_VAR(OLC_CONFIG(d)->play.immort_level_ok); break; + case 's': + case 'S': + TOGGLE_VAR(OLC_CONFIG(d)->play.all_items_unique); + break; + case '1': TOGGLE_VAR(OLC_CONFIG(d)->play.stack_mobs); break; @@ -1031,6 +1054,14 @@ void cedit_parse(struct descriptor_data TOGGLE_VAR(OLC_CONFIG(d)->play.reroll_player); break; + case '8': + TOGGLE_VAR(OLC_CONFIG(d)->play.enable_compression); + break; + + case '9': + TOGGLE_VAR(OLC_CONFIG(d)->play.enable_languages); + break; + case 'q': case 'Q': cedit_disp_menu(d); diff -BbuprN -x '*.o' suntzu/src/comm.c yoda/src/comm.c --- suntzu/src/comm.c 2004-08-21 20:32:18.000000000 -0500 +++ yoda/src/comm.c 2004-09-27 22:08:44.000000000 -0500 @@ -75,6 +75,10 @@ #define INVALID_SOCKET (-1) #endif +/* mccp defines */ +#define COMPRESS2 86 + + /* externs */ extern struct ban_list_element *ban_list; extern int num_invalid; @@ -123,8 +127,8 @@ RETSIGTYPE unrestrict_game(int sig); RETSIGTYPE reap(int sig); RETSIGTYPE checkpointing(int sig); RETSIGTYPE hupsig(int sig); -ssize_t perform_socket_read(socket_t desc, char *read_point,size_t space_left); -ssize_t perform_socket_write(socket_t desc, const char *txt,size_t length); +ssize_t perform_socket_read(socket_t desc, char *read_point, size_t space_left); +ssize_t perform_socket_write(socket_t desc, const char *txt, size_t length, struct compr *comp); void echo_off(struct descriptor_data *d); void echo_on(struct descriptor_data *d); void circle_sleep(struct timeval *timeout); @@ -176,6 +180,21 @@ void Free_Invalid_List(void); void free_command_list(void); void load_config(void); void affect_update_violence(void); /* In magic.c */ +void timed_dt(struct char_data *ch); + + +#ifdef HAVE_ZLIB_H +/* zlib helper functions */ +void *z_alloc(void *opaque, uInt items, uInt size) +{ + return calloc(items, size); +} + +void z_free(void *opaque, void *address) +{ + return free(address); +} +#endif /* HAVE_ZLIB_H */ #ifdef __CXREF__ #undef FD_ZERO @@ -411,6 +430,16 @@ int main(int argc, char **argv) int enter_player_game(struct descriptor_data *d); +/* first compression neg. string */ +const char compress_offer[] = +{ + (char) IAC, + (char) WILL, + (char) COMPRESS2, + (char) 0, +}; + + /* Reload players after a copyover */ void copyover_recover() { @@ -439,7 +468,7 @@ void copyover_recover() break; /* Write something, and check if it goes error-free */ - if (write_to_descriptor (desc, "\n\rFolding initiated...\n\r") < 0) { + if (write_to_descriptor (desc, "\n\rFolding initiated...\n\r", NULL) < 0) { close (desc); /* nope */ continue; } @@ -476,10 +505,16 @@ void copyover_recover() fOld = FALSE; if (!fOld) /* Player file not found?! */ { - write_to_descriptor (desc, "\n\rSomehow, your character was lost during the folding. Sorry.\n\r"); + write_to_descriptor (desc, "\n\rSomehow, your character was lost during the folding. Sorry.\n\r", NULL); close_socket (d); } else { - write_to_descriptor (desc, "\n\rFolding complete.\n\r"); + write_to_descriptor (desc, "\n\rFolding complete.\n\r", NULL); +#ifdef HAVE_ZLIB_H + if (CONFIG_ENABLE_COMPRESSION && !PRF_FLAGGED(d->character, PRF_NOCOMPRESS)) { + d->comp->state = 1; /* indicates waiting for comp negotiation */ + write_to_output(d, "%s", compress_offer); + } +#endif /* HAVE_ZLIB_H */ if (!PLR_FLAGGED(d->character, PLR_LOADROOM)) GET_LOADROOM(d->character) = saved_loadroom; enter_player_game(d); @@ -929,7 +964,7 @@ void game_loop(socket_t mother_desc) /* Print prompts for other descriptors who had no other output */ for (d = descriptor_list; d; d = d->next) { if (!d->has_prompt) { - write_to_descriptor(d->descriptor, make_prompt(d)); + write_to_descriptor(d->descriptor, make_prompt(d), d->comp); d->has_prompt = TRUE; } } @@ -1029,6 +1064,12 @@ void heartbeat(int heart_pulse) if (!(heart_pulse % PULSE_TIMESAVE)) save_mud_time(&time_info); + if (!(heart_pulse % PULSE_CURRENT)) + current_update(); + + if (!(heart_pulse % (30 * PASSES_PER_SEC))) + timed_dt(NULL); + /* Every pulse! Don't want them to stink the place up... */ extract_pending_chars(); } @@ -1579,11 +1620,32 @@ void init_descriptor (struct descriptor_ *newd->output = '\0'; newd->bufptr = 0; newd->has_prompt = 1; /* prompt is part of greetings */ - STATE(newd) = CON_QANSI; + STATE(newd) = CON_GET_NAME; CREATE(newd->history, char *, HISTORY_SIZE); if (++last_desc == 1000) last_desc = 1; newd->desc_num = last_desc; + + CREATE(newd->comp, struct compr, 1); + newd->comp->state = 0; /* we start in normal mode */ +#ifdef HAVE_ZLIB_H + newd->comp->stream = NULL; +#endif /* HAVE_ZLIB_H */ +} + +void set_color(struct descriptor_data *d) +{ + if (d->character == NULL) { + CREATE(d->character, struct char_data, 1); + clear_char(d->character); + CREATE(d->character->player_specials, struct player_special_data, 1); + d->character->desc = d; + } + SET_BIT_AR(PRF_FLAGS(d->character), PRF_COLOR_1); + SET_BIT_AR(PRF_FLAGS(d->character), PRF_COLOR_2); + write_to_output(d, GREETANSI); + write_to_output(d, "\r\n\r\n@CBy what name do you wish to be known? @n"); + return; } int new_descriptor(socket_t s) @@ -1595,7 +1657,6 @@ int new_descriptor(socket_t s) struct descriptor_data *newd; struct sockaddr_in peer; struct hostent *from; - extern char *ANSIQUESTION; /* accept the new connection */ i = sizeof(peer); @@ -1617,7 +1678,7 @@ int new_descriptor(socket_t s) sockets_connected++; if (sockets_connected >= CONFIG_MAX_PLAYING) { - write_to_descriptor(desc, "Sorry, CircleMUD is full right now... please try again later!\r\n"); + write_to_descriptor(desc, "Sorry, CircleMUD is full right now... please try again later!\r\n", NULL); CLOSE_SOCKET(desc); return (0); } @@ -1675,7 +1736,7 @@ int new_descriptor(socket_t s) newd->next = descriptor_list; descriptor_list = newd; - write_to_output(newd, "%s", ANSIQUESTION); + set_color(newd); return (0); } @@ -1719,11 +1780,11 @@ int process_output(struct descriptor_dat */ if (t->has_prompt) { t->has_prompt = FALSE; - result = write_to_descriptor(t->descriptor, i); + result = write_to_descriptor(t->descriptor, i, t->comp); if (result >= 2) result -= 2; } else - result = write_to_descriptor(t->descriptor, osb); + result = write_to_descriptor(t->descriptor, osb, t->comp); if (result < 0) { /* Oops, fatal error. Bye! */ close_socket(t); @@ -1795,7 +1856,7 @@ int process_output(struct descriptor_dat #if defined(CIRCLE_WINDOWS) -ssize_t perform_socket_write(socket_t desc, const char *txt, size_t length) +ssize_t perform_socket_write(socket_t desc, const char *txt, size_t length, struct compr *comp) { ssize_t result; @@ -1829,10 +1890,81 @@ ssize_t perform_socket_write(socket_t de #endif /* perform_socket_write for all Non-Windows platforms */ -ssize_t perform_socket_write(socket_t desc, const char *txt, size_t length) +ssize_t perform_socket_write(socket_t desc, const char *txt, size_t length, struct compr *comp) { - ssize_t result; + ssize_t result = 0; + +#ifdef HAVE_ZLIB_H + int compr_result, tmp, cnt, bytes_copied; + + /* MCCP! this is where the zlib compression is handled */ + if (comp && comp->state >= 2) { /* compress2 on */ + /* copy data to input buffer */ + /* first check that overflow won't happen */ + /* if it will, we only copy over so much text */ + if (comp->size_in + length > comp->total_in) + bytes_copied = comp->total_in - comp->size_in; + else + bytes_copied = length; + + /* now copy what will fit into the buffer */ + strncpy(comp->buff_in + comp->size_in, txt, bytes_copied); + comp->size_in += bytes_copied; + + /* set up stream input */ + comp->stream->avail_in = comp->size_in; + comp->stream->next_in = comp->buff_in; + + /* lets do it */ + /* deflate all the input - this means flushing our output buffer when it fills */ + do { + /* set up stream output - the size_out bit is somewhat unnecessary, but makes things safer */ + comp->stream->avail_out = comp->total_out - comp->size_out; + comp->stream->next_out = comp->buff_out + comp->size_out; + + compr_result = deflate(comp->stream, comp->state == 3 ? Z_FINISH : Z_SYNC_FLUSH); + + if (compr_result == Z_STREAM_END) + compr_result = 0; + else if (compr_result == Z_OK && !(comp->stream->avail_out)) + compr_result = 1; + else if (compr_result < 0) { /* uh oh, fatal zlib error */ + result = 0; + break; + } else + compr_result = 0; + + /* adjust output state value */ + comp->size_out = comp->total_out - comp->stream->avail_out; + + /* write out compressed data - flush buff_out */ + /* if problems encountered, resort to resending all data by breaking and returning < 1.. */ + tmp = 0; + while (comp->size_out > 0) { + result = write(desc, comp->buff_out + tmp, comp->size_out); + if (result < 1) /* unsuccessful write or socket error */ + goto exitzlibdo; /* yummy, goto. faster than two breaks ! */ + comp->size_out -= result; + tmp += result; + } + } while (compr_result); +exitzlibdo: + + /* adjust buffers - is this necessary? not with Z_SYNC_FLUSH I think - but just to be safe */ + /* input loses size_in - avail_in bytes */ + tmp = comp->size_in - comp->stream->avail_in; + for (cnt = tmp; cnt < comp->size_in; cnt++) + *(comp->buff_in + (cnt - tmp)) = *(comp->buff_in + cnt); + + /* adjust input state value - it is important that this is done after the previous step */ + comp->size_in = comp->stream->avail_in; + /* the above as taken out because I don't think its necessary.. this is faster too */ + /*comp->size_in = 0;*/ + if (result > 0) + result = bytes_copied; + } else +#endif /* HAVE_ZLIB_H */ result = write(desc, txt, length); if (result > 0) { @@ -1884,13 +2016,13 @@ ssize_t perform_socket_write(socket_t de * >=0 If all is well and good. * -1 If an error was encountered, so that the player should be cut off. */ -int write_to_descriptor(socket_t desc, const char *txt) +int write_to_descriptor(socket_t desc, const char *txt, struct compr *comp) { ssize_t bytes_written; size_t total = strlen(txt), write_total = 0; while (total > 0) { - bytes_written = perform_socket_write(desc, txt, total); + bytes_written = perform_socket_write(desc, txt, total, comp); if (bytes_written < 0) { /* Fatal error. Disconnect the player. */ @@ -2001,6 +2133,18 @@ int process_input(struct descriptor_data char *ptr, *read_point, *write_point, *nl_pos = NULL; char tmp[MAX_INPUT_LENGTH]; +#ifdef HAVE_ZLIB_H + const char compress_start[] = + { + (char) IAC, + (char) SB, + (char) COMPRESS2, + (char) IAC, + (char) SE, + (char) 0 + }; +#endif /* HAVE_ZLIB_H */ + /* first, find the point where we left off reading data */ buf_length = strlen(t->inbuf); read_point = t->inbuf + buf_length; @@ -2019,6 +2163,47 @@ int process_input(struct descriptor_data else if (bytes_read == 0) /* Just blocking, no problems. */ return (0); + /* check for compression response, if still expecting something */ + /* note: this will bork if the user is giving lots of input when he first connects */ + /* he shouldn't be doing this, and for the sake of efficiency, the read buffer isn't searched */ + /* (ie. it assumes that read_point[0] will be IAC, etc.) */ + if (t->comp->state == 1) { +#ifdef HAVE_ZLIB_H + if (*read_point == (char)IAC && *(read_point + 1) == (char)DO && *(read_point + 2) == (char)COMPRESS2) { + /* compression just turned on */ + /* first send plaintext start of the compression stream */ + write_to_descriptor(t->descriptor, compress_start, NULL); + + /* init the compression stream */ + CREATE(t->comp->stream, z_stream, 1); + t->comp->stream->zalloc = z_alloc; + t->comp->stream->zfree = z_free; + t->comp->stream->opaque = Z_NULL; + deflateInit(t->comp->stream, Z_DEFAULT_COMPRESSION); + + /* init the state structure */ + /* first the output component */ + CREATE(t->comp->buff_out, Bytef, SMALL_BUFSIZE); + t->comp->total_out = SMALL_BUFSIZE; + t->comp->size_out = 0; + /* now the input component */ + CREATE(t->comp->buff_in, Bytef, SMALL_BUFSIZE); + t->comp->total_in = SMALL_BUFSIZE; + t->comp->size_in = 0; + + /* finally, turn compression on */ + t->comp->state = 2; + + bytes_read = 0; /* ignore the compression string - don't process it further */ + } else if (*read_point == (char)IAC && *(read_point + 1) == (char)DONT && *(read_point + 2) == (char)COMPRESS2) { + t->comp->state = 0; + + bytes_read = 0; /* ignore the compression string - don't process it further */ + } +#else /* HAVE_ZLIB_H */ + t->comp->state = 0; /* We can't compress without zlib...turn it off */ +#endif /* HAVE_ZLIB_H */ + } /* at this point, we know we got some data from the read */ *(read_point + bytes_read) = '\0'; /* terminate the string */ @@ -2086,7 +2271,7 @@ int process_input(struct descriptor_data char buffer[MAX_INPUT_LENGTH + 64]; snprintf(buffer, sizeof(buffer), "Line too long. Truncated to:\r\n%s\r\n", tmp); - if (write_to_descriptor(t->descriptor, buffer) < 0) + if (write_to_descriptor(t->descriptor, buffer, t->comp) < 0) return (-1); } if (t->snoop_by) @@ -2267,6 +2452,7 @@ void close_socket(struct descriptor_data /*. Kill any OLC stuff .*/ switch (d->connected) { case CON_OEDIT: + case CON_IEDIT: case CON_REDIT: case CON_ZEDIT: case CON_MEDIT: @@ -2280,6 +2466,19 @@ void close_socket(struct descriptor_data break; } + /* free compression structures */ +#ifdef HAVE_ZLIB_H + if (d->comp->stream) { + deflateEnd(d->comp->stream); + free(d->comp->stream); + free(d->comp->buff_out); + free(d->comp->buff_in); + } +#endif /* HAVE_ZLIB_H */ + /* d->comp was still created even if there is no zlib, for comp->state) */ + if (d->comp) + free(d->comp); + free(d); } diff -BbuprN -x '*.o' suntzu/src/comm.h yoda/src/comm.h --- suntzu/src/comm.h 2004-05-27 20:36:14.000000000 -0500 +++ yoda/src/comm.h 2004-09-06 16:18:41.000000000 -0500 @@ -34,7 +34,7 @@ void act(const char *str, int hide_invis /* I/O functions */ void write_to_q(const char *txt, struct txt_q *queue, int aliased); -int write_to_descriptor(socket_t desc, const char *txt); +int write_to_descriptor(socket_t desc, const char *txt, struct compr *comp); size_t write_to_output(struct descriptor_data *d, const char *txt, ...) __attribute__ ((format (printf, 2, 3))); size_t vwrite_to_output(struct descriptor_data *d, const char *format, va_list args); void string_add(struct descriptor_data *d, char *str); diff -BbuprN -x '*.o' suntzu/src/conf.h yoda/src/conf.h --- suntzu/src/conf.h 2004-01-18 18:20:47.000000000 -0600 +++ yoda/src/conf.h 2004-09-06 16:18:41.000000000 -0500 @@ -160,6 +160,9 @@ /* Define if you have the <unistd.h> header file. */ #define HAVE_UNISTD_H 1 +/* Define if you have the <zlib.h> header file. */ +#define HAVE_ZLIB_H 1 + /* Define if you have the malloc library (-lmalloc). */ /* #undef HAVE_LIBMALLOC */ diff -BbuprN -x '*.o' suntzu/src/conf.h.in yoda/src/conf.h.in --- suntzu/src/conf.h.in 2004-01-18 18:20:47.000000000 -0600 +++ yoda/src/conf.h.in 2004-09-06 16:18:41.000000000 -0500 @@ -159,6 +159,9 @@ /* Define if you have the <unistd.h> header file. */ #undef HAVE_UNISTD_H +/* Define if you have the <zlib.h> header file. */ +#undef HAVE_ZLIB_H + /* Define if you have the malloc library (-lmalloc). */ #undef HAVE_LIBMALLOC diff -BbuprN -x '*.o' suntzu/src/config.c yoda/src/config.c --- suntzu/src/config.c 2004-06-22 22:33:31.000000000 -0500 +++ yoda/src/config.c 2004-09-18 12:14:03.000000000 -0500 @@ -434,7 +434,7 @@ obj_vnum portal_object = 2; * Set to NO to mimic historic behaviour - a player has to explicitly * look in a certain direction to see a door there. */ -int display_closed_doors = YES; +int disp_closed_doors = YES; /* * Do you want players to be able to reroll their status at creation? @@ -443,3 +443,26 @@ int display_closed_doors = YES; */ int reroll_status = NO; +/* + * Do you want to enable MCCP2 stream compression? It is safe to enable + * this option even on systems without zlib, but compression will not + * happen without zlib. + * + * Enabling compression will save a great deal of bandwidth for data + * being transmitted to users with MCCP2-compliant MUD clients. + */ +int enable_compression = YES; + +/* + * Do you want to enable different spoken languages? Set to YES and + * you will have different races speaking in different languages. + */ +int enable_languages = YES; + +/* + * Do you want to treat all objects as unique? Set to YES and + * every object created in the game will be flagged as UNIQUE. This + * will help prevent object duping. + */ +int all_items_unique = YES; + diff -BbuprN -x '*.o' suntzu/src/constants.c yoda/src/constants.c --- suntzu/src/constants.c 2004-08-03 18:59:27.000000000 -0500 +++ yoda/src/constants.c 2004-09-27 22:09:28.000000000 -0500 @@ -54,6 +54,12 @@ const char *patch_list[] = "Command Disable version 1.1 (2003/12/09)", "Reroll Player Stats w/ cedit version 1.1 (2004/05/23)", "Dynamic Boards version 2.4 (2004/04/23)", + "MCCP2 version cwg1.0 (2004/09/05)", + "Dupecheck version 1.0 (2003/12/07)", + "Auto-Assist version 1.0 (2004/9/06)", + "Remove color question version 1.0 (2004/9/27)", + "Room currents version 1.0 (2004/9/27)", + "Timed Deathtraps version 1.0 (2004/9/27)", "\n" }; @@ -117,6 +123,8 @@ const char *room_bits[] = { "*", /* BFS MARK */ "VEHICLE", "UNDERGROUND", + "CURRENT", + "TIMED_DT", "\n" }; @@ -280,6 +288,8 @@ const char *preference_bits[] = { "FULL_AUTOEX", "AUTOSAC", "VIEWORDER", + "NO_COMPRESS", + "AUTOASSIST", "\n" }; @@ -355,6 +365,7 @@ const char *connected_types[] = { "Query ANSI", "Guild edit", "Reroll stats", + "iObject Edit", "\n" }; diff -BbuprN -x '*.o' suntzu/src/db.c yoda/src/db.c --- suntzu/src/db.c 2004-08-14 10:51:05.000000000 -0500 +++ yoda/src/db.c 2004-09-29 20:55:59.000000000 -0500 @@ -187,7 +187,6 @@ extern int no_specials; extern int scheck; extern int bitwarning; extern int bitsavetodisk; -extern int display_closed_doors; /************************************************************************* * routines for booting the system * @@ -1150,6 +1149,7 @@ void parse_room(FILE *fl, int virtual_nr world[room_nr].contents = NULL; world[room_nr].people = NULL; world[room_nr].light = 0; /* Zero light sources */ + world[room_nr].timed = -1; for (i = 0; i < NUM_OF_DIRS; i++) world[room_nr].dir_option[i] = NULL; @@ -2273,6 +2273,163 @@ struct char_data *read_mobile(mob_vnum n } +struct obj_unique_hash_elem { + long generation; + long long unique_id; + struct obj_data *obj; + struct obj_unique_hash_elem *next_e; +}; + +/* You can define this to anything you want; 1 would work but it would + be very inefficient. I would recommend that it actually be close to + your total number of in-game objects if not double or triple it just + to minimize collisions. The only O(n) [n=NUM_OBJ_UNIQUE_POOLS] + operation is initialization of the hash table, all other operations + that have to traverse are O(n) [n=num elements in pool], so more + pools are better. + - Elie Rosenblum Dec. 12 2003 */ +#define NUM_OBJ_UNIQUE_POOLS 5000 + +struct obj_unique_hash_elem **obj_unique_hash_pools = NULL; + +void init_obj_unique_hash() +{ + int i; + CREATE(obj_unique_hash_pools, struct obj_unique_hash_elem *, NUM_OBJ_UNIQUE_POOLS); + for (i = 0; i < NUM_OBJ_UNIQUE_POOLS; i++) { + obj_unique_hash_pools[i] = NULL; + } +} + +void add_unique_id(struct obj_data *obj) +{ + struct obj_unique_hash_elem *elem; + int i; + if (!obj_unique_hash_pools) + init_obj_unique_hash(); + if (obj->unique_id == -1) { + if (sizeof(long long) > sizeof(long)) + obj->unique_id = (((long long)circle_random()) << (sizeof(long long) * 4)) + + circle_random(); + else + obj->unique_id = circle_random(); + } + if (CONFIG_ALL_ITEMS_UNIQUE) { + if (!IS_SET_AR(GET_OBJ_EXTRA(obj), ITEM_UNIQUE_SAVE)) + SET_BIT_AR(GET_OBJ_EXTRA(obj), ITEM_UNIQUE_SAVE); + } + CREATE(elem, struct obj_unique_hash_elem, 1); + elem->generation = obj->generation; + elem->unique_id = obj->unique_id; + elem->obj = obj; + i = obj->unique_id % NUM_OBJ_UNIQUE_POOLS; + elem->next_e = obj_unique_hash_pools[i]; + obj_unique_hash_pools[i] = elem; +} + +void remove_unique_id(struct obj_data *obj) +{ + struct obj_unique_hash_elem *elem, **ptr, *tmp; + ptr = obj_unique_hash_pools + (obj->unique_id % NUM_OBJ_UNIQUE_POOLS); + if (!(ptr && *ptr)) + return; + elem = *ptr; + while (elem) { + if (elem->obj == obj) { + tmp = elem->next_e; + free(elem); + *ptr = tmp; + } + ptr = &(elem->next_e); + elem = *ptr; + } +} + +void log_dupe_objects(struct obj_data *obj1, struct obj_data *obj2) +{ + mudlog(BRF, LVL_GOD, TRUE, "DUPE: Dupe object found: %s [%d] [%ld:%lld]", + obj1->short_description ? obj1->short_description : "<No name>", + GET_OBJ_VNUM(obj1), obj1->generation, obj1->unique_id); + mudlog(BRF, LVL_GOD, TRUE, "DUPE: First: In room: %d (%s), " + "In object: %s, Carried by: %s, Worn by: %s", + GET_ROOM_VNUM(IN_ROOM(obj1)), + IN_ROOM(obj1) == NOWHERE ? "Nowhere" : world[IN_ROOM(obj1)].name, + obj1->in_obj ? obj1->in_obj->short_description : "None", + obj1->carried_by ? GET_NAME(obj1->carried_by) : "Nobody", + obj1->worn_by ? GET_NAME(obj1->worn_by) : "Nobody"); + mudlog(BRF, LVL_GOD, TRUE, "DUPE: Newer: In room: %d (%s), " + "In object: %s, Carried by: %s, Worn by: %s", + GET_ROOM_VNUM(IN_ROOM(obj2)), + IN_ROOM(obj2) == NOWHERE ? "Nowhere" : world[IN_ROOM(obj2)].name, + obj2->in_obj ? obj2->in_obj->short_description : "None", + obj2->carried_by ? GET_NAME(obj2->carried_by) : "Nobody", + obj2->worn_by ? GET_NAME(obj2->worn_by) : "Nobody"); +} + +void check_unique_id(struct obj_data *obj) +{ + struct obj_unique_hash_elem *elem; + if (obj->unique_id == -1) + return; + elem = obj_unique_hash_pools[obj->unique_id % NUM_OBJ_UNIQUE_POOLS]; + while (elem) { + if (elem->obj == obj) { + log("SYSERR: check_unique_id checking for existing object?!"); + } + if (elem->generation == obj->generation && elem->unique_id == obj->unique_id) + log_dupe_objects(elem->obj, obj); + elem = elem->next_e; + } +} + +char *sprintuniques(int low, int high) +{ + int i, count = 0, remain, header; + struct obj_unique_hash_elem *q; + char *str, *ptr; + remain = 40; + for (i = 0; i < NUM_OBJ_UNIQUE_POOLS; i++) { + q = obj_unique_hash_pools[i]; + remain += 40; + while (q) { + count++; + remain += 80 + (q->obj->short_description ? strlen(q->obj->short_description) : 20); + q = q->next_e; + } + } + if (count < 1) { + return strdup("No objects in unique hash.\r\n"); + } + CREATE(str, char, remain + 1); + ptr = str; + count = snprintf(ptr, remain, "Unique object hashes (vnums %d - %d)\r\n", + low, high); + ptr += count; + remain -= count; + for (i = 0; i < NUM_OBJ_UNIQUE_POOLS; i++) { + header = 0; + q = obj_unique_hash_pools[i]; + while (q) { + if (GET_OBJ_VNUM(q->obj) >= low && GET_OBJ_VNUM(q->obj) <= high) { + if (!header) { + header = 1; + count = snprintf(ptr, remain, "|-Hash %d\r\n", i); + ptr += count; + remain -= count; + } + count = snprintf(ptr, remain, "| |- [@g%6d@n] - [@y%10ld:%-19lld@n] - %s\r\n", + GET_OBJ_VNUM(q->obj), q->generation, q->unique_id, + q->obj->short_description ? q->obj->short_description : "<Unknown>"); + ptr += count; + remain -= count; + } + q = q->next_e; + } + } + return str; +} + + /* create an object, and add it to the object list */ struct obj_data *create_obj(void) { @@ -2284,6 +2441,10 @@ struct obj_data *create_obj(void) object_list = obj; GET_ID(obj) = max_obj_id++; + + obj->generation = time(0); + obj->unique_id = -1; + assign_triggers(obj, OBJ_TRIGGER); /* find_obj helper */ add_to_lookup_table(GET_ID(obj), (void *)obj); @@ -2315,6 +2476,9 @@ struct obj_data *read_object(obj_vnum nr /* find_obj helper */ add_to_lookup_table(GET_ID(obj), (void *)obj); + obj->generation = time(0); + obj->unique_id = -1; + copy_proto_script(&obj_proto[i], obj, OBJ_TRIGGER); assign_triggers(obj, OBJ_TRIGGER); return (obj); @@ -2458,6 +2622,7 @@ void reset_zone(zone_rnum zone) (rand_number(1, 100) >= ZCMD.arg4)) { if (ZCMD.arg3 != NOWHERE) { obj = read_object(ZCMD.arg1, REAL); + add_unique_id(obj); obj_to_room(obj, ZCMD.arg3); last_cmd = 1; load_otrigger(obj); @@ -2465,6 +2630,7 @@ void reset_zone(zone_rnum zone) obj_load = TRUE; } else { obj = read_object(ZCMD.arg1, REAL); + add_unique_id(obj); IN_ROOM(obj) = NOWHERE; last_cmd = 1; tobj = obj; @@ -2484,6 +2650,7 @@ void reset_zone(zone_rnum zone) ZCMD.command = '*'; break; } + add_unique_id(obj); obj_to_obj(obj, obj_to); last_cmd = 1; load_otrigger(obj); @@ -2502,6 +2669,7 @@ void reset_zone(zone_rnum zone) if ((obj_index[ZCMD.arg1].number < ZCMD.arg2) && mob_load && (rand_number(1, 100) >= ZCMD.arg4)) { obj = read_object(ZCMD.arg1, REAL); + add_unique_id(obj); obj_to_char(obj, mob); last_cmd = 1; load_otrigger(obj); @@ -2523,6 +2691,7 @@ void reset_zone(zone_rnum zone) ZONE_ERROR("invalid equipment pos number"); } else { obj = read_object(ZCMD.arg1, REAL); + add_unique_id(obj); IN_ROOM(obj) = IN_ROOM(mob); load_otrigger(obj); if (wear_otrigger(obj, mob, ZCMD.arg3)) { @@ -2820,6 +2989,7 @@ void free_char(struct char_data *ch) /* release memory allocated for an obj struct */ void free_obj(struct obj_data *obj) { + remove_unique_id(obj); if (GET_OBJ_RNUM(obj) == NOWHERE) { free_object_strings(obj); /* free script proto list */ @@ -3359,6 +3529,9 @@ int my_obj_save_to_disk(FILE *fp, struct GET_OBJ_WEAR(obj)[1], GET_OBJ_WEAR(obj)[2], GET_OBJ_WEAR(obj)[3], GET_OBJ_WEIGHT(obj), GET_OBJ_COST(obj), GET_OBJ_RENT(obj)); + fprintf(fp, "G\n%ld\n", obj->generation); + fprintf(fp, "U\n%lld\n", obj->unique_id); + /* Do we have affects? */ for (counter2 = 0; counter2 < MAX_OBJ_AFFECT; counter2++) if (obj->affected[counter2].modifier) @@ -3517,6 +3690,16 @@ int my_obj_save_to_disk(FILE *fp, struct j++; get_line(fl,line); break; + case 'G': + get_line(fl, line); + sscanf(line, "%ld", &temp->generation); + get_line(fl, line); + break; + case 'U': + get_line(fl, line); + sscanf(line, "%lld", &temp->unique_id); + get_line(fl, line); + break; case '$': case '#': zwei=1; @@ -3531,6 +3714,8 @@ int my_obj_save_to_disk(FILE *fp, struct IN_ROOM(ch)=1; if(temp != NULL) { obj_to_char(temp,ch); + check_unique_id(temp); + add_unique_id(temp); } } } /* exit our while loop */ @@ -3556,8 +3741,11 @@ extern int track_through_doors; extern int immort_level_ok; extern int show_mob_stacking; extern int show_obj_stacking; -extern int display_closed_doors; +extern int disp_closed_doors; extern int reroll_status; +extern int enable_compression; +extern int enable_languages; +extern int all_items_unique; extern int mob_fighting; extern int free_rent; extern int max_obj_save; @@ -3623,8 +3811,11 @@ void load_default_config( void ) CONFIG_STACK_MOBS = show_mob_stacking; CONFIG_STACK_OBJS = show_obj_stacking; CONFIG_MOB_FIGHTING = mob_fighting; - CONFIG_DISP_CLOSED_DOORS = display_closed_doors; + CONFIG_DISP_CLOSED_DOORS = disp_closed_doors; CONFIG_REROLL_PLAYER_CREATION = reroll_status; + CONFIG_ENABLE_COMPRESSION = enable_compression; + CONFIG_ENABLE_LANGUAGES = enable_languages; + CONFIG_ALL_ITEMS_UNIQUE = all_items_unique; /****************************************************************************/ /** Rent / crashsave options. **/ /****************************************************************************/ @@ -3713,15 +3904,26 @@ void load_config( void ) CONFIG_AUTOSAVE_TIME = num; else if (!str_cmp(tag, "auto_save_olc")) CONFIG_OLC_SAVE = num; + else if (!str_cmp(tag, "all_items_unique")) + CONFIG_ALL_ITEMS_UNIQUE = num; break; case 'c': if (!str_cmp(tag, "crash_file_timeout")) CONFIG_CRASH_TIMEOUT = num; + else if (!str_cmp(tag, "compression")) { + CONFIG_ENABLE_COMPRESSION = num; +#ifndef HAVE_ZLIB_H + if (CONFIG_ENABLE_COMPRESSION) { + CONFIG_ENABLE_COMPRESSION = 0; + log("config tried to enable compression but it is not supported on this system"); + } +#endif /* !HAVE_ZLIB_H */ + } break; case 'd': - if (!str_cmp(tag, "display_closed_doors")) + if (!str_cmp(tag, "disp_closed_doors")) CONFIG_DISP_CLOSED_DOORS = num; else if (!str_cmp(tag, "dts_are_dumps")) CONFIG_DTS_ARE_DUMPS = num; @@ -3758,6 +3960,11 @@ void load_config( void ) CONFIG_DFLT_PORT = num; break; + case 'e': + if (!str_cmp(tag, "enable_languages")) + CONFIG_ENABLE_LANGUAGES = num; + break; + case 'f': if (!str_cmp(tag, "free_rent")) CONFIG_FREE_RENT = num; diff -BbuprN -x '*.o' suntzu/src/db.h yoda/src/db.h --- suntzu/src/db.h 2004-06-22 22:33:31.000000000 -0500 +++ yoda/src/db.h 2004-09-27 20:51:13.000000000 -0500 @@ -151,6 +151,7 @@ void reset_char(struct char_data *ch); void free_char(struct char_data *ch); void save_player_index(void); long get_ptable_by_name(const char *name); +void current_update(void); struct obj_data *create_obj(void); void clear_object(struct obj_data *obj); @@ -158,6 +159,9 @@ void free_obj(struct obj_data *obj); struct obj_data *read_object(obj_vnum nr, int type); int vnum_object(char *searchname, struct char_data *ch); int my_obj_save_to_disk(FILE *fp, struct obj_data *obj, int locate); +void add_unique_id(struct obj_data *obj); +void check_unique_id(struct obj_data *obj); +char *sprintuniques(int low, int high); #define REAL 0 #define VIRTUAL 1 diff -BbuprN -x '*.o' suntzu/src/dg_mobcmd.c yoda/src/dg_mobcmd.c --- suntzu/src/dg_mobcmd.c 2004-02-24 19:02:11.000000000 -0600 +++ yoda/src/dg_mobcmd.c 2004-09-06 19:24:12.000000000 -0500 @@ -394,6 +394,7 @@ ACMD(do_mload) } /* special handling to make objects able to load on a person/in a container/worn etc. */ if (!target || !*target) { + add_unique_id(object); if (CAN_WEAR(object, ITEM_WEAR_TAKE)) { obj_to_char(object, ch); } else { @@ -424,6 +425,7 @@ ACMD(do_mload) return; } /* neither char nor container found - just dump it in room */ + add_unique_id(object); obj_to_room(object, IN_ROOM(ch)); load_otrigger(object); return; diff -BbuprN -x '*.o' suntzu/src/dg_objcmd.c yoda/src/dg_objcmd.c --- suntzu/src/dg_objcmd.c 2004-02-24 19:02:11.000000000 -0600 +++ yoda/src/dg_objcmd.c 2004-09-06 19:23:00.000000000 -0500 @@ -319,6 +319,8 @@ OCMD(do_otransform) obj_log(obj, "otransform: bad object vnum"); return; } + /* We don't add a unique ID here because we want to keep the old one */ + /* add_unique_id(o); */ if (obj->worn_by) { pos = obj->worn_on; @@ -497,6 +499,7 @@ OCMD(do_dgoload) /* special handling to make objects able to load on a person/in a container/worn etc. */ if (!target || !*target) { + add_unique_id(object); obj_to_room(object, room); load_otrigger(object); return; @@ -523,6 +526,7 @@ OCMD(do_dgoload) return; } /* neither char nor container found - just dump it in room */ + add_unique_id(object); obj_to_room(object, room); load_otrigger(object); return; @@ -698,6 +702,7 @@ OCMD(do_oat) if (!object) return; + add_unique_id(object); obj_to_room(object, rnum); obj_command_interpreter(object, arg2); diff -BbuprN -x '*.o' suntzu/src/dg_wldcmd.c yoda/src/dg_wldcmd.c --- suntzu/src/dg_wldcmd.c 2004-02-24 19:02:11.000000000 -0600 +++ yoda/src/dg_wldcmd.c 2004-09-06 19:23:38.000000000 -0500 @@ -478,6 +478,7 @@ WCMD(do_wload) } /* special handling to make objects able to load on a person/in a container/worn etc. */ if (!target || !*target) { + add_unique_id(object); obj_to_room(object, real_room(room->number)); load_otrigger(object); return; @@ -505,6 +506,7 @@ WCMD(do_wload) return; } /* neither char nor container found - just dump it in room */ + add_unique_id(object); obj_to_room(object, real_room(room->number)); load_otrigger(object); return; diff -BbuprN -x '*.o' suntzu/src/fight.c yoda/src/fight.c --- suntzu/src/fight.c 2004-05-27 20:43:37.000000000 -0500 +++ yoda/src/fight.c 2004-09-11 15:07:08.000000000 -0500 @@ -1140,6 +1140,8 @@ void hit(struct char_data *ch, struct ch void perform_violence(void) { struct char_data *ch; + struct follow_type *k; + ACMD(do_assist); for (ch = combat_list; ch; ch = next_combat_list) { next_combat_list = ch->next_fighting; @@ -1171,6 +1173,19 @@ void perform_violence(void) continue; } + for (k = ch->followers; k; k=k->next) { + /* should followers auto-assist master? */ + if (!FIGHTING(k->follower) && PRF_FLAGGED(k->follower, PRF_AUTOASSIST) && + (k->follower->in_room == ch->in_room)) + do_assist(k->follower, GET_NAME(ch), 0, 0); + } + + /* should master auto-assist followers? */ + if (ch->master && PRF_FLAGGED(ch->master, PRF_AUTOASSIST) && + FIGHTING(ch) && !FIGHTING(ch->master) && + (ch->master->in_room == ch->in_room)) + do_assist(ch->master, GET_NAME(ch), 0, 0); + hit(ch, FIGHTING(ch), TYPE_UNDEFINED); if (MOB_FLAGGED(ch, MOB_SPEC) && GET_MOB_SPEC(ch) && !MOB_FLAGGED(ch, MOB_NOTDEADYET)) { char actbuf[MAX_INPUT_LENGTH] = ""; diff -BbuprN -x '*.o' suntzu/src/guild.c yoda/src/guild.c --- suntzu/src/guild.c 2004-03-30 19:50:24.000000000 -0600 +++ yoda/src/guild.c 2004-09-11 17:53:30.000000000 -0500 @@ -142,6 +142,7 @@ void list_skills_perct(struct char_data } + if (CONFIG_ENABLE_LANGUAGES) { len += snprintf(buf2 + len, sizeof(buf2) - len, "\r\nand the following languages:\r\n"); for (sortpos = MIN_LANGUAGES ; sortpos <= MAX_LANGUAGES ; sortpos++) { @@ -155,6 +156,7 @@ void list_skills_perct(struct char_data len += nlen; } } + } if (len >= sizeof(buf2)) strcpy(buf2 + sizeof(buf2) - strlen(overflow) - 1, overflow); /* strcpy: OK */ @@ -220,6 +222,7 @@ void list_skills(struct char_data *ch) } } + if (CONFIG_ENABLE_LANGUAGES) { len += snprintf(buf2 + len, sizeof(buf2) - len, "\r\nand the following languages:\r\n"); for (sortpos = MIN_LANGUAGES ; sortpos <= MAX_LANGUAGES ; sortpos++) { @@ -233,6 +236,7 @@ void list_skills(struct char_data *ch) len += nlen; } } + } if (len >= sizeof(buf2)) strcpy(buf2 + sizeof(buf2) - strlen(overflow) - 1, overflow); /* strcpy: OK */ @@ -430,6 +434,7 @@ void what_does_guild_know(int guild_nr, } } + if (CONFIG_ENABLE_LANGUAGES) { len += snprintf(buf2 + len, sizeof(buf2) - len, "\r\nand the following languages:\r\n"); for (sortpos = MIN_LANGUAGES ; sortpos <= MAX_LANGUAGES ; sortpos++) { @@ -445,6 +450,7 @@ void what_does_guild_know(int guild_nr, } } } + } if (len >= sizeof(buf2)) strcpy(buf2 + sizeof(buf2) - strlen(overflow) - 1, overflow); /* strcpy: OK */ diff -BbuprN -x '*.o' suntzu/src/interpreter.c yoda/src/interpreter.c --- suntzu/src/interpreter.c 2004-08-21 20:30:19.000000000 -0500 +++ yoda/src/interpreter.c 2004-09-28 20:30:39.000000000 -0500 @@ -50,6 +50,7 @@ extern int xap_objs; extern char *GREETANSI; extern char *GREETINGS; extern char *ANSIQUESTION; +extern const char compress_offer[]; /* external functions */ void echo_on(struct descriptor_data *d); @@ -147,6 +148,7 @@ ACMD(do_help); ACMD(do_hide); ACMD(do_hit); ACMD(do_house); +ACMD(do_iedit); ACMD(do_insult); ACMD(do_inventory); ACMD(do_invis); @@ -230,6 +232,7 @@ ACMD(do_wield); ACMD(do_wimpy); ACMD(do_wizlock); ACMD(do_wiznet); +ACMD(do_wizupdate); ACMD(do_wizutil); ACMD(do_write); ACMD(do_zreset); @@ -308,6 +311,7 @@ cpp_extern const struct command_info cmd { "astat" , "ast" , POS_DEAD , do_astat , LVL_GOD, 0 }, { "ask" , "ask" , POS_RESTING , do_spec_comm, 0, SCMD_ASK }, { "auction" , "auc" , POS_SLEEPING, do_gen_comm , 0, SCMD_AUCTION }, + { "autoassist", "autoass" , POS_DEAD , do_gen_tog , 0, SCMD_AUTOASSIST }, { "autoexit" , "autoex" , POS_DEAD , do_autoexit , 0, 0 }, { "autogold" , "autogo" , POS_DEAD , do_gen_tog , 0, SCMD_AUTOGOLD }, { "autoloot" , "autolo" , POS_DEAD , do_gen_tog , 0, SCMD_AUTOLOOT }, @@ -407,6 +411,7 @@ cpp_extern const struct command_info cmd { "info" , "info" , POS_SLEEPING, do_gen_ps , 0, SCMD_INFO }, { "insult" , "insult" , POS_RESTING , do_insult , 0, 0 }, { "inventory", "inv" , POS_DEAD , do_inventory, 0, 0 }, + { "iedit" , "ie" , POS_DEAD , do_iedit , LVL_GRGOD, 0 }, { "invis" , "invi" , POS_DEAD , do_invis , LVL_IMMORT, 0 }, { "junk" , "junk" , POS_RESTING , do_drop , 0, SCMD_JUNK }, @@ -436,6 +441,7 @@ cpp_extern const struct command_info cmd { "news" , "news" , POS_SLEEPING, do_gen_ps , 0, SCMD_NEWS }, { "noauction", "noauction" , POS_DEAD , do_gen_tog , 0, SCMD_NOAUCTION }, + { "nocompress","nocompress" , POS_DEAD , do_gen_tog , 0, SCMD_NOCOMPRESS }, { "nogossip" , "nogossip" , POS_DEAD , do_gen_tog , 0, SCMD_NOGOSSIP }, { "nograts" , "nograts" , POS_DEAD , do_gen_tog , 0, SCMD_NOGRATZ }, { "nohassle" , "nohassle" , POS_DEAD , do_gen_tog , LVL_IMMORT, SCMD_NOHASSLE }, @@ -576,6 +582,7 @@ cpp_extern const struct command_info cmd { "wizhelp" , "wizhelp" , POS_SLEEPING, do_commands , LVL_IMMORT, SCMD_WIZHELP }, { "wizlist" , "wizlist" , POS_DEAD , do_gen_ps , 0, SCMD_WIZLIST }, { "wizlock" , "wizlock" , POS_DEAD , do_wizlock , LVL_IMPL, 0 }, + { "wizupdate", "wizupdate" , POS_DEAD , do_wizupdate, LVL_GRGOD, 0 }, { "write" , "write" , POS_STANDING, do_write , 1, 0 }, @@ -1191,6 +1198,7 @@ void half_chop(char *string, char *arg1, temp = any_one_arg(string, arg1); skip_spaces(&temp); + if (arg2 != temp) strcpy(arg2, temp); /* strcpy: OK (documentation) */ } @@ -1409,7 +1417,7 @@ int perform_dupe_check(struct descriptor int enter_player_game (struct descriptor_data *d) { int load_result; - sh_int load_room; + IDXTYPE load_room; long max_id=1; reset_char(d->character); @@ -1470,6 +1478,7 @@ void nanny(struct descriptor_data *d, ch void (*func)(struct descriptor_data *, char*); } olc_functions[] = { { CON_OEDIT, oedit_parse }, + { CON_IEDIT, oedit_parse }, { CON_ZEDIT, zedit_parse }, { CON_SEDIT, sedit_parse }, { CON_MEDIT, medit_parse }, @@ -1504,25 +1513,6 @@ void nanny(struct descriptor_data *d, ch /* Not in OLC. */ switch (STATE(d)) { - case CON_QANSI: - if (!*arg || LOWER(*arg) == 'y') { - SET_BIT_AR(PRF_FLAGS(d->character), PRF_COLOR_1); - SET_BIT_AR(PRF_FLAGS(d->character), PRF_COLOR_2); - write_to_output(d, "@cC@bo@yl@mo@rr@n is on.\r\n"); - write_to_output(d, GREETANSI); - } else if (LOWER(*arg) == 'n') { - REMOVE_BIT_AR(PRF_FLAGS(d->character), PRF_COLOR_1); - REMOVE_BIT_AR(PRF_FLAGS(d->character), PRF_COLOR_2); - write_to_output(d, "Color is off.\r\n"); - write_to_output(d, GREETINGS); - } else { - write_to_output(d, "That is not a proper response.\r\n"); - write_to_output(d, ANSIQUESTION); - return; - } - write_to_output(d, "\r\n\r\n@CBy what name do you wish to be known? @n"); - STATE(d) = CON_GET_NAME; - break; case CON_GET_NAME: /* wait for input of name */ if (d->character == NULL) { CREATE(d->character, struct char_data, 1); @@ -1928,6 +1918,12 @@ void nanny(struct descriptor_data *d, ch break; case CON_RMOTD: /* read CR after printing motd */ +#ifdef HAVE_ZLIB_H + if (CONFIG_ENABLE_COMPRESSION && !PRF_FLAGGED(d->character, PRF_NOCOMPRESS)) { + d->comp->state = 1; /* waiting for response to offer */ + write_to_output(d, "%s", compress_offer); + } +#endif /* HAVE_ZLIB_H */ write_to_output(d, "%s", CONFIG_MENU); STATE(d) = CON_MENU; break; diff -BbuprN -x '*.o' suntzu/src/interpreter.h yoda/src/interpreter.h --- suntzu/src/interpreter.h 2004-07-25 14:51:04.000000000 -0500 +++ yoda/src/interpreter.h 2004-09-10 19:21:27.000000000 -0500 @@ -141,6 +141,8 @@ struct alias_data { #define SCMD_AUTOSPLIT 23 #define SCMD_AUTOSAC 24 #define SCMD_VIEWORDER 25 +#define SCMD_NOCOMPRESS 26 +#define SCMD_AUTOASSIST 27 /* do_wizutil */ #define SCMD_REROLL 0 diff -BbuprN -x '*.o' suntzu/src/limits.c yoda/src/limits.c --- suntzu/src/limits.c 2004-07-10 16:49:57.000000000 -0500 +++ yoda/src/limits.c 2004-09-27 22:08:44.000000000 -0500 @@ -536,3 +536,67 @@ void point_update(void) } } } + +void timed_dt(struct char_data *ch) +{ + struct char_data *vict; + room_rnum rrnum; + + if (ch == NULL) { + /* BY -WELCOR + first make sure all rooms in the world have thier 'timed' + value decreased if its not -1. + */ + + for (rrnum = 0; rrnum < top_of_world; rrnum++) + world[rrnum].timed -= (world[rrnum].timed != -1); + + for (vict = character_list; vict ;vict = vict->next){ + if (IS_NPC(vict)) + continue; + + if (IN_ROOM(vict) == NOWHERE) + continue; + + if(!ROOM_FLAGGED(IN_ROOM(vict), ROOM_TIMED_DT)) + continue; + + timed_dt(vict); + } + return; + } + + /*Called with a non-null ch. let's check the room. */ + + /*if the room wasn't triggered (i.e timed wasn't set), just set it + and return again. + */ + + if (world[IN_ROOM(ch)].timed < 0) { + world[IN_ROOM(ch)].timed = rand_number(2, 5); + return; + } + + /* We know ch is in a dt room with timed >= 0 - see if its the end. + * + */ + if (world[IN_ROOM(ch)].timed == 0) { + for (vict = world[IN_ROOM(ch)].people; vict; vict = vict->next_in_room) + { + if (IS_NPC(vict)) + continue; + if (GET_LEVEL(vict) >= LVL_IMMORT) + continue; + + /* Skip those alread dead people */ + /* extract char() jest sets the bit*/ + if (PLR_FLAGGED(vict, PLR_NOTDEADYET)) + continue; + + log_death_trap(vict); + death_cry(vict); + extract_char(vict); + } + } +} + diff -BbuprN -x '*.o' suntzu/src/magic.c yoda/src/magic.c --- suntzu/src/magic.c 2004-02-01 12:49:23.000000000 -0600 +++ yoda/src/magic.c 2004-09-06 19:17:12.000000000 -0500 @@ -981,6 +981,7 @@ void mag_creations(int level, struct cha spellnum, z); return; } + add_unique_id(tobj); obj_to_char(tobj, ch); act("$n creates $p.", FALSE, ch, tobj, 0, TO_ROOM); act("You create $p.", FALSE, ch, tobj, 0, TO_CHAR); diff -BbuprN -x '*.o' suntzu/src/Makefile yoda/src/Makefile --- suntzu/src/Makefile 2004-07-18 12:42:55.000000000 -0500 +++ yoda/src/Makefile 2004-09-06 16:20:30.000000000 -0500 @@ -22,7 +22,7 @@ BINDIR = ../bin CFLAGS = -g -O2 $(MYFLAGS) $(PROFILE) -LIBS = -lcrypt +LIBS = -lcrypt -lz OBJFILES = act.comm.o act.informative.o act.item.o act.movement.o \ act.offensive.o act.other.o act.social.o act.wizard.o alias.o ban.o \ diff -BbuprN -x '*.o' suntzu/src/Makefile.in yoda/src/Makefile.in --- suntzu/src/Makefile.in 2004-06-22 22:33:32.000000000 -0500 +++ yoda/src/Makefile.in 2004-09-06 16:18:41.000000000 -0500 @@ -21,7 +21,7 @@ BINDIR = ../bin CFLAGS = @CFLAGS@ $(MYFLAGS) $(PROFILE) -LIBS = @LIBS@ @CRYPTLIB@ @NETLIB@ +LIBS = @LIBS@ @CRYPTLIB@ @NETLIB@ @ZLIB@ OBJFILES = act.comm.o act.informative.o act.item.o act.movement.o \ act.offensive.o act.other.o act.social.o act.wizard.o alias.o ban.o \ diff -BbuprN -x '*.o' suntzu/src/modify.c yoda/src/modify.c --- suntzu/src/modify.c 2004-07-25 14:51:04.000000000 -0500 +++ yoda/src/modify.c 2004-09-07 18:30:01.000000000 -0500 @@ -180,6 +180,7 @@ void string_add(struct descriptor_data * case CON_REDIT: case CON_MEDIT: case CON_OEDIT: + case CON_IEDIT: case CON_EXDESC: case CON_TRIGEDIT: free(*d->str); diff -BbuprN -x '*.o' suntzu/src/oasis.h yoda/src/oasis.h --- suntzu/src/oasis.h 2004-07-25 14:51:04.000000000 -0500 +++ yoda/src/oasis.h 2004-09-27 22:08:44.000000000 -0500 @@ -31,7 +31,7 @@ * Macros, defines, structs and globals for the OLC suite. You will need * to adjust these numbers if you ever add more. */ -#define NUM_ROOM_FLAGS 18 +#define NUM_ROOM_FLAGS 20 #define NUM_ROOM_SECTORS 10 #define NUM_MOB_FLAGS 19 @@ -133,6 +133,7 @@ struct oasis_olc_data { struct char_data *mob; /* used for 'medit' */ struct room_data *room; /* used for 'redit' */ struct obj_data *obj; /* used for 'oedit' */ + struct obj_data *iobj; /* used for 'iedit' */ struct zone_data *zone; /* used for 'zedit' */ struct shop_data *shop; /* used for 'sedit' */ struct config_data *config; /* used for 'cedit' */ @@ -169,6 +170,7 @@ extern const char *nrm, *grn, *cyn, *yel #define OLC_STORAGE(d) (OLC(d)->storage) /* char pointer. */ #define OLC_ROOM(d) (OLC(d)->room) /* Room structure. */ #define OLC_OBJ(d) (OLC(d)->obj) /* Object structure. */ +#define OLC_IOBJ(d) (OLC(d)->iobj) /* Individual object structure. */ #define OLC_ZONE(d) (OLC(d)->zone) /* Zone structure. */ #define OLC_MOB(d) (OLC(d)->mob) /* Mob structure. */ #define OLC_SHOP(d) (OLC(d)->shop) /* Shop structure. */ @@ -511,6 +513,9 @@ void oedit_disp_perm_menu(struct descrip void oedit_string_cleanup(struct descriptor_data *d, int terminator); ACMD(do_oasis_oedit); +void iedit_setup_existing(struct descriptor_data *d, struct obj_data *obj); +void iedit_parse(struct descriptor_data *d, char *arg); + void redit_string_cleanup(struct descriptor_data *d, int terminator); void redit_setup_new(struct descriptor_data *d); void redit_setup_existing(struct descriptor_data *d, int real_num); diff -BbuprN -x '*.o' suntzu/src/objsave.c yoda/src/objsave.c --- suntzu/src/objsave.c 2004-08-22 10:42:30.000000000 -0500 +++ yoda/src/objsave.c 2004-09-29 21:12:18.000000000 -0500 @@ -257,13 +257,13 @@ int Crash_delete_file(char *name) char filename[50]; FILE *fl; - if(!xap_objs) { - if (!get_filename(filename, sizeof(filename), CRASH_FILE, name)) - return (0); - } else { - if(!get_filename(filename, sizeof(filename), NEW_OBJ_FILES, name)) + //if (!xap_objs) { + //if (!get_filename(filename, sizeof(filename), CRASH_FILE, name)) + //return (0); + //} else { + if (!get_filename(filename, sizeof(filename), NEW_OBJ_FILES, name)) return (0); - } + //} if (!(fl = fopen(filename, "rb"))) { if (errno != ENOENT) /* if it fails but NOT because of no file */ @@ -283,42 +283,43 @@ int Crash_delete_file(char *name) int Crash_delete_crashfile(struct char_data *ch) { char filename[MAX_INPUT_LENGTH]; - struct rent_info rent; + //struct rent_info rent; FILE *fl; int rentcode, timed, netcost, gold, account, nitems; char line[MAX_INPUT_LENGTH]; - if(!xap_objs) { - if (!get_filename(filename, sizeof(filename), CRASH_FILE, GET_NAME(ch))) - return (0); - } else { - if(!get_filename(filename, sizeof(filename), NEW_OBJ_FILES, GET_NAME(ch))) + //if (!xap_objs) { + //if (!get_filename(filename, sizeof(filename), CRASH_FILE, GET_NAME(ch))) + //return (0); + //} else { + if (!get_filename(filename, sizeof(filename), NEW_OBJ_FILES, GET_NAME(ch))) return (0); - } + //} + if (!(fl = fopen(filename, "rb"))) { if (errno != ENOENT) /* if it fails, NOT because of no file */ log("SYSERR: checking for crash file %s (3): %s", filename, strerror(errno)); return (0); } - if(!xap_objs) { - if (!feof(fl)) - fread(&rent, sizeof(struct rent_info), 1, fl); - fclose(fl); - } else { + //if (!xap_objs) { + //if (!feof(fl)) + //fread(&rent, sizeof(struct rent_info), 1, fl); + //fclose(fl); + //} else { if (!feof(fl)) get_line(fl,line); - sscanf(line,"%d %d %d %d %d %d",&rentcode,&timed,&netcost,&gold, - &account,&nitems); + sscanf(line,"%d %d %d %d %d %d", &rentcode, &timed, &netcost, &gold, + &account, &nitems); fclose(fl); - } + //} - if(!xap_objs) { - if (rent.rentcode == RENT_CRASH) - Crash_delete_file(GET_NAME(ch)); - } else { + //if (!xap_objs) { + //if (rent.rentcode == RENT_CRASH) + //Crash_delete_file(GET_NAME(ch)); + //} else { if (rentcode == RENT_CRASH) Crash_delete_file(GET_NAME(ch)); - } + //} return (1); } @@ -480,7 +481,7 @@ void Crash_listrent(struct char_data *ch return; } if (!feof(fl)) - if (real_object(object.item_number) > -1) { + if (real_object(object.item_number) != NOTHING) { obj = read_object(object.item_number, VIRTUAL); #if USE_AUTOEQ @@ -505,7 +506,7 @@ void Crash_listrent(struct char_data *ch if(*line == '#') { /* swell - its an item */ sscanf(line,"#%d",&nr); if(nr != NOTHING) { /* then we can dispense with it easily */ - if (real_object(nr) > -1) { + if (real_object(nr) != NOTHING) { obj=read_object(nr,VIRTUAL); if (len + 255 < sizeof(buf)) { len += snprintf(buf + len, sizeof(buf) - len, "[%5d] (%5dau) %-20s\r\n", @@ -590,7 +591,7 @@ int Crash_load(struct char_data *ch) struct obj_data *obj, *obj2, *cont_row[MAX_BAG_ROWS]; int location; - if(xap_objs) { + if (xap_objs) { return (Crash_load_xapobjs(ch)); } @@ -796,7 +797,7 @@ int Crash_save(struct obj_data *obj, FIL GET_OBJ_WEIGHT(tmp) -= GET_OBJ_WEIGHT(obj); if (!result) - return (0); + return (FALSE); } return (TRUE); } @@ -845,15 +846,20 @@ int Crash_is_unrentable(struct obj_data { if (!obj) return (0); - +#if CIRCLE_UNSIGNED_INDEX + if (OBJ_FLAGGED(obj, ITEM_NORENT) || GET_OBJ_RENT(obj) < 0 || + GET_OBJ_RNUM(obj) == NOTHING || + (GET_OBJ_RNUM(obj) == NOTHING && + !IS_SET_AR(GET_OBJ_EXTRA(obj), ITEM_UNIQUE_SAVE))) { + return (1); +#else if (OBJ_FLAGGED(obj, ITEM_NORENT) || GET_OBJ_RENT(obj) < 0 || GET_OBJ_RNUM(obj) <= NOTHING || (GET_OBJ_RNUM(obj) <= NOTHING && !IS_SET_AR(GET_OBJ_EXTRA(obj), ITEM_UNIQUE_SAVE))) { return (1); +#endif } - - return (0); } @@ -904,28 +910,31 @@ void Crash_crashsave(struct char_data *c if (IS_NPC(ch)) return; - if(!xap_objs) { - if (!get_filename(buf, sizeof(buf), CRASH_FILE, GET_NAME(ch))) - return; - } else { + //if(!xap_objs) { + //if (!get_filename(buf, sizeof(buf), CRASH_FILE, GET_NAME(ch))) + //return; + //} else { if (!get_filename(buf, sizeof(buf), NEW_OBJ_FILES, GET_NAME(ch))) return; - } + //} if (!(fp = fopen(buf, "wb"))) return; rent.rentcode = RENT_CRASH; rent.time = time(0); - if(!xap_objs) { - if (!Crash_write_rentcode(ch, fp, &rent)) { - fclose(fp); - return; - } - } else { - fprintf(fp,"%d %d %d %d %d %d\r\n",rent.rentcode,rent.time, - rent.net_cost_per_diem,rent.gold,rent.account,rent.nitems); - } + rent.gold = GET_GOLD(ch); + rent.account = GET_BANK_GOLD(ch); + + //if (!xap_objs) { + //if (!Crash_write_rentcode(ch, fp, &rent)) { + //fclose(fp); + //return; + //} + //} else { + fprintf(fp,"%d %d %d %d %d %d\r\n", rent.rentcode, rent.time, + rent.net_cost_per_diem, rent.gold, rent.account, rent.nitems); + //} for (j = 0; j < NUM_WEARS; j++) if (GET_EQ(ch, j)) { @@ -1068,8 +1077,8 @@ void Crash_rentsave(struct char_data *ch rent.gold = GET_GOLD(ch); rent.account = GET_BANK_GOLD(ch); - fprintf(fp,"%d %d %d %d %d %d\r\n",rent.rentcode,rent.time, - rent.net_cost_per_diem,rent.gold,rent.account,rent.nitems); + fprintf(fp,"%d %d %d %d %d %d\r\n",rent.rentcode, rent.time, + rent.net_cost_per_diem, rent.gold, rent.account, rent.nitems); for (j = 0; j < NUM_WEARS; j++) if (GET_EQ(ch, j)) { @@ -1380,7 +1389,7 @@ int Crash_load_xapobjs(struct char_data struct obj_data *obj1; struct obj_data *cont_row[MAX_BAG_ROWS]; struct extra_descr_data *new_descr; - int rentcode,timed,netcost,gold,account,nitems; + int rentcode, timed, netcost, gold, account, nitems; if (!get_filename(fname, sizeof(fname), NEW_OBJ_FILES, GET_NAME(ch))) return 1; @@ -1551,7 +1560,16 @@ int Crash_load_xapobjs(struct char_data j++; get_line(fl,line); break; - + case 'G': + get_line(fl, line); + sscanf(line, "%ld", &temp->generation); + get_line(fl, line); + break; + case 'U': + get_line(fl, line); + sscanf(line, "%lld", &temp->unique_id); + get_line(fl, line); + break; case '$': case '#': zwei=1; @@ -1564,6 +1582,8 @@ int Crash_load_xapobjs(struct char_data } /* exit our xap loop */ if(temp != NULL) { num_objs++; + check_unique_id(temp); + add_unique_id(temp); if (GET_OBJ_TYPE(temp) == ITEM_DRINKCON) { name_from_drinkcon(temp); if (GET_OBJ_VAL(temp, 1) != 0 ) diff -BbuprN -x '*.o' suntzu/src/oedit.c yoda/src/oedit.c --- suntzu/src/oedit.c 2004-07-25 14:51:04.000000000 -0500 +++ yoda/src/oedit.c 2004-09-20 19:33:19.000000000 -0500 @@ -13,6 +13,7 @@ #include "spells.h" #include "utils.h" #include "db.h" +#include "handler.h" #include "boards.h" #include "constants.h" #include "shop.h" @@ -41,6 +42,7 @@ extern struct spell_info_type spell_info extern struct board_info *bboards; extern struct descriptor_data *descriptor_list; extern const char *material_names[]; +extern long max_obj_id; /*------------------------------------------------------------------------*/ extern zone_rnum real_zone_by_thing(room_vnum vznum); @@ -889,6 +891,8 @@ void oedit_parse(struct descriptor_data int number, max_val, min_val; char *oldtext = NULL; struct board_info *tmp; + struct obj_data *obj; + obj_rnum robj; switch (OLC_MODE(d)) { @@ -935,11 +939,43 @@ void oedit_parse(struct descriptor_data switch (*arg) { case 'q': case 'Q': + if (STATE(d) != CON_IEDIT) { if (OLC_VAL(d)) { /* Something has been modified. */ write_to_output(d, "Do you wish to save this object? : "); OLC_MODE(d) = OEDIT_CONFIRM_SAVESTRING; } else cleanup_olc(d, CLEANUP_ALL); + } else { + send_to_char(d->character, "\r\nCommitting iedit changes.\r\n"); + obj = OLC_IOBJ(d); + *obj = *(OLC_OBJ(d)); + GET_ID(obj) = max_obj_id++; + /* find_obj helper */ + add_to_lookup_table(GET_ID(obj), (void *)obj); + if (GET_OBJ_VNUM(obj) != NOTHING) { + /* remove any old scripts */ + if (SCRIPT(obj)) { + extract_script(obj, OBJ_TRIGGER); + SCRIPT(obj) = NULL; + } + + free_proto_script(obj, OBJ_TRIGGER); + robj = real_object(GET_OBJ_VNUM(obj)); + copy_proto_script(&obj_proto[robj], obj, OBJ_TRIGGER); + assign_triggers(obj, OBJ_TRIGGER); + } + SET_BIT_AR(GET_OBJ_EXTRA(obj), ITEM_UNIQUE_SAVE); + /* Xap - ought to save the old pointer, free after assignment I suppose */ + mudlog(CMP, MAX(LVL_BUILDER, GET_INVIS_LEV(d->character)), TRUE, + "OLC: %s iedit a unique #%d", GET_NAME(d->character), GET_OBJ_VNUM(obj)); + if (d->character) { + REMOVE_BIT_AR(PLR_FLAGS(d->character), PLR_WRITING); + STATE(d) = CON_PLAYING; + act("$n stops using OLC.", TRUE, d->character, 0, 0, TO_ROOM); + } + free(d->olc); + d->olc = NULL; + } return; case '1': write_to_output(d, "Enter namelist : "); @@ -1042,8 +1078,12 @@ void oedit_parse(struct descriptor_data break; case 's': case 'S': + if (STATE(d) != CON_IEDIT) { OLC_SCRIPT_EDIT_MODE(d) = SCRIPT_MAIN_MENU; dg_script_menu(d); + } else { + write_to_output(d, "\r\nScripts cannot be modified on individual objects.\r\nEnter choice : "); + } return; default: oedit_disp_menu(d); @@ -1439,3 +1479,70 @@ void oedit_string_cleanup(struct descrip break; } } + +/* this is all iedit stuff */ +void iedit_setup_existing(struct descriptor_data *d, struct obj_data *real_num) +{ + struct obj_data *obj; + + OLC_IOBJ(d) = real_num; + + obj = create_obj(); + copy_object(obj,real_num); + + /* free any assigned scripts */ + if (SCRIPT(obj)) + extract_script(obj, OBJ_TRIGGER); + SCRIPT(obj) = NULL; + /* find_obj helper */ + remove_from_lookup_table(GET_ID(obj)); + + OLC_OBJ(d) = obj; + OLC_IOBJ(d) = real_num; + OLC_VAL(d) = 0; + oedit_disp_menu(d); +} + +ACMD(do_iedit) { + struct obj_data *k; + int found=0; + extern struct room_data *world; + char arg[MAX_INPUT_LENGTH]; + + one_argument(argument, arg); + + if(!*arg || !*argument) { + send_to_char(ch, "You must supply an object name.\r\n"); + } + + if ((k = get_obj_in_equip_vis(ch, arg, NULL, ch->equipment))) { + found=1; + } else if ((k = get_obj_in_list_vis(ch, arg, NULL, ch->carrying))) { + found=1; + } else if ((k = get_obj_in_list_vis(ch, arg, NULL, world[ch->in_room].contents))) { + found =1; + } else if ((k = get_obj_vis(ch, arg, NULL))) { + found=1; + } + + if (!found) { + send_to_char(ch, "Couldn't find that object. Sorry.\r\n"); + return; + } + + /* set up here */ + CREATE(OLC(ch->desc), struct oasis_olc_data, 1); + SET_BIT_AR(GET_OBJ_EXTRA(k), ITEM_UNIQUE_SAVE); + + SET_BIT_AR(PLR_FLAGS(ch), PLR_WRITING); + iedit_setup_existing(ch->desc,k); + OLC_VAL(ch->desc) = 0; + + act("$n starts using OLC.", TRUE, ch, 0, 0, TO_ROOM); + + STATE(ch->desc) = CON_IEDIT; + + return; +} + + diff -BbuprN -x '*.o' suntzu/src/players.c yoda/src/players.c --- suntzu/src/players.c 2004-08-29 09:39:31.000000000 -0500 +++ yoda/src/players.c 2004-09-06 19:41:45.000000000 -0500 @@ -294,6 +294,7 @@ int load_char(const char *name, struct c GET_MAX_MOVE(ch) = PFDEF_MAXMOVE; SPEAKING(ch) = PFDEF_SPEAKING; GET_OLC_ZONE(ch) = PFDEF_OLC; + GET_HOST(ch) = NULL; while (get_line(fl, line)) { tag_argument(line, tag); @@ -352,7 +353,11 @@ int load_char(const char *name, struct c if (!strcmp(tag, "Hit ")) load_HMVS(ch, line, LOAD_HIT); else if (!strcmp(tag, "Hite")) GET_HEIGHT(ch) = atoi(line); else if (!strcmp(tag, "Home")) GET_HOME(ch) = atoi(line); - else if (!strcmp(tag, "Host")) GET_HOST(ch) = strdup(line); + else if (!strcmp(tag, "Host")) { + if (GET_HOST(ch)) + free(GET_HOST(ch)); + GET_HOST(ch) = strdup(line); + } else if (!strcmp(tag, "Hrol")) GET_HITROLL(ch) = atoi(line); else if (!strcmp(tag, "Hung")) GET_COND(ch, FULL) = atoi(line); break; @@ -494,8 +499,14 @@ void save_char(struct char_data * ch) * before saving. */ if (ch->desc) { - if (ch->desc->host && *ch->desc->host) + if (ch->desc->host && *ch->desc->host) { + if (!GET_HOST(ch)) + GET_HOST(ch) = strdup(ch->desc->host); + else if (GET_HOST(ch) && !strcmp(GET_HOST(ch), ch->desc->host)) { + free(GET_HOST(ch)); GET_HOST(ch) = strdup(ch->desc->host); + } + } /* * We only update the time.played and time.logon if the character diff -BbuprN -x '*.o' suntzu/src/shop.c yoda/src/shop.c --- suntzu/src/shop.c 2004-03-30 19:50:25.000000000 -0600 +++ yoda/src/shop.c 2004-09-06 19:17:12.000000000 -0500 @@ -608,9 +608,10 @@ void shopping_buy(char *arg, struct char bought++; /* Test if producing shop ! */ - if (shop_producing(obj, shop_nr)) + if (shop_producing(obj, shop_nr)) { obj = read_object(GET_OBJ_RNUM(obj), REAL); - else { + add_unique_id(obj); + } else { obj_from_char(obj); SHOP_SORT(shop_nr)--; } diff -BbuprN -x '*.o' suntzu/src/spells.c yoda/src/spells.c --- suntzu/src/spells.c 2004-03-30 19:44:22.000000000 -0600 +++ yoda/src/spells.c 2004-09-06 19:17:12.000000000 -0500 @@ -446,6 +446,7 @@ ASPELL(spell_portal) GET_OBJ_VAL(portal, 4) = 50; GET_OBJ_VAL(portal, 5) = 50; GET_OBJ_TIMER(portal) = (int) (GET_LEVEL(ch) / 10); + add_unique_id(portal); obj_to_room(portal, IN_ROOM(ch)); act("$n opens a portal in thin air.", TRUE, ch, 0, 0, TO_ROOM); @@ -457,6 +458,7 @@ ASPELL(spell_portal) GET_OBJ_VAL(tportal, 4) = 50; GET_OBJ_VAL(tportal, 5) = 50; GET_OBJ_TIMER(tportal) = (int) (GET_LEVEL(ch) / 10); + add_unique_id(tportal); obj_to_room(tportal, IN_ROOM(victim)); act("A shimmering portal appears out of thin air.", TRUE, victim, 0, 0, TO_ROOM); diff -BbuprN -x '*.o' suntzu/src/structs.h yoda/src/structs.h --- suntzu/src/structs.h 2004-08-31 20:57:22.000000000 -0500 +++ yoda/src/structs.h 2004-09-29 21:05:26.000000000 -0500 @@ -30,7 +30,7 @@ #define USE_AUTOEQ 1 /* TRUE/FALSE aren't defined yet. */ /* CWG Version String */ -#define CWG_VERSION "CWG SunTzu - 1.08.31" +#define CWG_VERSION "CWG SunTzu - 1.09.30" /* preamble *************************************************************/ @@ -42,7 +42,7 @@ * * NOTE: This will likely be unconditionally unsigned later. */ -#define CIRCLE_UNSIGNED_INDEX 0 /* 0 = signed, 1 = unsigned */ +#define CIRCLE_UNSIGNED_INDEX 1 /* 0 = signed, 1 = unsigned */ #if CIRCLE_UNSIGNED_INDEX # define IDXTYPE ush_int @@ -101,6 +101,8 @@ #define ROOM_BFS_MARK 15 /* (R) breath-first srch mrk */ #define ROOM_VEHICLE 16 /* Requires a vehicle to pass */ #define ROOM_UNDERGROUND 17 /* Room is below ground */ +#define ROOM_CURRENT 18 /* Room move with random currents */ +#define ROOM_TIMED_DT 19 /* Room has a timed death trap */ /* Exit info: used in room_data.dir_option.exit_info */ @@ -275,7 +277,9 @@ #define PRF_AUTOSPLIT 28 /* Split gold with group */ #define PRF_FULL_EXIT 29 /* Shows full autoexit details */ #define PRF_AUTOSAC 30 /* Sacrifice a corpse */ -#define PRF_VIEWORDER 31 /* if you want to see the newest first */ +#define PRF_VIEWORDER 31 /* If you want to see the newest first */ +#define PRF_NOCOMPRESS 32 /* If you want to force MCCP2 off */ +#define PRF_AUTOASSIST 33 /* Auto-assist toggle */ /* Player autoexit levels: used as an index to exitlevels */ #define EXIT_OFF 0 /* Autoexit off */ @@ -353,6 +357,7 @@ #define CON_QANSI 31 /* Ask for ANSI support */ #define CON_GEDIT 32 /* OLC mode - guild editor */ #define CON_QROLLSTATS 33 /* OLC mode - guild editor */ +#define CON_IEDIT 34 /* OLC mode - individual edit */ /* Character equipment positions: used as index for char_data.equipment[] */ /* NOTE: Don't confuse these constants with the ITEM_ bitvectors @@ -661,6 +666,7 @@ #define PULSE_SANITY (30 RL_SEC) #define PULSE_USAGE (5 * 60 RL_SEC) /* 5 mins */ #define PULSE_TIMESAVE (30 * 60 RL_SEC) /* should be >= SECS_PER_MUD_HOUR */ +#define PULSE_CURRENT (10 RL_SEC) /* Variables for the output buffering system */ #define MAX_SOCK_BUF (12 * 1024) /* Size of kernel's sock buf */ @@ -805,6 +811,9 @@ struct obj_data { struct obj_data *contains; /* Contains objects */ long id; /* used by DG triggers */ + time_t generation; /* creation time for dupe check */ + unsigned long long unique_id; /* random bits for dupe check */ + struct trig_proto_list *proto_script; /* list of default triggers */ struct script_data *script; /* script info for the object */ @@ -884,6 +893,8 @@ struct room_data { struct obj_data *contents; /* List of items in room */ struct char_data *people; /* List of NPC / PC in room */ + + int timed; /* For timed Dt's */ }; /* ====================================================================== */ @@ -1201,6 +1212,21 @@ struct txt_q { struct txt_block *tail; }; +struct compr { + int state; /* 0 - off. 1 - waiting for response. 2 - compress2 on */ + +#ifdef HAVE_ZLIB_H + Bytef *buff_out; + int total_out; /* size of input buffer */ + int size_out; /* size of data in output buffer */ + + Bytef *buff_in; + int total_in; /* size of input buffer */ + int size_in; /* size of data in input buffer */ + + z_streamp stream; +#endif /* HAVE_ZLIB_H */ +}; struct descriptor_data { socket_t descriptor; /* file descriptor for socket */ @@ -1235,6 +1261,7 @@ struct descriptor_data { struct descriptor_data *snoop_by; /* And who is snooping this char */ struct descriptor_data *next; /* link to next descriptor */ struct oasis_olc_data *olc; /* OLC info */ + struct compr *comp; /* compression info */ }; @@ -1408,6 +1435,9 @@ struct game_data { char *NOEFFECT; /* 'Nothing seems to happen.' */ int disp_closed_doors; /* Display closed doors in autoexit? */ int reroll_player; /* Players can reroll stats on creation */ + int enable_compression; /* Enable MCCP2 stream compression */ + int enable_languages; /* Enable spoken languages */ + int all_items_unique; /* Treat all items as unique */ }; diff -BbuprN -x '*.o' suntzu/src/sysdep.h yoda/src/sysdep.h --- suntzu/src/sysdep.h 2004-01-18 18:20:47.000000000 -0600 +++ yoda/src/sysdep.h 2004-09-06 16:18:41.000000000 -0500 @@ -241,6 +241,9 @@ extern void abort (), exit (); #define assert(arg) #endif +#ifdef HAVE_ZLIB_H +# include <zlib.h> +#endif /* Header files only used in comm.c and some of the utils */ diff -BbuprN -x '*.o' suntzu/src/utils.c yoda/src/utils.c --- suntzu/src/utils.c 2004-08-14 10:48:22.000000000 -0500 +++ yoda/src/utils.c 2004-09-01 18:15:09.000000000 -0500 @@ -754,14 +754,13 @@ int room_is_dark(room_rnum room) /* I shouldn't need to include the following line, right? */ #include <windows.h> -int xdir_scan(const char *dir_name, struct xap_dir *xapdirp2) { +int xdir_scan(char *dir_name, struct xap_dir *xapdirptest) { HANDLE dirhandle; - int i; WIN32_FIND_DATA wtfd; int i, total = 0; struct xap_dir *xapdirp; - xapdirp = xapdirp2; + xapdirp = xapdirptest; xapdirp->current = -1; xapdirp->total = -1; @@ -787,8 +786,10 @@ int xdir_scan(const char *dir_name, stru xapdirp->namelist = (char **) malloc(sizeof(char *) * total); - for(i =0; i < total && FindNextFile(dirhandle, &wtfd);i++) { + i = 0; + while(FindNextFile(dirhandle, &wtfd) != 0) { xapdirp->namelist[i] = strdup(wtfd.cFileName); + i++; } FindClose(dirhandle); @@ -811,7 +812,7 @@ char *xdir_get_next(struct xap_dir *xd) #include <dirent.h> #include <unistd.h> -int xdir_scan(const char *dir_name, struct xap_dir *xapdirp) { +int xdir_scan(char *dir_name, struct xap_dir *xapdirp) { xapdirp->total = scandir(dir_name,&(xapdirp->namelist),0,alphasort); xapdirp->current = 0; @@ -877,7 +877,6 @@ int insure_directory(char *path, int isf #ifndef S_ISDIR #define S_ISDIR(mode) (((mode) & S_IFMT) == S_IFDIR) #endif - //#ifdef CIRCLE_WINDOWS // if(!_stat(chopsuey,&st) && S_ISDIR(st.st_mode)) { //#else diff -BbuprN -x '*.o' suntzu/src/utils.h yoda/src/utils.h --- suntzu/src/utils.h 2004-07-25 14:52:09.000000000 -0500 +++ yoda/src/utils.h 2004-09-18 11:56:35.000000000 -0500 @@ -631,6 +631,9 @@ void update_pos(struct char_data *victim #define CONFIG_NOEFFECT config_info.play.NOEFFECT #define CONFIG_DISP_CLOSED_DOORS config_info.play.disp_closed_doors #define CONFIG_REROLL_PLAYER_CREATION config_info.play.reroll_player +#define CONFIG_ENABLE_COMPRESSION config_info.play.enable_compression +#define CONFIG_ENABLE_LANGUAGES config_info.play.enable_languages +#define CONFIG_ALL_ITEMS_UNIQUE config_info.play.all_items_unique /** Crash Saves **/ #define CONFIG_FREE_RENT config_info.csd.free_rent @@ -691,7 +694,7 @@ struct xap_dir { #endif -int xdir_scan(const char *dir_name, struct xap_dir *xapdirp); +int xdir_scan(char *dir_name, struct xap_dir *xapdirp); int xdir_get_total(struct xap_dir *xd); char *xdir_get_name(struct xap_dir *xd, int num); char *xdir_next(struct xap_dir *xd);