PennMUSH Community

Changeset 453

Show
Ignore:
Timestamp:
08/16/06 00:48:06 (2 years ago)
Author:
pennmush
Message:

PennMUSH 1.7.7p27 Archival

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • 1.7.7/CHANGES.176

    r441 r453  
    1313 
    1414========================================================================== 
     15 
     16Version 1.7.6 patchlevel 15                     January 25, 2004 
     17 
     18Fixes: 
     19   * Improved freebsd hints. [SW] 
     20   * Channel user memory allocation error corrected. 
     21 
    1522 
    1623Version 1.7.6 patchlevel 14                     September 23, 2003 
  • 1.7.7/CHANGES.177

    r451 r453  
    1818 
    1919========================================================================== 
     20 
     21Version 1.7.7 patchlevel 27                     January 25, 2004 
     22 
     23Minor Changes: 
     24  * New etimefmt() formatting codes to make it easier to get nice-looking 
     25    results without 0-valued times. Suggested by ranko_usa@M*U*S*H. [SW] 
     26  * Autodetect existence of /usr/kerberos/include to make compile  
     27    easier for RH9 sufferers. 
     28  * src/Makefile is now autobuilt from src/Makefile.SH. IF you use 
     29    local hacks that require src/Makefile, this is likely to be a problem 
     30    for you. You'll want to start patching Makefile.SH instead. 
     31  * Fewer warning flags are now provided to the compiler by default. 
     32    You can set your own warning flags instead by defining the 
     33    warnings variable in config.over. 
     34Fixes: 
     35  * The startups option actually does what it's supposed to now. 
     36  * Potential DOS in etimefmt fixed. Report by Ashen-Shugar. [SW] 
     37  * Code cleanup. ok_tag_attribute should work. [SW] 
     38  * Channels are automatically ungagged only on initial connection 
     39    (not reconnection, partial disconnection, etc.). Suggested by 
     40    Mordie@M*U*S*H. 
     41  * notify() calls during startup would crash. Reported by Mordie@M*U*S*H. [SW] 
     42  * Fixes from 1.7.6p15. 
     43 
    2044 
    2145Version 1.7.7 patchlevel 26                     December 15, 2003 
  • 1.7.7/Configure

    r451 r453  
    259259ldflags='' 
    260260lkflags='' 
     261locincpth='' 
    261262optimize='' 
     263warnings='' 
    262264cdecl='' 
    263265cf_email='' 
     
    578580defvoidused=15 
    579581 
     582: Possible local include directories to search. 
     583: Set locincpth to "" in a hint file to defeat local include searches. 
     584locincpth="/usr/local/include /opt/local/include /usr/gnu/include" 
     585locincpth="$locincpth /opt/gnu/include /usr/GNU/include /opt/GNU/include" 
     586locincpth="$locincpth /usr/kerberos/include" 
     587: 
    580588: no include file wanted by default 
    581589inclwanted='' 
     
    26472655  2*) dflt='-g -O' ;; 
    26482656  *egcs*) dflt='-g -O' ;; 
    2649    *) dflt='-g' ;; 
    2650   esac 
    2651 ;; 
     2657  *) dflt='-g' ;; 
     2658  esac ;; 
    26522659*) dflt="$optimize";; 
    26532660esac 
    26542661$cat <<EOH 
    26552662 
    2656 Some C compilers have problems with their optimizers. By default, $package 
    2657 compiles with only the -g flag to use the debugger, unless you're using gcc, 
    2658 in which case $package compiles with -g -O to use both the optimizer and 
    2659 the debugger. If you'd prefer to specify something else, do it here. 
    2660 To use neither flag, specify the word "none". 
     2663Some C compilers have problems with their optimizers. By default, $package 
     2664compiles with the -O flag to use the optimizer.  Alternately, you might want 
     2665to use the symbolic debugger, which uses the -g flag (on traditional Unix 
     2666systems).  Either flag can be specified here.  To use neither flag, specify 
     2667the word "none". 
    26612668 
    26622669EOH 
     
    26682675esac 
    26692676 
     2677case "$warnings" in 
     2678' ') dflt='none';; 
     2679'') case $gccversion in 
     2680  2*|egcs*) dflt='-W -Wall -Wno-comment' ;; 
     2681  *) dflt='none' ;; 
     2682  esac ;; 
     2683*) dflt="$warnings";; 
     2684esac 
     2685$cat <<EOH 
     2686 
     2687EOH 
     2688rp="What compiler warning flags should be used?" 
     2689. ./myread 
     2690warnings="$ans" 
     2691case "$warnings" in 
     2692'none') warnings=" ";; 
     2693esac 
     2694 
    26702695dflt='' 
    2671 case "$ccflags" in 
    2672 '')  
     2696: We will not override a previous value, but we might want to 
     2697: augment a hint file 
     2698case "$hint" in 
     2699none|recommended) 
    26732700    case "$gccversion" in 
    26742701    1*) dflt='-fpcc-struct-return' ;; 
     
    26862713 
    26872714case "$mips_type" in 
    2688 *BSD*) ;; 
    2689 '') ;; 
    2690 *) inclwanted="$inclwanted $usrinc/bsd";; 
     2715*BSD*|'') inclwanted="$locincpth $usrinc";; 
     2716*) inclwanted="$locincpth $inclwanted $usrinc/bsd";; 
    26912717esac 
    26922718for thisincl in $inclwanted; do 
     
    27202746    set signal.h LANGUAGE_C; eval $inctest 
    27212747fi 
    2722 set signal.h NO_PROTOTYPE; eval $inctest 
    2723 set signal.h _NO_PROTO; eval $inctest 
     2748 
     2749case "$hint" in 
     2750none|recommended) dflt="$ccflags $dflt" ;; 
     2751*) dflt="$ccflags";; 
     2752esac 
    27242753 
    27252754case "$dflt" in 
    2726 '') dflt=none;; 
    2727 esac 
    2728 case "$ccflags" in 
    2729 '') ;; 
    2730 *) dflt="$ccflags";; 
     2755''|' ') dflt=none;; 
    27312756esac 
    27322757$cat <<EOH 
     
    27342759Your C compiler may want other flags.  For this question you should include 
    27352760-I/whatever and -DWHATEVER flags and any other flags used by the C compiler, 
    2736 but you should NOT include libraries or ld flags like -lwhatever.   
    2737 If your system had hints, the defaults are usually correct. 
     2761but you should NOT include libraries or ld flags like -lwhatever.  If you 
     2762want $package to honor its debug switch, you should include -DDEBUG here. 
     2763 
    27382764To use no flags, specify the word "none". 
    27392765 
    27402766EOH 
    2741 case "$gccversion" in 
    2742     2*)  
    2743             pennmushgccflags="-Wall -Wshadow -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -Wold-style-cast -Wnested-externs -Wmissing-declarations -W -Wcast-align -Wbad-function-cast -Wno-comment -Wundef -Wpointer-arith" 
    2744             case "$dflt" in 
    2745         'none') dflt="$pennmushgccflags" ;; 
    2746         *-W*) ;; 
    2747            *) dflt="$dflt $pennmushgccflags" ;; 
    2748         esac 
    2749         ;; 
    2750     egcs*)  
    2751             pennmushgccflags="-Wall -Wshadow -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -Wold-style-cast -Wnested-externs -Wmissing-declarations -W -Wcast-align -Wbad-function-cast -Wno-comment -Wundef -Wpointer-arith" 
    2752             case "$dflt" in 
    2753         'none') dflt="$pennmushgccflags" ;; 
    2754         *-W*) ;; 
    2755            *) dflt="$dflt $pennmushgccflags" ;; 
    2756         esac 
    2757         ;; 
    2758 esac 
    27592767set X $dflt 
    27602768shift 
     
    28262834        dflt='' 
    28272835    fi 
    2828     for thislibpth in $libpth; do 
    2829       if $test -d $thislibpth; then 
    2830             case "$dflt" in 
    2831             *$thislibpth*) ;; 
    2832             *) dflt="$dflt -L$thislibpth";; 
    2833             esac 
    2834       fi 
    2835     done 
    28362836    case "$ccflags" in 
    28372837    *-posix*) dflt="$dflt -posix" ;; 
    28382838    esac 
    2839     case "$dflt" in 
    2840     '') dflt='none' ;; 
     2839    ;; 
     2840*) dflt="$ldflags";; 
     2841esac 
     2842 
     2843: Try to guess additional flags to pick up local libraries. 
     2844for thislibdir in $libpth; do 
     2845    case " $loclibpth " in 
     2846    *" $thislibdir "*) 
     2847        case "$dflt " in  
     2848        *"-L$thislibdir "*) ;; 
     2849        *)  dflt="$dflt -L$thislibdir" ;; 
     2850        esac 
     2851        ;; 
    28412852    esac 
    2842     ;; 
    2843 *) dflt="$ldflags";; 
    2844 esac 
    2845 echo " " 
     2853done 
     2854 
     2855case "$dflt" in 
     2856'') dflt='none' ;; 
     2857esac 
     2858 
     2859$cat <<EOH 
     2860 
     2861Your C linker may need flags.  For this question you should 
     2862include -L/whatever and any other flags used by the C linker, but you 
     2863should NOT include libraries like -lwhatever. 
     2864 
     2865Make sure you include the appropriate -L/path flags if your C linker 
     2866does not normally search all of the directories you specified above, 
     2867namely 
     2868    $libpth 
     2869To use no flags, specify the word "none". 
     2870 
     2871EOH 
     2872 
    28462873rp="Any additional ld flags (NOT including libraries)?" 
    28472874. ./myread 
     
    28682895$cat > try.c <<'EOF' 
    28692896#include <stdio.h> 
    2870 int main() { exit(0); } 
     2897main() { exit(0); } 
    28712898EOF 
    28722899dflt=y 
    2873 if sh -c "$cc $optimize $ccflags $ldflags try.c -o try" >>try.msg 2>&1; then 
     2900if sh -c "$cc $optimize $ccflags try.c -o try $ldflags" >>try.msg 2>&1; then 
    28742901    if sh -c './try' >>try.msg 2>&1; then 
    28752902        dflt=n 
     
    70327059ln='$ln' 
    70337060lns='$lns' 
     7061locincpth='$locincpth' 
    70347062loclibpth='$loclibpth' 
    70357063lp='$lp' 
     
    71147142vi='$vi' 
    71157143voidflags='$voidflags' 
     7144warnings='$warnings' 
    71167145xlibpth='$xlibpth' 
    71177146zcat='$zcat' 
  • 1.7.7/INSTALL

    r433 r453  
    8888 
    89891. On win32 only, install proper tools or read win32/README.txt. 
    90 2. sh Configure -d 
     902. sh Configure -d or some variant 
    91913. create options.h, or make update 
    92924. make install 
  • 1.7.7/MANIFEST

    r451 r453  
    4949hdrs/strtree.h 
    5050hdrs/version.h 
    51 src/Makefile 
     51src/Makefile.SH 
    5252src/access.c 
    5353src/announce.c 
  • 1.7.7/Makefile.SH

    r451 r453  
    4848$make_set_make 
    4949CC=$cc 
    50 CCFLAGS=$optimize -I.. -I../hdrs $ccflags 
     50CCFLAGS=$optimize -I.. -I../hdrs $ccflags $warnings 
    5151LDFLAGS=$ldflags 
    5252CLIBS=$libs $cryptlib $libssl $libcrypto 
  • 1.7.7/Patchlevel

    r451 r453  
    11Do not edit this file. It is maintained by the official PennMUSH patches. 
    2 This is PennMUSH 1.7.7p26 
     2This is PennMUSH 1.7.7p27 
  • 1.7.7/game/txt/hlp/pennfunc.hlp

    r451 r453  
    36153615  a minimum width for the expanded code. The capital letter codes 
    36163616  are the same as the lower case codes if you don't provide a width. 
     3617  An 'x' before the code (But after any number) will automatically add 
     3618  a d, h, m, or s suffix to the time, and a 'z' will not display anything 
     3619  if the field's value is 0. x and z can be combined. 
     3620 
     3621  Continued in HELP ETIMEFMT3 
     3622& ETIMEFMT3 
     3623  Some examples: 
     3624 
     3625  > think etimefmt($2h:$2M, 3700) 
     3626   1:01 
     3627  > think etimefmt(You have $m minutes and $s seconds to go, 78) 
     3628  You have 1 minutes and 18 seconds to go 
     3629  > think squish(etimefmt(Connected for $zxd $xzh $zxm $xzs, conn(me))) 
     3630  Connected for 5h 24m 45s 
    36173631& TIMEFMT() 
    36183632  timefmt(<format>[, <secs>]) 
  • 1.7.7/game/txt/hlp/pennv176.hlp

    r441 r453  
     1& 1.7.6p15 
     2Version 1.7.6 patchlevel 15                     January 25, 2004 
     3 
     4Fixes: 
     5   * Improved freebsd hints. [SW] 
     6   * Channel user memory allocation error corrected. 
     7 
     8 
    19& 1.7.6p14 
    210Version 1.7.6 patchlevel 14                     September 23, 2003 
  • 1.7.7/game/txt/hlp/pennv177.hlp

    r451 r453  
    1 & 1.7.7p26 
     1& 1.7.7p27 
    22& changes 
    33This is a list of changes in this patchlevel which are probably of 
     
    1212be read in 'help patchlevels'. 
    1313 
     14Version 1.7.7 patchlevel 27                     January 25, 2004 
     15 
     16Minor Changes: 
     17  * New etimefmt() formatting codes to make it easier to get nice-looking 
     18    results without 0-valued times. Suggested by ranko_usa@M*U*S*H. [SW] 
     19  * Autodetect existence of /usr/kerberos/include to make compile  
     20    easier for RH9 sufferers. 
     21  * src/Makefile is now autobuilt from src/Makefile.SH. IF you use 
     22    local hacks that require src/Makefile, this is likely to be a problem 
     23    for you. You'll want to start patching Makefile.SH instead. 
     24  * Fewer warning flags are now provided to the compiler by default. 
     25    You can set your own warning flags instead by defining the 
     26    warnings variable in config.over. 
     27Fixes: 
     28  * The startups option actually does what it's supposed to now. 
     29  * Potential DOS in etimefmt fixed. Report by Ashen-Shugar. [SW] 
     30  * Code cleanup. ok_tag_attribute should work. [SW] 
     31  * Channels are automatically ungagged only on initial connection 
     32    (not reconnection, partial disconnection, etc.). Suggested by 
     33    Mordie@M*U*S*H. 
     34  * notify() calls during startup would crash. Reported by Mordie@M*U*S*H. [SW] 
     35  * Fixes from 1.7.6p15. 
     36 
     37 
     38& 1.7.7p26 
    1439Version 1.7.7 patchlevel 26                     December 15, 2003 
    1540 
  • 1.7.7/game/txt/hlp/pennvOLD.hlp

    r451 r453  
    44194419 
    442044201.7.7: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 
    4421        19, 20, 21, 22, 23, 24, 25, 26 
    4422 1.7.6: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14 
     4421       19, 20, 21, 22, 23, 24, 25, 26, 27 
     44221.7.6: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 
    442344231.7.5: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12 
    442444241.7.4: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 
  • 1.7.7/hdrs/externs.h

    r451 r453  
    120120/** A notify_anything lookup function type definition */ 
    121121typedef dbref (*na_lookup) (dbref, void *); 
     122extern void notify_anything(dbref speaker, na_lookup func, 
     123                void *fdata, 
     124                char *(*nsfunc) (dbref, 
     125                         na_lookup func, 
     126                         void *, int), int flags, 
     127                const char *message); 
    122128extern void notify_anything_loc(dbref speaker, na_lookup func, 
    123129                void *fdata, 
     
    137143#endif 
    138144 
    139 #define notify_anything(speaker, f1, f2, f3, flags, msg) \ 
    140   notify_anything_loc(speaker, f1, f2, f3, flags, msg, Location(speaker)) 
    141145#define notify(p,m)           notify_anything(orator, na_one, &(p), NULL, 0, m) 
    142146#define notify_must_puppet(p,m)           notify_anything(orator, na_one, &(p), NULL, NA_MUST_PUPPET, m) 
  • 1.7.7/hdrs/version.h

    r451 r453  
    1 #define VERSION "PennMUSH version 1.7.7 patchlevel 26 [12/15/2003]" 
    2 #define SHORTVN "PennMUSH 1.7.7p26
    3 #define NUMVERSION 001007007026 
     1#define VERSION "PennMUSH version 1.7.7 patchlevel 27 [01/25/2004]" 
     2#define SHORTVN "PennMUSH 1.7.7p27
     3#define NUMVERSION 001007007027 
  • 1.7.7/hints/freebsd.sh

    r335 r453  
    11usenm=false 
    2 inclwanted='/usr/local/include' 
    32i_malloc='undef' 
    43i_values='undef' 
     4ccflags='-D_POSIX_C_SOURCE=2 -I/usr/local/include' 
     5d_attribut=true 
    56 
  • 1.7.7/po/Makefile

    r433 r453  
    22 
    33POFILES=ru_RU.po nl_NL.po sv_SE.po hu_HU.po es_ES.po pt_BR.po fr_FR.po \ 
    4 da_DK.po de_DE.po no_NO.po pl_PL.po ro_RO.po 
     4da_DK.po de_DE.po no_NO.po pl_PL.po ro_RO.po id_ID.po 
    55 
    66.pox.po: $*.pox pennmush.pot 
  • 1.7.7/src/bsd.c

    r451 r453  
    172172int shutdown_flag = 0;      /**< Is it time to shut down? */ 
    173173extern int paranoid_dump;   /**< Are we doing a paranoid dump? */ 
    174 void chat_player_announce(dbref player, char *msg); 
     174void chat_player_announce(dbref player, char *msg, int ungag); 
    175175 
    176176static int login_number = 0; 
     
    36983698 
    36993699#ifdef CHAT_SYSTEM 
    3700   chat_player_announce(player, tbuf1); 
     3700  chat_player_announce(player, tbuf1, (num == 1)); 
    37013701#endif 
    37023702 
     
    38353835 
    38363836#ifdef CHAT_SYSTEM 
    3837   chat_player_announce(player, tbuf1); 
     3837  chat_player_announce(player, tbuf1, 0); 
    38383838#endif 
    38393839 
  • 1.7.7/src/extchat.c

    r451 r453  
    7373static void channel_leave_self(dbref player, const char *name); 
    7474static void do_channel_who(dbref player, CHAN *chan); 
    75 void chat_player_announce(dbref player, char *msg); 
     75void chat_player_announce(dbref player, char *msg, int ungag); 
    7676static int ok_channel_name(const char *n); 
    7777static void channel_allocate_buffer(CHAN *c, int lines); 
     
    25282528 
    25292529/** Tell players on a channel when someone connects or disconnects. 
    2530  * \param player player to announce to
     2530 * \param player player that is connecting or disconnecting
    25312531 * \param msg message to announce. 
     2532 * \param ungag if 1, remove any channel gags the player has. 
    25322533 */ 
    25332534void 
    2534 chat_player_announce(dbref player, char *msg
     2535chat_player_announce(dbref player, char *msg, int ungag
    25352536{ 
    25362537  CHAN *c; 
     
    25502551                 buff, NULL); 
    25512552      } 
    2552       CUtype(u) &= ~CU_GAG; 
     2553      if (ungag) 
     2554    CUtype(u) &= ~CU_GAG; 
    25532555    } 
    25542556  } 
  • 1.7.7/src/funlist.c

    r451 r453  
    18541854{ 
    18551855  char c; 
    1856   int el, count, len
     1856  int el, count, len = -1
    18571857  char *sptr, *eptr; 
    18581858 
  • 1.7.7/src/funmisc.c

    r451 r453  
    601601  char tbuf[BUFFER_LEN], *tp; 
    602602  char const *sp; 
    603   char sep
     603  char sep = ' '
    604604 
    605605  tbuf[0] = '\0'; 
     
    611611    } else if (*args[nargs]) 
    612612      sep = *args[nargs]; 
    613     else 
    614       sep = ' '; 
    615613  } 
    616614 
  • 1.7.7/src/funtime.c

    r433 r453  
    402402  const char *c; 
    403403  char *w; 
     404  int include_suffix, even_if_0, in_format_flags; 
    404405 
    405406  days = secs / 86400; 
     
    418419      else 
    419420    pad = 1; 
    420       switch (*w) { 
    421       case '$': 
    422     if (pad) 
    423       safe_format(buff, bp, "%*c", width, '$'); 
    424     else 
     421      if (width < 0) 
     422    width = 0; 
     423      else if (width >= BUFFER_LEN) 
     424    width = BUFFER_LEN - 1; 
     425      even_if_0 = in_format_flags = 1; 
     426      include_suffix = 0; 
     427      while (in_format_flags) { 
     428    switch (*w) { 
     429    case 'x': 
     430    case 'X': 
     431      include_suffix = 1; 
     432      w++; 
     433      break; 
     434    case 'z': 
     435    case 'Z': 
     436      even_if_0 = 0; 
     437      w++; 
     438      break; 
     439    case '$': 
     440      in_format_flags = 0; 
     441      if (pad) 
     442        safe_format(buff, bp, "%*c", width, '$'); 
     443      else 
     444        safe_chr('$', buff, bp); 
     445      break; 
     446    case 's': 
     447      in_format_flags = 0; 
     448      if (secs || even_if_0) { 
     449        if (pad) 
     450          safe_format(buff, bp, "%*lu", width, secs); 
     451        else 
     452          safe_uinteger(secs, buff, bp); 
     453        if (include_suffix) 
     454          safe_chr('s', buff, bp); 
     455      } else if (pad) 
     456        safe_fill(' ', width + (include_suffix ? 1 : 0), buff, bp); 
     457      break; 
     458    case 'S': 
     459      in_format_flags = 0; 
     460      if (secs || even_if_0) { 
     461        if (pad) 
     462          safe_format(buff, bp, "%0*lu", width, secs); 
     463        else 
     464          safe_format(buff, bp, "%0lu", secs); 
     465        if (include_suffix) 
     466          safe_chr('s', buff, bp); 
     467      } else if (pad) 
     468        safe_fill(' ', width + (include_suffix ? 1 : 0), buff, bp); 
     469      break; 
     470    case 'm': 
     471      in_format_flags = 0; 
     472      if (mins || even_if_0) { 
     473        if (pad) 
     474          safe_format(buff, bp, "%*d", width, mins); 
     475        else 
     476          safe_integer(mins, buff, bp); 
     477        if (include_suffix) 
     478          safe_chr('m', buff, bp); 
     479      } else if (pad) 
     480        safe_fill(' ', width + (include_suffix ? 1 : 0), buff, bp); 
     481      break; 
     482    case 'M': 
     483      in_format_flags = 0; 
     484      if (mins || even_if_0) { 
     485        if (pad) 
     486          safe_format(buff, bp, "%0*d", width, mins); 
     487        else 
     488          safe_format(buff, bp, "%0d", mins); 
     489        if (include_suffix) 
     490          safe_chr('m', buff, bp); 
     491      } else if (pad) 
     492        safe_fill(' ', width + (include_suffix ? 1 : 0), buff, bp); 
     493      break; 
     494    case 'h': 
     495      in_format_flags = 0; 
     496      if (hours || even_if_0) { 
     497        if (pad) 
     498          safe_format(buff, bp, "%*d", width, hours); 
     499        else 
     500          safe_integer(hours, buff, bp); 
     501        if (include_suffix) 
     502          safe_chr('h', buff, bp); 
     503      } else if (pad) 
     504        safe_fill(' ', width + (include_suffix ? 1 : 0), buff, bp); 
     505      break; 
     506    case 'H': 
     507      in_format_flags = 0; 
     508      if (hours || even_if_0) { 
     509        if (pad) 
     510          safe_format(buff, bp, "%0*d", width, hours); 
     511        else 
     512          safe_format(buff, bp, "%0d", hours); 
     513        if (include_suffix) 
     514          safe_chr('h', buff, bp); 
     515      } else if (pad) 
     516        safe_fill(' ', width + (include_suffix ? 1 : 0), buff, bp); 
     517      break; 
     518    case 'd': 
     519      in_format_flags = 0; 
     520      if (days || even_if_0) { 
     521        if (pad) 
     522          safe_format(buff, bp, "%*d", width, days); 
     523        else 
     524          safe_integer(days, buff, bp); 
     525        if (include_suffix) 
     526          safe_chr('d', buff, bp); 
     527      } else if (pad) 
     528        safe_fill(' ', width + (include_suffix ? 1 : 0), buff, bp); 
     529      break; 
     530    case 'D': 
     531      in_format_flags = 0; 
     532      if (days || even_if_0) { 
     533        if (pad) 
     534          safe_format(buff, bp, "%0*d", width, days); 
     535        else 
     536          safe_format(buff, bp, "%0d", days); 
     537        if (include_suffix) 
     538          safe_chr('d', buff, bp); 
     539      } else if (pad) 
     540        safe_fill(' ', width + (include_suffix ? 1 : 0), buff, bp); 
     541      break; 
     542    default: 
     543      in_format_flags = 0; 
    425544      safe_chr('$', buff, bp); 
    426     break; 
    427       case 's': 
    428     if (pad) 
    429       safe_format(buff, bp, "%*lu", width, secs); 
    430     else 
    431       safe_uinteger(secs, buff, bp); 
    432     break; 
    433       case 'S': 
    434     if (pad) 
    435       safe_format(buff, bp, "%0*lu", width, secs); 
    436     else 
    437       safe_format(buff, bp, "%0lu", secs); 
    438     break; 
    439       case 'm': 
    440     if (pad) 
    441       safe_format(buff, bp, "%*d", width, mins); 
    442     else 
    443       safe_integer(mins, buff, bp); 
    444     break; 
    445       case 'M': 
    446     if (pad) 
    447       safe_format(buff, bp, "%0*d", width, mins); 
    448     else 
    449       safe_format(buff, bp, "%0d", mins); 
    450     break; 
    451       case 'h': 
    452     if (pad) 
    453       safe_format(buff, bp, "%*d", width, hours); 
    454     else 
    455       safe_integer(hours, buff, bp); 
    456     break; 
    457       case 'H': 
    458     if (pad) 
    459       safe_format(buff, bp, "%0*d", width, hours); 
    460     else 
    461       safe_format(buff, bp, "%0d", hours); 
    462     break; 
    463       case 'd': 
    464     if (pad) 
    465       safe_format(buff, bp, "%*d", width, days); 
    466     else 
    467       safe_integer(days, buff, bp); 
    468     break; 
    469       case 'D': 
    470     if (pad) 
    471       safe_format(buff, bp, "%0*d", width, days); 
    472     else 
    473       safe_format(buff, bp, "%0d", days); 
    474     break; 
    475       default: 
    476     safe_chr('$', buff, bp); 
    477     for (; c != w; c++) 
     545      for (; c != w; c++) 
     546        safe_chr(*c, buff, bp); 
    478547      safe_chr(*c, buff, bp); 
    479     safe_chr(*c, buff, bp); 
     548    } 
    480549      } 
    481550      c = w; 
  • 1.7.7/src/game.c

    r451 r453  
    671671      } 
    672672    } 
    673     if (!IsGarbage(thing) && !(Halted(thing))) 
     673    if (STARTUPS && !IsGarbage(thing) && !(Halted(thing))) 
    674674      (void) queue_attribute_noparent(thing, "STARTUP", thing); 
    675675  } 
  • 1.7.7/src/mysocket.c

    r449 r453  
    367367/* ARGSUSED */ 
    368368void 
    369 set_keepalive(int s
     369set_keepalive(int s __attribute__ ((__unused__))
    370370{ 
    371371#ifdef CAN_KEEPALIVE 
  • 1.7.7/src/notify.c

    r451 r453  
    980980} 
    981981 
     982/** Send a message to a series of dbrefs. 
     983 * This key function takes a speaker's utterance and looks up each 
     984 * object that should hear it. For each, it may need to render 
     985 * the utterance in a different fashion (with or without ansi, html, 
     986 * accents), but we cache each rendered version for efficiency. 
     987 * \param speaker dbref of object producing the message. 
     988 * \param func pointer to iterator function to look up each receiver. 
     989 * \param fdata initial data to pass to func. 
     990 * \param nsfunc function to call to do NOSPOOF formatting, or NULL. 
     991 * \param flags flags to pass in (such as NA_INTERACT) 
     992 * \param message message to render and transmit. 
     993 */ 
     994void 
     995notify_anything(dbref speaker, na_lookup func, 
     996        void *fdata, char *(*nsfunc) (dbref, na_lookup func, void *, 
     997                          int), int flags, 
     998        const char *message) 
     999{ 
     1000  dbref loc; 
     1001 
     1002  if (GoodObject(speaker)) 
     1003    loc = Location(speaker); 
     1004  else 
     1005    loc = NOTHING; 
     1006 
     1007  notify_anything_loc(speaker, func, fdata, nsfunc, flags, message, loc); 
     1008} 
     1009 
    9821010/** Send a message to a list of dbrefs on an attribute on an object. 
    9831011 * Be sure we don't send a message to the object itself! 
  • 1.7.7/src/predicat.c

    r451 r453  
    515515  /* subtract cost from who's pennies */ 
    516516 
    517   dbref tmp; 
     517  int tmp; 
    518518  if (NoPay(who)) 
    519519    return 1; 
     
    736736ok_password(const char *password) 
    737737{ 
    738   const char *scan; 
     738  const unsigned char *scan; 
    739739  if (*password == '\0') 
    740740    return 0; 
    741741 
    742   for (scan = password; *scan; scan++) { 
     742  for (scan = (const unsigned char *) password; *scan; scan++) { 
    743743    if (!(isprint(*scan) && !isspace(*scan))) { 
    744744      return 0; 
     
    777777 * Right now, this means: filter out SEND and XCH_CMD if 
    778778 * the player isn't a Wizard. Params may contain a space-separated 
    779  * list of tag=value pairs. 
     779 * list of tag=value pairs. It's probably possible to fool this 
     780 * checking. Needs more work, or removing HTML support.  
    780781 * \param player player using the attribute, or NOTHING for internal. 
    781782 * \param params the attributes to use. 
     
    786787ok_tag_attribute(dbref player, const char *params) 
    787788{ 
    788   const char *p, *q; 
     789  const unsigned char *p, *q; 
     790 
    789791  if (!GoodObject(player) || Wizard(player)) 
    790792    return 1; 
    791   p = params; 
     793  p = (const unsigned char *) params; 
    792794  while (*p) { 
    793795    while (*p && isspace(*p)) 
    794796      p++; 
    795797    q = p; 
    796     while (*q && !(isspace(*q) || (*q == '='))
     798    while (*q && *q != '='
    797799      q++; 
    798800    if (*q) { 
    799       *q++ = '\0'; 
    800       if (strcasecmp(p, "SEND") || strcasecmp(p, "XCH_CMD")) 
     801      size_t n = q - p; 
     802      /* Invalid params for non-wizards. Turn to a hashtable if we ever 
     803         get more? */ 
     804      if (strncasecmp(p, "SEND", n) == 0 || strncasecmp(p, "XCH_CMD", n) == 0) 
    801805    return 0; 
    802806      while (*q && isspace(*q)) 
     
    805809    q++; 
    806810      p = q; 
    807     } 
     811    } else 
     812      return 0;         /* Malformed param without an = */ 
     813 
    808814  } 
    809815  return 1; 
  • 1.7.7/src/set.c

    r451 r453  
    8585      if (PLAYER_NAME_SPACES) { 
    8686    if (*newname == '\"') { 
    87       for (; *newname && ((*newname == '\"') || isspace(*newname)); 
     87      for (; *newname && ((*newname == '\"') 
     88                  || isspace((unsigned char) *newname)); 
    8889           newname++) ; 
    8990      password = newname;