PennMUSH Community

Changeset 401

Show
Ignore:
Timestamp:
08/12/06 06:05:12 (2 years ago)
Author:
pennmush
Message:

PennMUSH 1.7.7p1 Archival

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • 1.7.7/CHANGES

    r399 r401  
    1818 
    1919========================================================================== 
     20 
     21Version 1.7.7 patchlevel 1                      December 17, 2002 
     22 
     23Minor Changes: 
     24  * ex obj/attrib returns the attribute value even if it's veiled, 
     25    if a specific (non-wildcard) attribute is given. Suggested by 
     26    Nhoj@M*U*S*H. 
     27Fixes: 
     28  * Win32 portability fixes. [EEH] 
     29  * Fixes from 1.7.6p2 
    2030 
    2131Version 1.7.7 patchlevel 0                      December 8, 2002 
  • 1.7.7/Patchlevel

    r399 r401  
    11Do not edit this file. It is maintained by the official PennMUSH patches. 
    2 This is PennMUSH 1.7.7p0 
     2This is PennMUSH 1.7.7p1 
  • 1.7.7/game/mushcnf.dst

    r399 r401  
    162162# for a single expression. This limits how much the stack size can increase, 
    163163# which could be useful if your host limits your stack (it will prevent 
    164 # a crash). 
     164# a crash). The higher your allowed stack size limit, the larger the 
     165# mush process can grow, and the higher this can be set. 
    165166# But remember that you need to recurse for every [ or { or function call 
    166167# in your code, and those add up quickly. So this must often be set quite 
    167168# high (e.g. 18000), alas. Setting it to '0' means unlimited. 
    168 call_limit
     169call_limit 1000
    169170 
    170171# The maximum number of milliseconds of CPU time that a single queue entry 
  • 1.7.7/game/restart

    r351 r401  
    5656# Prevent double-starting things. You may need to provide a pathname for 
    5757#  some of the commands. System V flavors need "ps -f" instead of "ps uwx". 
    58 mush=`ps uwx | grep $CONF_FILE | grep -v grep | wc -l` 
     58mush=`ps uwx | grep " $CONF_FILE" | grep -v grep | wc -l` 
    5959 
    6060 
  • 1.7.7/game/txt/hlp/penncmd.hlp

    r399 r401  
    821821See also: SAFE, GOING, DESTROY_OK   
    822822& @dig 
    823   @dig <room name> [= <exit name>;<exit alias>*,<exit name>;<exit alias>*] 
    824   @dig/teleport 
     823  @dig[/teleport] <room name>[=<exit name>;<alias>*,<exit name>;<alias>*] 
    825824   
    826825  This command is used to create a new room, possibly with exits linking 
     
    986985& @emit 
    987986& \   
    988   @emit[/room][/silent] <message>  
    989   @emit[/noeval] <message>  
     987  @emit[/room][/silent][/noeval] [<message>] 
    990988  \<message> 
    991989 
  • 1.7.7/game/txt/hlp/pennfunc.hlp

    r399 r401  
    18991899& SEARCH() 
    19001900& LSEARCHR() 
    1901   lsearch(<player>, <class>, <restriction>[, <low>[, <high>]]) 
    1902   lsearchr(<player>, <class>, <restriction>[, <low>[, <high>]]) 
     1901  lsearch(<player>[, <class>[, <restriction>[, <low>[, <high>]]]]) 
     1902  lsearchr(<player>[, <class>[, <restriction>[, <low>[, <high>]]]]) 
    19031903  
    19041904  This function is similar to the @search command, except it returns 
     
    25312531  rand(<num>) 
    25322532 
    2533   Rand returns an integer between 0 and num-1
     2533  Rand returns an integer between 0 and num-1, inclusive
    25342534  If called with an invalid argument, rand() returns an error message 
    25352535  beginning with #-1. 
     
    34103410   
    34113411  > @va Object=$test *:"[ufun(testfun, v(0))]; @emit [v(0)] 
    3412   > 
    3413  &testfun object=[strlen(v(0))] [ucstr(v(0))] 
     3412  > &testfun object=[strlen(v(0))] [ucstr(v(0))] 
    34143413  > test string 
    3415   Foo says, "6 STRING" 
     3414  Object says, "6 STRING" 
    34163415  string 
    34173416   
    3418   See "help UFUN3" for more. 
    3419   
    3420 & U3 
    3421 & UFUN3 
    3422   A user-defined function may be as complex as you want it to be. 
     3417  A user-defined function may be as complex as you want it to be, 
     3418  subject to limits on recursion depth, number of function invocations, 
     3419  or cpu time that may be configured in the MUSH. 
    34233420  If the evaluation order doesn't quite seem right, adding escapes 
    34243421  or breaking up the expression will probably help. 
    34253422     
    3426   Excessive recursion in either a UFUN() or ZFUN() will cause it to 
    3427   return "#-1 EXCESSIVE RECURSION ERROR", and sets the object HALT. 
    3428   An object which is HALT may not evaluate either UFUN() or ZFUN(); 
    3429   those functions will then return "#-1 OBJECT HALTED". 
    3430    
    34313423& UCSTR() 
    34323424  ucstr(<string>) 
  • 1.7.7/game/txt/hlp/pennvers.hlp

    r399 r401  
    11& changes 
    2 & 1.7.7p0 
     2& 1.7.7p1 
    33This is a list of changes in this patchlevel which are probably of 
    44interest to players. More information about new commands and functions 
     
    1212be read in 'help patchlevels'. 
    1313 
     14Version 1.7.7 patchlevel 1                      December 17, 2002 
     15 
     16Minor Changes: 
     17  * ex obj/attrib returns the attribute value even if it's veiled, 
     18    if a specific (non-wildcard) attribute is given. Suggested by 
     19    Nhoj@M*U*S*H. 
     20Fixes: 
     21  * Win32 portability fixes. [EEH] 
     22  * Fixes from 1.7.6p2 
     23 
     24& 1.7.7p0 
    1425Version 1.7.7 patchlevel 0                      November 11, 2002 
    1526 
     
    5667  * Continued ansi-C-ification of function declarations. 
    5768 
    58 Version 1.7.6 patchlevel 1                      November 26, 2002 
    59  
    60 Minor changes: 
    61    * When using @nuke to destroy a SAFE object when really_safe is "no", 
    62      provide a warning (but schedule destruction anyway). Suggested by 
    63      Cerekk@bDV. 
    64 Fixes: 
    65    * VS.NET project file was defaulting to signed instead of unsigned 
    66      chars, causing crashes. Fixed by BladedThoth@M*U*S*H. 
    67      Several places where we should have cast things to unsigned to 
    68      avoid this kind of thing have been fixed. [SW] 
    69    * The *emit() functions now set the orator correctly. 
    70      Reported by Philip Mak. 
    71    * ccom and cplr are cleared after each command execution so they 
    72      can't be leaked as easily. Suggested by Philip Mak. 
    73    * Linting. 
    74    * If God gives the wrong password to @logwipe, provide some feedback. 
    75      Suggested by Cerekk@bDv. 
    76    * mkcmds.sh was needlessly rebuilding several autogenerated files. 
    77    * The rules for flag characters shown in object headers now allows 
    78      F_INTERNAL flags to be shown (like GOING), just the same as 
    79      when you get a full flag list on examine. Report by Philip Mak. 
    80    * Help fixes by Bird@M*U*S*H, Intrevis@M*U*S*H, Philip Mak. 
    81    * @search type=something would report an error AND match the entire 
    82      database when something wasn't object, player, exit or room. [SW] 
    83    * Cosmetic bug in @malias/list fixed. Report by Philip Mak. 
    84    * The info_slave now properly obeys the use_dns setting in mush.cnf. 
    85      This requires a full shutdown to put into effect. Report by 
    86      BlaZe@M*U*S*H. [SW] 
    87  
    88  
    89 & 1.7.6p0 
    90 Version 1.7.6 patchlevel 0                      November 11, 2002 
    91  
    92 License: 
    93  * PennMUSH 1.7.6 and later is now released under the Artistic 
    94    License. This is an OSI-compliant open source license. See the file 
    95    COPYRITE for the complete license text. 
    96  
    97    Notable changes from the old license: 
    98    * No restrictions on commercial use 
    99    * No requirement to inform developers of improvements or submit 
    100      modifications, though it's still a nice thing to do. Note, however 
    101      that if you redistribute a modified version of PennMUSH, you MUST 
    102      include source code. 
    103  
    104    The PennMUSH devteam thanks the copyright holders of TinyMUD, 
    105    TinyMUSH 2.0, TinyMUSH 2.2, and TinyMUSH 3.0 for their assistance 
    106    in making this possible. 
    107 Documentation: 
    108    * The README file has been split into README, INSTALL, UPGRADING, 
    109      and I18N files. 
    110 Minor Changes: 
    111    * Rooms now hear remits and lemits in them, and can be pemitted 
    112      to. This behavior now matches that of other MUSH servers. 
    113    * AUDIBLE objects now propagate sound @remit'd into them. 
    114      Report by [SW]. 
    115    * Added @lock/destroy to limit who can destroy a DESTROY_OK 
    116      object. Suggested by Luigi@8bit. 
    117    * PARANOID nospoof notification now includes the name of the object's 
    118      owner as well. Suggested by Philip Mak. 
    119    * room() no longer notifies the executor of permission errors out of 
    120      band. It now just returns the error instead, like loc(). Suggested by 
    121      Philip Mak. 
    122    * Creation times are now public information via ctime(); permission to 
    123      examine is no longer required. This allows objects to use, e.g., 
    124      %#@[ctime(%#)] as a historically unique identifier of an enactor. 
    125      Suggested by Philip Mak. 
    126    * The reboot.db is now versioned. This will make it possible to 
    127      @shutdown/reboot across patchlevels that change the reboot.db 
    128      format (in 1.7.7 and later versions). 
    129    * Rooms on an @forwardlist now receive the message as a remit, 
    130      rather than a pemit. Suggested by BladedThoth@M*U*S*H. 
    131 Fixes: 
    132    * More work on the great table() bug. Looks like a fix. [SW] 
    133    * Improved VS.NET project files by BladedThoth. 
    134    * Plugged a memory leak in deleting @locks. [SW] 
    135    * Fixed @lock-related crash bug reported by Philip Mak. [SW] 
    136    * General linting. 
    137    * process_expression ignores the [ in ansi escapes. Reported in the 
    138      context of #$ by Philip Mak. [SW] 
    139    * Internal changes to compress(), which now returns an allocated 
    140      string. Under Huffman compression, it should no longer be possible 
    141      to overflow a buffer with a pathological compression tree. Initial 
    142      concern voiced by Eyal Sagi. 
    143    * Table and ansi didn't play well together. Reported by Ellis@M*U*S*H. 
    144    * Config file reading should be better on Macs. Patch by Philip Mak. 
    145    * Obsolete checks for OLD_ANSI are removed. [SW] 
    146    * Crash bug in @function fixed. Report by Dallimar@Hemlock. 
    147    * Change to message on failed attribute flag set, to make it more 
    148      generic to cover all the possible failures. Report by Cerekk@bDv. 
    149    * Translations to some languages were broken. Fixed now. Report by 
    150      Sbot@M*U*S*H. 
    151    * QUEUE is now visible if you control an object, as promised in the 
    152      help. Reported by Luigi@8bit. 
    153    * Help fixes by Mortimer@M*U*S*H, Bellemore@M*U*S*H, Hyacinth@8bit, 
    154      [EEH], BladedThoth@M*U*S*H, Moe@M*U*S*H, Viila@M*U*S*H, Walker@M*U*S*H. 
    155    * Comment in src/Makefile fixed by Vadiv@M*U*S*H. 
    156    * A weird crash on @shutdown/reboot, probably attributable to a 
    157      broken library or system call, is now worked-around. Report by 
    158      Solarius@SWWF. 
    159    * Audible objects with @forwardlist set are no longer concealed by 
    160      the DARK flag. 
    161    * Win32 project files no longer use the win32/ directory as an include 
    162      directory, which causes problems. Reported by Gepht. 
    163  
     69& 1.7.5p12 
    16470Version 1.7.5 patchlevel 12                     November 1, 2002 
    16571 
     
    641547  * Indentation fixes [SW] 
    642548  * Fixes up to 1.7.4p12 merged in. 
     549 
     550& 1.7.6p2 
     551Version 1.7.6 patchlevel 2                      December 17, 2002 
     552 
     553Minor changes: 
     554   * An invalid range argument to @search/lsearch is now coerced 
     555     to be the lowest or highest dbref, as appropriate. The search 
     556     range is also now inclusive. And lsearch(<player>) works. 
     557     Suggested by Philip Mak. 
     558   * mushcnf.dst now includes a default value for call_limit. 
     559     Suggested by Philip Mak. 
     560   * Testing for whether the mush is already running in the 
     561     restart script has been improved by Philip Mak. 
     562Internationalization: 
     563   * Polish translation files (partial) are now being distributed. 
     564Fixes: 
     565   * Fix to win32 warnings. [EEH] 
     566   * Under Win32, a failed accept() call in bsd.c would not be 
     567     correctly handled. Report by BladedThoth@M*U*S*H. 
     568   * Help fixes by Luigi@8bitMUSH, Kyieren@M*U*S*H, Intrevis@M*U*S*H. 
     569   * @map crash bug repoted by Philip Mak, fixed by Walker@M*U*S*H. 
     570   * Modifiying locks now updates the object's modification time. 
     571     Reported by Philip Mak. 
     572 
     573Version 1.7.6 patchlevel 1                      November 26, 2002 
     574 
     575Minor changes: 
     576   * When using @nuke to destroy a SAFE object when really_safe is "no", 
     577     provide a warning (but schedule destruction anyway). Suggested by 
     578     Cerekk@bDV. 
     579Fixes: 
     580   * VS.NET project file was defaulting to signed instead of unsigned 
     581     chars, causing crashes. Fixed by BladedThoth@M*U*S*H. 
     582     Several places where we should have cast things to unsigned to 
     583     avoid this kind of thing have been fixed. [SW] 
     584   * The *emit() functions now set the orator correctly. 
     585     Reported by Philip Mak. 
     586   * ccom and cplr are cleared after each command execution so they 
     587     can't be leaked as easily. Suggested by Philip Mak. 
     588   * Linting. 
     589   * If God gives the wrong password to @logwipe, provide some feedback. 
     590     Suggested by Cerekk@bDv. 
     591   * mkcmds.sh was needlessly rebuilding several autogenerated files. 
     592   * The rules for flag characters shown in object headers now allows 
     593     F_INTERNAL flags to be shown (like GOING), just the same as 
     594     when you get a full flag list on examine. Report by Philip Mak. 
     595   * Help fixes by Bird@M*U*S*H, Intrevis@M*U*S*H, Philip Mak. 
     596   * @search type=something would report an error AND match the entire 
     597     database when something wasn't object, player, exit or room. [SW] 
     598   * Cosmetic bug in @malias/list fixed. Report by Philip Mak. 
     599   * The info_slave now properly obeys the use_dns setting in mush.cnf. 
     600     This requires a full shutdown to put into effect. Report by 
     601     BlaZe@M*U*S*H. [SW] 
     602 
     603 
     604& 1.7.6p0 
     605Version 1.7.6 patchlevel 0                      November 11, 2002 
     606 
     607License: 
     608 * PennMUSH 1.7.6 and later is now released under the Artistic 
     609   License. This is an OSI-compliant open source license. See the file 
     610   COPYRITE for the complete license text. 
     611 
     612   Notable changes from the old license: 
     613   * No restrictions on commercial use 
     614   * No requirement to inform developers of improvements or submit 
     615     modifications, though it's still a nice thing to do. Note, however 
     616     that if you redistribute a modified version of PennMUSH, you MUST 
     617     include source code. 
     618 
     619   The PennMUSH devteam thanks the copyright holders of TinyMUD, 
     620   TinyMUSH 2.0, TinyMUSH 2.2, and TinyMUSH 3.0 for their assistance 
     621   in making this possible. 
     622Documentation: 
     623   * The README file has been split into README, INSTALL, UPGRADING, 
     624     and I18N files. 
     625Minor Changes: 
     626   * Rooms now hear remits and lemits in them, and can be pemitted 
     627     to. This behavior now matches that of other MUSH servers. 
     628   * AUDIBLE objects now propagate sound @remit'd into them. 
     629     Report by [SW]. 
     630   * Added @lock/destroy to limit who can destroy a DESTROY_OK 
     631     object. Suggested by Luigi@8bit. 
     632   * PARANOID nospoof notification now includes the name of the object's 
     633     owner as well. Suggested by Philip Mak. 
     634   * room() no longer notifies the executor of permission errors out of 
     635     band. It now just returns the error instead, like loc(). Suggested by 
     636     Philip Mak. 
     637   * Creation times are now public information via ctime(); permission to 
     638     examine is no longer required. This allows objects to use, e.g., 
     639     %#@[ctime(%#)] as a historically unique identifier of an enactor. 
     640     Suggested by Philip Mak. 
     641   * The reboot.db is now versioned. This will make it possible to 
     642     @shutdown/reboot across patchlevels that change the reboot.db 
     643     format (in 1.7.7 and later versions). 
     644   * Rooms on an @forwardlist now receive the message as a remit, 
     645     rather than a pemit. Suggested by BladedThoth@M*U*S*H. 
     646Fixes: 
     647   * More work on the great table() bug. Looks like a fix. [SW] 
     648   * Improved VS.NET project files by BladedThoth. 
     649   * Plugged a memory leak in deleting @locks. [SW] 
     650   * Fixed @lock-related crash bug reported by Philip Mak. [SW] 
     651   * General linting. 
     652   * process_expression ignores the [ in ansi escapes. Reported in the 
     653     context of #$ by Philip Mak. [SW] 
     654   * Internal changes to compress(), which now returns an allocated 
     655     string. Under Huffman compression, it should no longer be possible 
     656     to overflow a buffer with a pathological compression tree. Initial 
     657     concern voiced by Eyal Sagi. 
     658   * Table and ansi didn't play well together. Reported by Ellis@M*U*S*H. 
     659   * Config file reading should be better on Macs. Patch by Philip Mak. 
     660   * Obsolete checks for OLD_ANSI are removed. [SW] 
     661   * Crash bug in @function fixed. Report by Dallimar@Hemlock. 
     662   * Change to message on failed attribute flag set, to make it more 
     663     generic to cover all the possible failures. Report by Cerekk@bDv. 
     664   * Translations to some languages were broken. Fixed now. Report by 
     665     Sbot@M*U*S*H. 
     666   * QUEUE is now visible if you control an object, as promised in the 
     667     help. Reported by Luigi@8bit. 
     668   * Help fixes by Mortimer@M*U*S*H, Bellemore@M*U*S*H, Hyacinth@8bit, 
     669     [EEH], BladedThoth@M*U*S*H, Moe@M*U*S*H, Viila@M*U*S*H, Walker@M*U*S*H. 
     670   * Comment in src/Makefile fixed by Vadiv@M*U*S*H. 
     671   * A weird crash on @shutdown/reboot, probably attributable to a 
     672     broken library or system call, is now worked-around. Report by 
     673     Solarius@SWWF. 
     674   * Audible objects with @forwardlist set are no longer concealed by 
     675     the DARK flag. 
     676   * Win32 project files no longer use the win32/ directory as an include 
     677     directory, which causes problems. Reported by Gepht. 
    643678 
    644679& 1.7.4p20 
     
    57915826type 'help <version>p<patchlevel>'. For example, 'help 1.7.2p3' 
    57925827 
    5793 1.7.7: 0 
    5794 1.7.6: 0, 1 
     58281.7.7: 0, 1 
     58291.7.6: 0, 1, 2 
    579558301.7.5: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12 
    579658311.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

    r399 r401  
    5454extern void init_game_config(const char *conf); 
    5555extern void dump_database(void); 
    56 extern void 
    57 panic(const char *message) 
    58   NORETURN; 
     56extern void NORETURN panic(const char *message); 
    5957 
    6058 
    6159#ifdef WIN32 
    6260/* From timer.c */ 
    63     extern void init_timer(void); 
    64     extern void kill_timer(void); 
     61extern void init_timer(void); 
     62extern void kill_timer(void); 
    6563#endif              /* WIN32 */ 
    6664 
    6765/* From bsd.c */ 
    68     extern FILE *connlog_fp; 
    69     extern FILE *checklog_fp; 
    70     extern FILE *wizlog_fp; 
    71     extern FILE *tracelog_fp; 
    72     extern FILE *cmdlog_fp; 
    73     extern int restarting; 
     66extern FILE *connlog_fp; 
     67extern FILE *checklog_fp; 
     68extern FILE *wizlog_fp; 
     69extern FILE *tracelog_fp; 
     70extern FILE *cmdlog_fp; 
     71extern int restarting; 
    7472#ifdef SUN_OS 
    75     extern int f_close(FILE * file); 
     73extern int f_close(FILE * file); 
    7674#define fclose(f) f_close(f); 
    7775#endif 
    78     extern int hidden(dbref player); 
    79     void dump_reboot_db(void); 
     76extern int hidden(dbref player); 
     77void dump_reboot_db(void); 
    8078 
    8179/* The #defs for our notify_anything hacks.. Errr. Functions */ 
     
    9088 
    9189 
    92     typedef dbref (*na_lookup) (dbref, void *); 
    93     extern void notify_anything(dbref speaker, na_lookup func, 
    94                void *fdata, 
    95                char *(*nsfunc) (dbref, 
    96                         na_lookup func, 
    97                         void *, int), int flags, 
    98                const char *message); 
    99     extern dbref na_one(dbref current, void *data); 
    100     extern dbref na_next(dbref current, void *data); 
    101     extern dbref na_loc(dbref current, void *data); 
    102     extern dbref na_nextbut(dbref current, void *data); 
    103     extern dbref na_except(dbref current, void *data); 
    104     extern dbref na_except2(dbref current, void *data); 
    105     extern dbref na_exceptN(dbref current, void *data); 
     90typedef dbref (*na_lookup) (dbref, void *); 
     91extern void notify_anything(dbref speaker, na_lookup func, 
     92                void *fdata, 
     93                char *(*nsfunc) (dbref, 
     94                        na_lookup func, 
     95                        void *, int), int flags, 
     96                const char *message); 
     97extern dbref na_one(dbref current, void *data); 
     98extern dbref na_next(dbref current, void *data); 
     99extern dbref na_loc(dbref current, void *data); 
     100extern dbref na_nextbut(dbref current, void *data); 
     101extern dbref na_except(dbref current, void *data); 
     102extern dbref na_except2(dbref current, void *data); 
     103extern dbref na_exceptN(dbref current, void *data); 
    106104#ifdef CHAT_SYSTEM 
    107     extern dbref na_channel(dbref current, void *data); 
     105extern dbref na_channel(dbref current, void *data); 
    108106#endif 
    109107 
     
    113111#define notify_noecho(p,m)    notify_anything(orator, na_one, &(p), NULL, NA_NORELAY | NA_PUPPET, m) 
    114112#define quiet_notify(p,m)     if (!IsQuiet(p)) notify(p,m) 
    115     extern void notify_format(dbref player, const char *fmt, ...) 
     113extern void notify_format(dbref player, const char *fmt, ...) 
    116114  __attribute__ ((__format__(__printf__, 2, 3))); 
    117115 
     
    122120/* #define COMP_STATS /* */ 
    123121#if (COMPRESSION_TYPE != 0) 
    124     extern unsigned char *compress(char const *s) __attribute_malloc__; 
     122extern unsigned char * 
     123compress(char const *s) 
     124  __attribute_malloc__; 
    125125    extern char *uncompress(unsigned char const *s); 
    126126    extern char *safe_uncompress(unsigned char const *s) __attribute_malloc__; 
    127127#else 
    128     extern char ucbuff[]; 
     128extern char ucbuff[]; 
    129129#define init_compress(f) 0 
    130130#define compress(s) ((unsigned char *)strdup(s)) 
     
    134134 
    135135/* From cque.c */ 
    136     extern char *wenv[10], renv[NUMQ][BUFFER_LEN]; 
    137     extern char *wnxt[10], *rnxt[NUMQ]; 
    138     extern void do_second(void); 
    139     extern int do_top(int ncom); 
    140     extern void do_halt(dbref owner, const char *ncom, dbref victim); 
    141     extern void parse_que(dbref player, const char *command, dbref cause); 
    142     extern int queue_attribute_base 
    143       (dbref executor, const char *atrname, dbref enactor, int noparent); 
     136extern char *wenv[10], renv[NUMQ][BUFFER_LEN]; 
     137extern char *wnxt[10], *rnxt[NUMQ]; 
     138extern void do_second(void); 
     139extern int do_top(int ncom); 
     140extern void do_halt(dbref owner, const char *ncom, dbref victim); 
     141extern void parse_que(dbref player, const char *command, dbref cause); 
     142extern int queue_attribute_base 
     143  (dbref executor, const char *atrname, dbref enactor, int noparent); 
    144144#define queue_attribute(a,b,c) queue_attribute_base(a,b,c,0) 
    145145#define queue_attribute_noparent(a,b,c) queue_attribute_base(a,b,c,1) 
    146     extern void dequeue_semaphores(dbref thing, char const *aname, int count, 
    147                   int all, int drain); 
     146extern void dequeue_semaphores(dbref thing, char const *aname, int count, 
     147                   int all, int drain); 
    148148 
    149149 
    150150/* From create.c */ 
    151     extern dbref do_dig(dbref player, const char *name, char **argv, int tport); 
    152     extern dbref do_create(dbref player, char *name, int cost); 
    153     extern dbref do_real_open(dbref player, const char *direction, 
    154                   const char *linkto, dbref pseudo); 
    155     extern void do_open(dbref player, const char *direction, char **links); 
    156     extern void do_link(dbref player, const char *name, const char *room_name, 
    157             int preserve); 
    158     extern void do_unlink(dbref player, const char *name); 
    159     extern dbref do_clone(dbref player, char *name, char *newname, 
    160               int preserve); 
     151extern dbref do_dig(dbref player, const char *name, char **argv, int tport); 
     152extern dbref do_create(dbref player, char *name, int cost); 
     153extern dbref do_real_open(dbref player, const char *direction, 
     154              const char *linkto, dbref pseudo); 
     155extern void do_open(dbref player, const char *direction, char **links); 
     156extern void do_link(dbref player, const char *name, const char *room_name, 
     157            int preserve); 
     158extern void do_unlink(dbref player, const char *name); 
     159extern dbref do_clone(dbref player, char *name, char *newname, int preserve); 
    161160 
    162161/* From game.c */ 
    163     extern void report(void); 
    164     extern int Hearer(dbref thing); 
    165     extern int Commer(dbref thing); 
    166     extern int Listener(dbref thing); 
    167     extern dbref orator; 
    168     int parse_chat(dbref player, char *command); 
    169     extern void fork_and_dump(int forking); 
     162extern void report(void); 
     163extern int Hearer(dbref thing); 
     164extern int Commer(dbref thing); 
     165extern int Listener(dbref thing); 
     166extern dbref orator; 
     167int parse_chat(dbref player, char *command); 
     168extern void fork_and_dump(int forking); 
    170169 
    171170/* From look.c */ 
    172     extern void look_room(dbref player, dbref loc, int flag); 
    173     extern void do_look_around(dbref player); 
    174     extern void do_look_at(dbref player, const char *name, int key); 
     171extern void look_room(dbref player, dbref loc, int flag); 
     172extern void do_look_around(dbref player); 
     173extern void do_look_at(dbref player, const char *name, int key); 
    175174 
    176175/* From move.c */ 
    177     extern void enter_room(dbref player, dbref loc, int nomovemsgs); 
    178     extern int can_move(dbref player, const char *direction); 
    179     extern void do_move(dbref player, const char *direction, int type); 
    180     extern void moveto(dbref what, dbref where); 
    181     extern void safe_tel(dbref player, dbref dest, int nomovemsgs); 
    182     extern dbref global_exit(dbref player, const char *direction); 
    183     extern dbref remote_exit(dbref loc, const char *direction); 
    184     extern void move_wrapper(dbref player, const char *command); 
    185     extern void do_follow(dbref player, const char *arg); 
    186     extern void do_unfollow(dbref player, const char *arg); 
    187     extern void do_desert(dbref player, const char *arg); 
    188     extern void do_dismiss(dbref player, const char *arg); 
    189     extern void clear_followers(dbref leader, int noisy); 
    190     extern void clear_following(dbref follower, int noisy); 
     176extern void enter_room(dbref player, dbref loc, int nomovemsgs); 
     177extern int can_move(dbref player, const char *direction); 
     178extern void do_move(dbref player, const char *direction, int type); 
     179extern void moveto(dbref what, dbref where); 
     180extern void safe_tel(dbref player, dbref dest, int nomovemsgs); 
     181extern dbref global_exit(dbref player, const char *direction); 
     182extern dbref remote_exit(dbref loc, const char *direction); 
     183extern void move_wrapper(dbref player, const char *command); 
     184extern void do_follow(dbref player, const char *arg); 
     185extern void do_unfollow(dbref player, const char *arg); 
     186extern void do_desert(dbref player, const char *arg); 
     187extern void do_dismiss(dbref player, const char *arg); 
     188extern void clear_followers(dbref leader, int noisy); 
     189extern void clear_following(dbref follower, int noisy); 
    191190 
    192191/* From mycrypt.c */ 
    193     extern char *mush_crypt(const char *key); 
     192extern char *mush_crypt(const char *key); 
    194193 
    195194/* From player.c */ 
    196     extern int password_check(dbref player, const char *password); 
    197     extern dbref lookup_player(const char *name); 
     195extern int password_check(dbref player, const char *password); 
     196extern dbref lookup_player(const char *name); 
    198197/* from player.c */ 
    199     extern dbref create_player(const char *name, const char *password, 
    200                    const char *host, const char *ip); 
    201     extern dbref connect_player(const char *name, const char *password, 
    202                const char *host, const char *ip); 
    203     extern void check_last(dbref player, const char *host, const char *ip); 
    204     extern void check_lastfailed(dbref player, const char *host); 
     198extern dbref create_player(const char *name, const char *password, 
     199               const char *host, const char *ip); 
     200extern dbref connect_player(const char *name, const char *password, 
     201                const char *host, const char *ip); 
     202extern void check_last(dbref player, const char *host, const char *ip); 
     203extern void check_lastfailed(dbref player, const char *host); 
    205204 
    206205/* From parse.c */ 
    207     extern int is_number(const char *str); 
    208     extern int is_strict_number(const char *str); 
    209     extern int is_strict_integer(const char *str); 
     206extern int is_number(const char *str); 
     207extern int is_strict_number(const char *str); 
     208extern int is_strict_integer(const char *str); 
    210209 
    211210/* From plyrlist.c */ 
    212     void clear_players(void); 
    213     void add_player(dbref player, const char *alias); 
    214     void delete_player(dbref player, const char *alias); 
     211void clear_players(void); 
     212void add_player(dbref player, const char *alias); 
     213void delete_player(dbref player, const char *alias); 
    215214 
    216215/* From predicat.c */ 
    217216 
    218     extern char *WIN32_CDECL tprintf(const char *fmt, ...) 
     217extern char *WIN32_CDECL tprintf(const char *fmt, ...) 
    219218  __attribute__ ((__format__(__printf__, 1, 2))); 
    220219 
    221     extern int could_doit(dbref player, dbref thing); 
    222     extern void did_it(dbref player, dbref thing, const char *what, 
    223                const char *def, const char *owhat, const char *odef, 
    224                const char *awhat, dbref loc); 
    225     extern void real_did_it(dbref player, dbref thing, const char *what, 
    226                 const char *def, const char *owhat, 
    227                 const char *odef, const char *awhat, dbref loc, 
    228                 char *myenv[10]); 
    229     extern int can_see(dbref player, dbref thing, int can_see_loc); 
    230     extern int controls(dbref who, dbref what); 
    231     extern int can_pay_fees(dbref who, int pennies); 
    232     extern void giveto(dbref who, dbref pennies); 
    233     extern int payfor(dbref who, int cost); 
    234     extern int nearby(dbref obj1, dbref obj2); 
     220extern int could_doit(dbref player, dbref thing); 
     221extern void did_it(dbref player, dbref thing, const char *what, 
     222           const char *def, const char *owhat, const char *odef, 
     223           const char *awhat, dbref loc); 
     224extern void real_did_it(dbref player, dbref thing, const char *what, 
     225            const char *def, const char *owhat, 
     226            const char *odef, const char *awhat, dbref loc, 
     227            char *myenv[10]); 
     228extern int can_see(dbref player, dbref thing, int can_see_loc); 
     229extern int controls(dbref who, dbref what); 
     230extern int can_pay_fees(dbref who, int pennies); 
     231extern void giveto(dbref who, dbref pennies); 
     232extern int payfor(dbref who, int cost); 
     233extern int nearby(dbref obj1, dbref obj2); 
    235234#ifdef QUOTA 
    236     extern int get_current_quota(dbref who); 
    237     extern void change_quota(dbref who, int payment); 
    238 #endif 
    239     extern int ok_name(const char *name); 
    240     extern int ok_command_name(const char *name); 
    241     extern int ok_player_name(const char *name); 
    242     extern int ok_password(const char *password); 
    243     extern dbref parse_match_possessive(dbref player, const char *str); 
    244     extern void page_return(dbref player, dbref target, const char *type, 
    245                 const char *message, const char *def); 
    246     extern char *grep_util(dbref player, dbref thing, char *pattern, 
    247               char *lookfor, int len, int insensitive); 
    248     extern dbref where_is(dbref thing); 
    249     extern int charge_action(dbref player, dbref thing, const char *awhat); 
    250     dbref first_visible(dbref player, dbref thing); 
     235extern int get_current_quota(dbref who); 
     236extern void change_quota(dbref who, int payment); 
     237#endif 
     238extern int ok_name(const char *name); 
     239extern int ok_command_name(const char *name); 
     240extern int ok_player_name(const char *name); 
     241extern int ok_password(const char *password); 
     242extern dbref parse_match_possessive(dbref player, const char *str); 
     243extern void page_return(dbref player, dbref target, const char *type, 
     244            const char *message, const char *def); 
     245extern char *grep_util(dbref player, dbref thing, char *pattern, 
     246               char *lookfor, int len, int insensitive); 
     247extern dbref where_is(dbref thing); 
     248extern int charge_action(dbref player, dbref thing, const char *awhat); 
     249dbref first_visible(dbref player, dbref thing); 
    251250 
    252251/* From set.c */ 
    253     extern void chown_object(dbref player, dbref thing, dbref newowner, 
    254                  int preserve); 
     252extern void chown_object(dbref player, dbref thing, dbref newowner, 
     253             int preserve); 
    255254 
    256255/* From speech.c */ 
    257     extern char *ns_esnotify(dbref speaker, na_lookup func, void *fdata, 
    258                  int para); 
    259     extern void notify_except(dbref first, dbref exception, const char *msg); 
    260     extern void notify_except2 
    261       (dbref first, dbref exc1, dbref exc2, const char *msg); 
     256extern char *ns_esnotify(dbref speaker, na_lookup func, void *fdata, int para); 
     257extern void notify_except(dbref first, dbref exception, const char *msg); 
     258extern void notify_except2 
     259  (dbref first, dbref exc1, dbref exc2, const char *msg); 
    262260/* Return thing/PREFIX + msg */ 
    263     extern void make_prefixstr(dbref thing, const char *msg, char *tbuf1); 
    264     extern int filter_found(dbref thing, const char *msg, int flag); 
     261extern void make_prefixstr(dbref thing, const char *msg, char *tbuf1); 
     262extern int filter_found(dbref thing, const char *msg, int flag); 
    265263 
    266264/* From strutil.c */ 
    267     extern char *split_token(char **sp, char sep); 
    268     extern char *chopstr(const char *str, size_t lim); 
    269     extern int string_prefix(const char *RESTRICT string, 
    270                  const char *RESTRICT prefix); 
    271     extern const char *string_match(const char *src, const char *sub); 
    272     extern char *strupper(const char *s); 
    273     extern char *strlower(const char *s); 
    274     extern char *upcasestr(char *s); 
    275     extern char *skip_space(const char *s); 
    276     extern char *seek_char(const char *s, char c); 
    277     extern int u_strlen(const unsigned char *s); 
    278     extern unsigned char *u_strcpy 
    279       (unsigned char *target, const unsigned char *source); 
     265extern char *split_token(char **sp, char sep); 
     266extern char *chopstr(const char *str, size_t lim); 
     267extern int string_prefix(const char *RESTRICT string, 
     268             const char *RESTRICT prefix); 
     269extern const char *string_match(const char *src, const char *sub); 
     270extern char *strupper(const char *s); 
     271extern char *strlower(const char *s); 
     272extern char *upcasestr(char *s); 
     273extern char *skip_space(const char *s); 
     274extern char *seek_char(const char *s, char c); 
     275extern int u_strlen(const unsigned char *s); 
     276extern unsigned char *u_strcpy 
     277  (unsigned char *target, const unsigned char *source); 
    280278#define u_strdup(x) (unsigned char *)strdup((char *) x) 
    281279#ifndef HAS_STRDUP 
    282     char *strdup(const char *s) __attribute_malloc__; 
     280char * 
     281strdup(const char *s) 
     282  __attribute_malloc__; 
    283283#endif 
    284284    char *mush_strdup(const char *s, const char *check) __attribute_malloc__; 
  • 1.7.7/hdrs/game.h

    r399 r401  
    152152extern void do_chownall 
    153153  (dbref player, const char *name, const char *target, int preserve); 
    154 extern void 
    155 do_reboot(dbref player, int flag) 
    156   NORETURN; 
     154extern void NORETURN do_reboot(dbref player, int flag); 
    157155 
    158156/* From destroy.c */ 
    159     extern void do_dbck(dbref player); 
    160     extern void do_destroy(dbref player, char *name, int confirm); 
     157extern void do_dbck(dbref player); 
     158extern void do_destroy(dbref player, char *name, int confirm); 
    161159 
    162160/* From timer.c */ 
    163     extern void init_timer(void); 
     161extern void init_timer(void); 
    164162 
    165163/* From version.c */ 
    166     extern void do_version(dbref player); 
     164extern void do_version(dbref player); 
    167165 
    168166#endif              /* __GAME_H */ 
  • 1.7.7/hdrs/mushtype.h

    r399 r401  
    44#include "options.h" 
    55#include <stdio.h> 
     6#ifdef WIN32 
     7#include <windows.h> 
     8#endif 
    69#ifdef HAS_OPENSSL 
    710#include <openssl/ssl.h> 
  • 1.7.7/hdrs/version.h

    r399 r401  
    1 #define VERSION "PennMUSH version 1.7.7 patchlevel 0 [12/8/2002]" 
    2 #define SHORTVN "PennMUSH 1.7.7p0
     1#define VERSION "PennMUSH version 1.7.7 patchlevel 1 [12/17/2002]" 
     2#define SHORTVN "PennMUSH 1.7.7p1
  • 1.7.7/po/Makefile

    r399 r401  
    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 
     4da_DK.po de_DE.po no_NO.po pl_PL.po 
    55 
    66.pox.po: $*.pox pennmush.pot 
  • 1.7.7/src/bsd.c

    r399 r401  
    372372void close_sockets(void); 
    373373dbref find_player_by_desc(int port); 
    374 void 
    375 bailout(int sig) 
    376   NORETURN; 
    377     void WIN32_CDECL signal_shutdown(int sig); 
    378     void WIN32_CDECL signal_dump(int sig); 
    379     void reaper(int sig); 
    380     extern Pid_t forked_dump_pid; 
    381     void dump_users(DESC *call_by, char *match, int doing); 
    382     const char *time_format_1(long int dt); 
    383     const char *time_format_2(long int dt); 
    384     static void announce_connect(dbref player, int isnew, int num); 
    385     static void announce_disconnect(dbref player); 
    386     void inactivity_check(void); 
     374void NORETURN bailout(int sig); 
     375void WIN32_CDECL signal_shutdown(int sig); 
     376void WIN32_CDECL signal_dump(int sig); 
     377void reaper(int sig); 
     378extern Pid_t forked_dump_pid; 
     379void dump_users(DESC *call_by, char *match, int doing); 
     380const char *time_format_1(long int dt); 
     381const char *time_format_2(long int dt); 
     382static void announce_connect(dbref player, int isnew, int num); 
     383static void announce_disconnect(dbref player); 
     384void inactivity_check(void); 
    387385#ifdef INFO_SLAVE 
    388     static void make_info_slave(void); 
    389     static void promote_info_slave(void); 
    390     static void query_info_slave(int fd); 
    391     static void reap_info_slave(void); 
    392     void kill_info_slave(void); 
    393 #endif 
    394     void reopen_logs(void); 
    395     void load_reboot_db(void); 
     386static void make_info_slave(void); 
     387static void promote_info_slave(void); 
     388static void query_info_slave(int fd); 
     389static void reap_info_slave(void); 
     390void kill_info_slave(void); 
     391#endif 
     392void reopen_logs(void); 
     393void load_reboot_db(void); 
    396394#ifdef HAS_GETRLIMIT 
    397     static void 
    398      init_rlimit(void) 
     395static void 
     396init_rlimit(void) 
    399397{ 
    400398  /* Unlimit file descriptors. */ 
  • 1.7.7/src/comp_w.c

    r399 r401  
    128128 
    129129#define MAXTABLE 32768 
    130 #define MAXWORD 100 
     130#define MAXWORDS 100 
    131131#define COLLISION_LIMIT 20 
    132132 
     
    143143/* The word we are currently compressing */ 
    144144 
    145 static char word[MAXWORD + 2]; 
     145static char word[MAXWORDS + 2]; 
    146146static size_t wordpos = 0; 
    147147 
     
    240240/* break up input into words */ 
    241241  while (*p) { 
    242     if (!(isdigit(*p) || isalpha(*p)) || wordpos >= MAXWORD) { 
     242    if (!(isdigit(*p) || isalpha(*p)) || wordpos >= MAXWORDS) { 
    243243      if (wordpos) { 
    244244    word[wordpos++] = *p & 0x7F;    /* add trailing punctuation */ 
  • 1.7.7/src/comp_w8.c

    r399 r401  
    129129 
    130130#define MAXTABLE 32768 
    131 #define MAXWORD 100 
     131#define MAXWORDS 100 
    132132#define COLLISION_LIMIT 20 
    133133 
     
    145145/* The word we are currently compressing */ 
    146146 
    147 static char word[MAXWORD + 2]; 
     147static char word[MAXWORDS + 2]; 
    148148static size_t wordpos = 0; 
    149149 
     
    244244/* break up input into words */ 
    245245  while (*p) { 
    246     if (!(isdigit(*p) || isalpha(*p)) || wordpos >= MAXWORD) { 
     246    if (!(isdigit(*p) || isalpha(*p)) || wordpos >= MAXWORDS) { 
    247247      if (wordpos) { 
    248248    word[wordpos++] = *p;   /* add trailing punctuation */ 
  • 1.7.7/src/conf.c

    r399 r401  
    933933  options.queue_entry_cpu_time = 1500; 
    934934  options.ascii_names = 1; 
     935  options.call_lim = 10000; 
    935936} 
    936937 
  • 1.7.7/src/function.c

    r399 r401  
    298298  {"LPARENT", fun_lparent, 1, 1, FN_REG}, 
    299299  {"LPLAYERS", fun_lplayers, 1, 1, FN_REG}, 
    300   {"LSEARCH", fun_lsearch, 3, 5, FN_REG}, 
    301   {"LSEARCHR", fun_lsearch, 3, 5, FN_REG}, 
     300  {"LSEARCH", fun_lsearch, 1, 5, FN_REG}, 
     301  {"LSEARCHR", fun_lsearch, 1, 5, FN_REG}, 
    302302  {"LSTATS", fun_lstats, 0,