PennMUSH Community

Changeset 433

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

PennMUSH 1.7.7p17 Archival

Files:

Legend:

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

    r431 r433  
    1313 
    1414========================================================================== 
     15 
     16Version 1.7.6 patchlevel 13                     August 11, 2003 
     17 
     18Fixes: 
     19   * Calling panic() while in the middle of a panic dump would cause a loop. 
     20     Reported by [EEH]. [SW]  
     21   * Outdated mention of compose.csh removed from compose.sh.SH. 
     22     Reported by Cheetah@M*U*S*H. 
     23   * timestring() dealt wrongly with large arguments. Reported by 
     24     Jules@M*U*S*H. timefmt() had a similar problem, reported by 
     25     Luke@M*U*S*H. 
     26   * Better checking of db save failures. [SW] 
     27 
    1528 
    1629Version 1.7.6 patchlevel 12                     June 23, 2003 
  • 1.7.7/CHANGES.177

    r431 r433  
    1818 
    1919========================================================================== 
     20 
     21Version 1.7.7 patchlevel 17                     August 11, 2003 
     22 
     23Major changes: 
     24  * SSL support, including server and client authentication as options. 
     25    This should be considered experimental.  New ssl() function returns 1 
     26    if a player/descriptor is using SSL, 0 otherwise. New file README.SSL 
     27    documents how to set up SSL. Two things to note: 
     28    - SSL connections are dropped on @shutdown/reboot, so SSL users may  
     29      wish to write client triggers to reconnect.  
     30    - Output flushing behaves slightly differently for SSL connections. 
     31  * The way lock keys are handled internally has been rewritten to allow 
     32    them to be tracked by the same chunk-management code that handles 
     33    attributes. [SW] 
     34  * @mail message texts are now stored with the chunk-management code. [SW] 
     35  * The new code can no longer read databases created by versions of Penn 
     36    before 1.7.5p0. If you need to do this, load it in 1.7.6, shutdown, 
     37    and use that database. [SW] 
     38Minor changes: 
     39  * A new minimal.db is distributed (older ones probably won't work, 
     40    and this one probably won't work with older versions). [TAP] 
     41  * Contents/exits lists and functions that use first_visible (like 
     42    lcon, lexits, etc.) are now affected by INTERACT_SEE. Suggested by 
     43    Prospero@Metro. 
     44  * @chan/recall now displays the last 10 lines by default. Use 
     45    @chan/recall <chan>=0 to get the full buffer. Suggested by [TAP]. 
     46  * Various boolexp tweaks. [SW] 
     47  * @power provides more verbose feedback. Suggested by Mordie@M*U*S*H. [SW] 
     48  * Additional chunk tweaks, including limiting migrations to one 
     49    per second. [TAP] 
     50  * PROFILING #define for use when profiling the code (surprise). This 
     51    just disables the CPU timer. 
     52  * When matching $-commands, only call the slower capturing wildcard match 
     53    function when we already know it succeeds, since it won't most of the time. 
     54    The faster non-capturing function is checked first to find a match. [SW] 
     55  * PCRE is initialized once, at startup, rather than testing to see if it has 
     56    to be done before each place regular expressions are used. [SW] 
     57  * The TERSE flag now applies to objects, not just players. Suggested 
     58    by Aur@M*U*S*H. 
     59  * The terminfo() function now returns SSL status as well. 
     60  * help-like commands without arguments now use the command name 
     61    as the argument. E.g. 'news' now looks for topic 'news', instead of 
     62    'help'. If not found, we fall back on help. Patch by Mike Griffiths. 
     63  * When an object is zoned to an unlocked ZMO, the ZMO is now autolocked 
     64    to =me instead of $me, because it's probably less confusing. 
     65    Suggested by Luke@M*U*S*H. 
     66  * @name now automatically trims leading and trailing spaces from its 
     67    newname argument, to avoid confusing people who use edit() to  
     68    generate new names and leave in spaces. Report by [TAP], patch by [SW]. 
     69Commands: 
     70  * New 'logargs' and 'logname' restrictions in restrict.cnf allow 
     71    per-command logging. Suggested by Saturn @ M3. 
     72Functions: 
     73  * The sha1() function has been renamed sha0(), since that's what it 
     74    really does. [TAP] 
     75  * trimtiny() and trimpenn() work like trim(), but force the TM or 
     76    Penn argument style. 
     77  * New 'logargs' and 'logname' restrictions in restrict.cnf allow 
     78    per-function logging. Suggested by Saturn @ M3. 
     79Fixes: 
     80  * The side-effect version of name() was producing a weird return 
     81    value. Reported by Saturn@M3. 
     82  * Problems with restrict_command and restrict_function with multiple 
     83    restrictions now fixed. Report by Sholevi@M*U*S*H. 
     84  * stddef.h now included in src/extchat.c. Report by [EEH]. [SW] 
     85  * INFO output now includes a missing newline. Report by [EEH]. [SW] 
     86  * help BUILDER updated. Report by Laura Langland-Shula. 
     87  * down.txt message wasn't being sent. Report by Sholevi@M*U*S*H. [SW] 
     88  * New Win32 project files that include the chunk code. [EEH] 
     89  * @chan/what no longer highlights the channel's name, as this is 
     90    confusing if you use ansified channel names. Suggested by  
     91    Oriens@Alexandria. 
     92  * ex/mortal now operates more correctly. Report by Amy Kou'ai. 
     93  * Fixes from 1.7.6p13. 
    2094 
    2195Version 1.7.7 patchlevel 16                     June 23, 2003 
     
    42116  * @chan/what displays information about a channel's recall buffer, if any. 
    43117    [SW] 
    44   * @chan/recall'ed lines are more clearly marked as such. Suggested by  
     118  * @chan/recall'ed lines are more clearly marked as such. Suggested by 
    45119    Oriens@Alexandria. [SW] 
    46120  * Consolidation of a common idiom used to format times throughout the source 
     
    63137Fixes: 
    64138  * Problem with checking command flag masks when the number of 
    65     flags was an even multiple of 8. Reported by Nymeria and  
     139    flags was an even multiple of 8. Reported by Nymeria and 
    66140    Mordie@M*U*S*H. 
    67141  * Tweak to improve efficiency of ancestor checking code and delint 
     
    74148    Report by Krad@M*U*S*H. 
    75149  * Modified several Makefile.SH targets to prevent Javelin from 
    76     releasing patches that don't have the autogenerated files  
     150    releasing patches that don't have the autogenerated files 
    77151    up-to-date for Windows folks. 
    78152  * Removed some dependence on typedefs that may or may not be in system 
     
    81155  * Help fixes by Mike Griffiths and Oriens@Alexandria. 
    82156 
    83    
     157 
    84158Version 1.7.7 patchlevel 14                     May 22, 2003 
    85159 
    86160Major changes: 
    87   * Ancestors: an object can be configured to serve as an 'ultimate  
     161  * Ancestors: an object can be configured to serve as an 'ultimate 
    88162    parent' of every room, exit, thing, or player, and attributes 
    89     that are not found on an object or any of its parents may be inherited  
    90     from the ancestor for that object type.  The ORPHAN flag prevents  
     163    that are not found on an object or any of its parents may be inherited 
     164    from the ancestor for that object type.  The ORPHAN flag prevents 
    91165    ancestors from being used on an object.  Patch by Walker@M*U*S*H. 
    92166  * Mail messages now track not only the dbref of the sender but the 
    93167    sender's creation time, so messages from dbrefs that have been 
    94     nuked and recreated can be distinguished from messages from the  
     168    nuked and recreated can be distinguished from messages from the 
    95169    original sender. This modifies the maildb and make it not usable 
    96170    with older versions. All existing @mail is grandfathered in, and 
     
    98172  * New chunk memory allocator can be used to greatly reduce process 
    99173    memory requirements by swapping little-used attribute texts out 
    100     to disk and caching often-used attribute texts in memory.  
     174    to disk and caching often-used attribute texts in memory. 
    101175    This is incompatible with forking dumps, so if you use it, 
    102     you'll do nonforking dumps.  Configurable in mush.cnf, see comments  
     176    you'll do nonforking dumps.  Configurable in mush.cnf, see comments 
    103177    there. [TAP] 
    104178  * Hardcode: new interaction type INTERACT_PRESENCE marks the 
     
    110184  * fraction(), for turning floating-point numbers into fractions. [SW] 
    111185  * root(), for finding roots higher than the square root. [SW] 
    112 Minor changes:  
     186Minor changes: 
    113187  * We now use wrapper functions atr_value and safe_atr_value instead of 
    114188    uncompress(AL_STR(...)) or safe_uncompress(AL_STR(...)), so we 
     
    117191    as %0. Suggested by Sholevi and Time@M*U*S*H. [SW] 
    118192  * Config options that take times now accept a notation describing what kind 
    119     of units to use. For example, 3600s, 60m, 30m1800s, and 1h all refer to  
     193    of units to use. For example, 3600s, 60m, 30m1800s, and 1h all refer to 
    120194    the same period of time. Suggested by Time@M*U*S*H. [SW] 
    121195  * Doxygen commenting of non-static members is essentially complete! 
     
    145219    Konstantine Shirow. [SW] 
    146220  * Using @chan/buffer to resize a recall buffer gives feedback. Reported by 
    147     Sholevi@M*U*S*H. [SW]  
     221    Sholevi@M*U*S*H. [SW] 
    148222  * Help fix for grab() by Adu@AbryssMUSH. 
    149223  * You can no longer destroy the base_room (or default_home). Suggested 
     
    155229  * Interactions (something like "realms" in mux2). Two functions 
    156230    in local.c can now be used to control conditions under which 
    157     objects can see, hear, or match each other. Possibly useful for  
     231    objects can see, hear, or match each other. Possibly useful for 
    158232    implementing umbral worlds, etc. Patch by Vadiv@M*U*S*H. 
    159233Functions: 
  • 1.7.7/INSTALL

    r431 r433  
    151151 
    1521524. On cygwin systems, add to the CCFLAGS in the Makefile: 
    153         -I/usr/src/exim-4.10-1/minires 
     153        -I/usr/src/exim-4.20-1/minires 
     154   (or whatever the latest exim source directory is) 
    154155 
    1551565. Do a "make install". This will build all the necessary files, and 
  • 1.7.7/MANIFEST

    r431 r433  
    4040hdrs/mymalloc.h 
    4141hdrs/mysocket.h 
     42hdrs/myssl.h 
    4243hdrs/oldflags.h 
    4344hdrs/parse.h 
     
    9697src/mymalloc.c 
    9798src/mysocket.c 
     99src/myssl.c 
    98100src/notify.c 
    99101src/parse.c 
     
    209211FAQ 
    210212README 
     213README.SSL 
    211214INSTALL 
    212215UPGRADING 
  • 1.7.7/Makefile.SH

    r429 r433  
    3636# dunemush@pennmush.org 
    3737# 
     38# If you want to profile the code, add -pg -a -DPROFILING to CCFLAGS 
     39# and (probably) remove -O 
     40# 
    3841$make_set_make 
    3942CC=$cc 
  • 1.7.7/Patchlevel

    r431 r433  
    11Do not edit this file. It is maintained by the official PennMUSH patches. 
    2 This is PennMUSH 1.7.7p16 
     2This is PennMUSH 1.7.7p17 
  • 1.7.7/game/data/minimal.db

    r335 r433  
    1 +V4191746 
     1+V29353474 
    22~3 
    33!0 
     
    88-1 
    99-1 
     10lockcount 0 
    10111 
    1112-1 
     
    2627-1 
    2728-1 
    28 _Enter|(=1) 
    29 _Use|(=1) 
    30 _Basic|(=1) 
     29lockcount 3 
     30type "Basic" 
     31creator 1 
     32flags 2 
     33key "=#1" 
     34type "Enter" 
     35creator 1 
     36flags 2 
     37key "=#1" 
     38type "Use" 
     39creator 1 
     40flags 2 
     41key "=#1" 
    31421 
    3243-1 
     
    5566-1 
    5667-1 
     68lockcount 0 
    57691 
    5870-1 
  • 1.7.7/game/mushcnf.dst

    r427 r433  
    1515mud_name TinyMUSH 
    1616 
    17 # the port it's running on
     17# The port it's running on. See also ssl_port, later
    1818port 4201 
    1919 
     
    152152chunk_cache_memory 1000000 
    153153 
    154 # The number of attributes that may be moved at one time, with no 
    155 # net activity.  The higher the value, the faster memory gets 
    156 # defragmented, but at a greater CPU cost. 
     154# The number of attributes that may be moved at one time, once per 
     155# second.  The higher the value, the faster memory gets defragmented, 
     156# but at a greater CPU cost. 
    157157chunk_migrate 500 
    158158 
    159 # The number of attributes that may be moved at one time, with net 
    160 # activity. 
    161 active_chunk_migrate 200 
     159### 
     160### SSL support 
     161### 
     162 
     163# The port to listen on for SSL connections. This must be an unused 
     164# port other than the standard connection port. To disable SSL 
     165# connections, leave this set to 0. 
     166ssl_port 0 
     167 
     168# The file containing the MUSH server's certificate and private key, 
     169# concatenated together, and with no password on the private key. 
     170# Obviously, this file should only be readable by the MUSH account 
     171# owner. If this is commented out, the server will not present a 
     172# certificate, so clients that attempt to authenticate the server 
     173# will fail. 
     174ssl_private_key_file  server-key.crt 
     175 
     176# The file containing one or more certificates of certifying authorities 
     177# that the server should trust to certify clients who connect and 
     178# present certificates. A standard bundle of these is distributed 
     179# with openssl as 'ca-bundle.crt'. If commented out, the server will 
     180# not attempt client authentication. 
     181ssl_ca_file /usr/share/ssl/certs/ca-bundle.crt 
     182 
     183# Are clients *required* to present a valid certificate in order to 
     184# make an SSL connection? 
     185ssl_require_client_cert no 
    162186 
    163187### 
  • 1.7.7/game/restrict.cnf

    r357 r433  
    1212#   wizard      Must be wiz to use it 
    1313#   god     Must be god to use it 
     14#   logname     When func/cmd is used, log its name and user 
     15#   logargs     When func/cmd is used, log its name, args, and user 
    1416#       <flag>      Any flag that must be present to use it (Command only) 
    1517#       <power>     Any power that must be present to use it (Command only) 
  • 1.7.7/game/txt/compose.sh.SH

    r355 r433  
    5252dir=$1 
    5353if $test ! -d $dir; then 
    54   $echo "Usage: compose.csh <directory>" 
     54  $echo "Usage: compose.sh <directory>" 
    5555  exit 0 
    5656fi 
  • 1.7.7/game/txt/hlp/penncmd.hlp

    r431 r433  
    34303430  The /brief switch is equivalent to the 'brief' command. 
    34313431  The /debug switch is wizard-only and shows raw values for certa 
    3432   in fields in an object.  
     3432    in fields in an object.  
    34333433  The /mortal switch shows an object as if you were a mortal other than 
    3434   the object's owner and is primarily useful to admins. 
     3434    the object's owner and is primarily useful to admins. This switch 
     3435    ignores the object's VISUAL flag (but not its attribute flags) 
    34353436  The /all switch shows the values of VEILED attributes. 
    34363437& follow 
  • 1.7.7/game/txt/hlp/pennflag.hlp

    r429 r433  
    131131  this, you will not be able to use these commands unless you have the 
    132132  power. Only wizards can grant @powers. To see if building is limited,  
    133   check @config
    134  
    135   See also: POWERS, @power, @dig, @open, @create, @config 
     133  check @command for the various building commands
     134 
     135  See also: POWERS, @power, @dig, @open, @create 
    136136& CHOWN_OK 
    137137  Flag:  CHOWN_OK  (things, rooms, exits) 
     
    600600  changes for more information. 
    601601& TERSE 
    602   Flag:  TERSE  (players
     602  Flag:  TERSE  (players, things
    603603 
    604604  When an object is set TERSE, it does not see the descriptions or 
    605605  success/failure messages in rooms. This is a useful flag if you're 
    606606  on a slow connection or you're moving through a familiar area and 
    607   don't want to see tons of text. This flag is only valid for players; 
    608   objects belonging to TERSE players are automatically considered to 
    609   be TERSE. 
     607  don't want to see tons of text.  
     608 
     609  When a player is TERSE, all of their objects are considered to be TERSE. 
    610610& TRANSPARENT 
    611611  Flag:  TRANSPARENT  (all types) 
  • 1.7.7/game/txt/hlp/pennfunc.hlp

    r431 r433  
    112112  conn()        doing()       height()      hidden()      idle() 
    113113  lports()      lwho()        mwho()        ports()       pueblo() 
    114   terminfo()    width()  
     114  ssl()         terminfo()    width()  
    115115& Dbref functions 
    116116  Dbref functions return a dbref or list of dbrefs related to some value 
     
    201201  merge()       mid()         ord()         pos()         regedit() 
    202202  lpos()        regmatch()    repeat()      reverse()     right() 
    203   rjust()       scramble()    secure()      sha1()        space() 
     203  rjust()       scramble()    secure()      sha0()        space() 
    204204  spellnum()    squish()      strcat()      strinsert()   stripaccents() 
    205205  stripansi()   strlen()      strmatch()    strreplace()  switch() 
     
    29892989    > say setunion(1.1 1.0, 1.000, %b, f) 
    29902990    You say, "1.0 1.1" 
    2991 & SHA1() 
    2992   sha1(<string>) 
    2993  
    2994   Returns the SHA-1 cryptographic hash of the string. See RFC 3174 
     2991& SHA0() 
     2992  sha0(<string>) 
     2993 
     2994  Returns the SHA cryptographic hash of the string. See RFC 3174 
    29952995  for more information. 
    29962996& SHL() 
     
    31853185  Returns the number of times the server has been rebooted with 
    31863186  @shutdown/reboot since the last full startup. 
     3187& SSL() 
     3188  ssl(<player|descriptor>) 
     3189 
     3190  This function returns 1 if the player is using an SSL connection, 
     3191  and 0 otherwise. If SSL is disabled, it always returns 0. 
     3192  Players can check the SSL status of their own connection. 
     3193  The See_All power is required to check other connections.  
     3194 
     3195  See also: terminfo() 
    31873196& STEP() 
    31883197  step([<obj>/]<attr>, <list>, <step>[, <delim>, <outsep>]) 
     
    33853394  pueblo           present if the client is in Pueblo mode. 
    33863395  telnet           present if the client understands the telnet protocol. 
     3396  ssl              present if the client is using an SSL/TLS connection. 
    33873397 
    33883398  Other fields may be added in the future, if, for example, MXP support 
     
    35053515& TRIM() 
    35063516  trim(<string>[,<character to trim>][,<trim style>]) 
     3517  trimpenn(<string>[,<character to trim>][,<trim style>]) 
     3518  trimtiny(<string>[,<trim style>][,<character to trim>]) 
    35073519  
    35083520  This function trims leading and trailing characters from a string. 
     
    35183530 
    35193531  If the tiny_trim_fun config option is "yes", the character and style 
    3520   arguments are reversed.   
     3532  arguments are reversed. Use trimpenn() or trimtiny() if you want to 
     3533  specify a particular argument sequence no matter how the option is set. 
    35213534  
    35223535   Examples: 
  • 1.7.7/game/txt/hlp/pennv176.hlp

    r431 r433  
     1& 1.7.6p13 
     2Version 1.7.6 patchlevel 13                     August 11, 2003 
     3 
     4Fixes: 
     5   * Calling panic() while in the middle of a panic dump would cause a loop. 
     6     Reported by [EEH]. [SW]  
     7   * Outdated mention of compose.csh removed from compose.sh.SH. 
     8     Reported by Cheetah@M*U*S*H. 
     9   * timestring() dealt wrongly with large arguments. Reported by 
     10     Jules@M*U*S*H. timefmt() had a similar problem, reported by 
     11     Luke@M*U*S*H. 
     12   * Better checking of db save failures. [SW] 
     13 
     14 
    115& 1.7.6p12 
    216Version 1.7.6 patchlevel 12                     June 23, 2003 
  • 1.7.7/game/txt/hlp/pennv177.hlp

    r431 r433  
    1 & 1.7.7p16 
     1& 1.7.7p17 
    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 17                     August 11, 2003 
     15 
     16Major changes: 
     17  * SSL support, including server and client authentication as options. 
     18    This should be considered experimental.  New ssl() function returns 1 
     19    if a player/descriptor is using SSL, 0 otherwise. New file README.SSL 
     20    documents how to set up SSL. Two things to note: 
     21    - SSL connections are dropped on @shutdown/reboot, so SSL users may  
     22      wish to write client triggers to reconnect.  
     23    - Output flushing behaves slightly differently for SSL connections. 
     24  * The way lock keys are handled internally has been rewritten to allow 
     25    them to be tracked by the same chunk-management code that handles 
     26    attributes. [SW] 
     27  * @mail message texts are now stored with the chunk-management code. [SW] 
     28  * The new code can no longer read databases created by versions of Penn 
     29    before 1.7.5p0. If you need to do this, load it in 1.7.6, shutdown, 
     30    and use that database. [SW] 
     31Minor changes: 
     32  * A new minimal.db is distributed (older ones probably won't work, 
     33    and this one probably won't work with older versions). [TAP] 
     34  * Contents/exits lists and functions that use first_visible (like 
     35    lcon, lexits, etc.) are now affected by INTERACT_SEE. Suggested by 
     36    Prospero@Metro. 
     37  * @chan/recall now displays the last 10 lines by default. Use 
     38    @chan/recall <chan>=0 to get the full buffer. Suggested by [TAP]. 
     39  * Various boolexp tweaks. [SW] 
     40  * @power provides more verbose feedback. Suggested by Mordie@M*U*S*H. [SW] 
     41  * Additional chunk tweaks, including limiting migrations to one 
     42    per second. [TAP] 
     43  * PROFILING #define for use when profiling the code (surprise). This 
     44    just disables the CPU timer. 
     45  * When matching $-commands, only call the slower capturing wildcard match 
     46    function when we already know it succeeds, since it won't most of the time. 
     47    The faster non-capturing function is checked first to find a match. [SW] 
     48  * PCRE is initialized once, at startup, rather than testing to see if it has 
     49    to be done before each place regular expressions are used. [SW] 
     50  * The TERSE flag now applies to objects, not just players. Suggested 
     51    by Aur@M*U*S*H. 
     52  * The terminfo() function now returns SSL status as well. 
     53  * help-like commands without arguments now use the command name 
     54    as the argument. E.g. 'news' now looks for topic 'news', instead of 
     55    'help'. If not found, we fall back on help. Patch by Mike Griffiths. 
     56  * When an object is zoned to an unlocked ZMO, the ZMO is now autolocked 
     57    to =me instead of $me, because it's probably less confusing. 
     58    Suggested by Luke@M*U*S*H. 
     59  * @name now automatically trims leading and trailing spaces from its 
     60    newname argument, to avoid confusing people who use edit() to  
     61    generate new names and leave in spaces. Report by [TAP], patch by [SW]. 
     62Commands: 
     63  * New 'logargs' and 'logname' restrictions in restrict.cnf allow 
     64    per-command logging. Suggested by Saturn @ M3. 
     65Functions: 
     66  * The sha1() function has been renamed sha0(), since that's what it 
     67    really does. [TAP] 
     68  * trimtiny() and trimpenn() work like trim(), but force the TM or 
     69    Penn argument style. 
     70  * New 'logargs' and 'logname' restrictions in restrict.cnf allow 
     71    per-function logging. Suggested by Saturn @ M3. 
     72Fixes: 
     73  * The side-effect version of name() was producing a weird return 
     74    value. Reported by Saturn@M3. 
     75  * Problems with restrict_command and restrict_function with multiple 
     76    restrictions now fixed. Report by Sholevi@M*U*S*H. 
     77  * stddef.h now included in src/extchat.c. Report by [EEH]. [SW] 
     78  * INFO output now includes a missing newline. Report by [EEH]. [SW] 
     79  * help BUILDER updated. Report by Laura Langland-Shula. 
     80  * down.txt message wasn't being sent. Report by Sholevi@M*U*S*H. [SW] 
     81  * New Win32 project files that include the chunk code. [EEH] 
     82  * @chan/what no longer highlights the channel's name, as this is 
     83    confusing if you use ansified channel names. Suggested by  
     84    Oriens@Alexandria. 
     85  * ex/mortal now operates more correctly. Report by Amy Kou'ai. 
     86  * Fixes from 1.7.6p13. 
     87 
     88& 1.7.7p16 
    1489Version 1.7.7 patchlevel 16                     June 23, 2003 
    1590 
     
    35110  * @chan/what displays information about a channel's recall buffer, if any. 
    36111    [SW] 
    37   * @chan/recall'ed lines are more clearly marked as such. Suggested by  
     112  * @chan/recall'ed lines are more clearly marked as such. Suggested by 
    38113    Oriens@Alexandria. [SW] 
    39114  * Consolidation of a common idiom used to format times throughout the source 
     
    57132Fixes: 
    58133  * Problem with checking command flag masks when the number of 
    59     flags was an even multiple of 8. Reported by Nymeria and  
     134    flags was an even multiple of 8. Reported by Nymeria and 
    60135    Mordie@M*U*S*H. 
    61136  * Tweak to improve efficiency of ancestor checking code and delint 
     
    68143    Report by Krad@M*U*S*H. 
    69144  * Modified several Makefile.SH targets to prevent Javelin from 
    70     releasing patches that don't have the autogenerated files  
     145    releasing patches that don't have the autogenerated files 
    71146    up-to-date for Windows folks. 
    72147  * Removed some dependence on typedefs that may or may not be in system 
     
    75150  * Help fixes by Mike Griffiths and Oriens@Alexandria. 
    76151 
    77    
     152 
    78153& 1.7.7p14 
    79154Version 1.7.7 patchlevel 14                     May 22, 2003 
    80155 
    81156Major changes: 
    82   * Ancestors: an object can be configured to serve as an 'ultimate  
     157  * Ancestors: an object can be configured to serve as an 'ultimate 
    83158    parent' of every room, exit, thing, or player, and attributes 
    84     that are not found on an object or any of its parents may be inherited  
    85     from the ancestor for that object type.  The ORPHAN flag prevents  
     159    that are not found on an object or any of its parents may be inherited 
     160    from the ancestor for that object type.  The ORPHAN flag prevents 
    86161    ancestors from being used on an object.  Patch by Walker@M*U*S*H. 
    87162  * Mail messages now track not only the dbref of the sender but the 
    88163    sender's creation time, so messages from dbrefs that have been 
    89     nuked and recreated can be distinguished from messages from the  
     164    nuked and recreated can be distinguished from messages from the 
    90165    original sender. This modifies the maildb and make it not usable 
    91166    with older versions. All existing @mail is grandfathered in, and 
     
    93168  * New chunk memory allocator can be used to greatly reduce process 
    94169    memory requirements by swapping little-used attribute texts out 
    95     to disk and caching often-used attribute texts in memory.  
     170    to disk and caching often-used attribute texts in memory. 
    96171    This is incompatible with forking dumps, so if you use it, 
    97     you'll do nonforking dumps.  Configurable in mush.cnf, see comments  
     172    you'll do nonforking dumps.  Configurable in mush.cnf, see comments 
    98173    there. [TAP] 
    99174  * Hardcode: new interaction type INTERACT_PRESENCE marks the 
     
    105180  * fraction(), for turning floating-point numbers into fractions. [SW] 
    106181  * root(), for finding roots higher than the square root. [SW] 
    107 Minor changes:  
     182Minor changes: 
    108183  * We now use wrapper functions atr_value and safe_atr_value instead of 
    109184    uncompress(AL_STR(...)) or safe_uncompress(AL_STR(...)), so we 
     
    112187    as %0. Suggested by Sholevi and Time@M*U*S*H. [SW] 
    113188  * Config options that take times now accept a notation describing what kind 
    114     of units to use. For example, 3600s, 60m, 30m1800s, and 1h all refer to  
     189    of units to use. For example, 3600s, 60m, 30m1800s, and 1h all refer to 
    115190    the same period of time. Suggested by Time@M*U*S*H. [SW] 
    116191  * Doxygen commenting of non-static members is essentially complete! 
     
    140215    Konstantine Shirow. [SW] 
    141216  * Using @chan/buffer to resize a recall buffer gives feedback. Reported by 
    142     Sholevi@M*U*S*H. [SW]  
     217    Sholevi@M*U*S*H. [SW] 
    143218  * Help fix for grab() by Adu@AbryssMUSH. 
    144219  * You can no longer destroy the base_room (or default_home). Suggested 
     
    151226  * Interactions (something like "realms" in mux2). Two functions 
    152227    in local.c can now be used to control conditions under which 
    153     objects can see, hear, or match each other. Possibly useful for  
     228    objects can see, hear, or match each other. Possibly useful for 
    154229    implementing umbral worlds, etc. Patch by Vadiv@M*U*S*H. 
    155230Functions: 
  • 1.7.7/game/txt/hlp/pennvOLD.hlp

    r431 r433  
    44184418type 'help <version>p<patchlevel>'. For example, 'help 1.7.2p3' 
    44194419 
    4420 1.7.7: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16 
    4421 1.7.6: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12 
     44201.7.7: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17 
     44211.7.6: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13 
    442244221.7.5: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12 
    442344231.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/attrib.h

    r431 r433  
    4242extern int atr_iter_get(dbref player, dbref thing, char const *name, 
    4343            aig_func func, void *args); 
     44extern int atr_iter_get_visible(dbref player, dbref thing, char const *name, 
     45                aig_func func, void *args); 
    4446extern ATTR *atr_complete_match(dbref player, char const *atr, dbref privs); 
    4547extern void atr_free(dbref thing); 
     
    6163safe_atr_value(ATTR *atr) 
    6264  __attribute_malloc__; 
    63     extern void atr_migrate(int amount); 
    6465 
    6566/* possible attribute flags */ 
  • 1.7.7/hdrs/boolexp.h

    r417 r433  
    22#define BOOLEXP_H 
    33#include "copyrite.h" 
     4#include "chunk.h" 
    45 
    5 /* Boolean expressions, for locks */ 
    6 typedef enum boolexp_type { 
    7   BOOLEXP_AND, 
    8   BOOLEXP_OR, 
    9   BOOLEXP_NOT, 
    10   BOOLEXP_CONST, 
    11   BOOLEXP_ATR, 
    12   BOOLEXP_IND, 
    13   BOOLEXP_CARRY, 
    14   BOOLEXP_IS, 
    15   BOOLEXP_OWNER, 
    16   BOOLEXP_EVAL, 
    17   BOOLEXP_FLAG, 
    18   BOOLEXP_BOOL 
    19 } boolexp_type; 
     6typedef chunk_reference_t boolexp; 
    207 
    218/* tokens for locks */ 
     
    2815#define OWNER_TOKEN '$' 
    2916 
    30 /** An attribute lock specification. 
    31  * This structure is a piece of a boolexp that's used to store  
    32  * attribute locks (CANDO:1), eval locks (CANDO/1), and flag locks 
    33  * FLAG^WIZARD. 
    34  */ 
    35 struct boolatr { 
    36   const char *name;     /**< Name of attribute, flag, etc. to test */ 
    37   char text[BUFFER_LEN];    /**< Value to test against */ 
    38 }; 
    39  
    40 /** A boolean expression. 
    41  * Boolean expressions are most widely used in locks. This structure 
    42  * is a general representation of the possible boolean expressions 
    43  * that can be specified in MUSHcode. 
    44  */ 
    45 struct boolexp { 
    46   /** Type of expression. 
    47    * The type of expressio is one of the boolexp_type's, such as 
    48    * and, or, not, constant, attribute, indirect, carry, is, 
    49    * owner, eval, flag, etc. 
    50    */ 
    51   boolexp_type type; 
    52   dbref thing;          /**< An object, or a boolean val */ 
    53   /** The expression itself. 
    54    * This union comprises the various possible types of data we 
    55    * might need to represent any of the expression types. 
    56    */ 
    57   union { 
    58     /** And and or locks: combinations of boolexps. 
    59      * This union member is used with and and or locks. 
    60      */ 
    61     struct { 
    62       struct boolexp *a;    /**< One boolean expression */ 
    63       struct boolexp *b;    /**< Another boolean expression */ 
    64     } sub; 
    65     struct boolexp *n;      /**< Not locks: boolean expression to negate */ 
    66     struct boolatr *atr_lock;   /**< Atr, eval and flag locks */ 
    67     const char *ind_lock;   /**< Indirect locks */ 
    68   } data; 
    69 }; 
    70  
    71 #define TRUE_BOOLEXP ((struct boolexp *) 0) 
    72 #define FALSE_ATOM (0) 
    73 #define TRUE_ATOM (1) 
     17enum { TRUE_BOOLEXP = NULL_CHUNK_REFERENCE }; 
    7418 
    7519/* From boolexp.c */ 
    76 extern struct boolatr *alloc_atr(const char *name, const char *s); 
    77 extern struct boolexp *dup_bool(struct boolexp *b); 
    78 extern struct boolexp *alloc_bool(void); 
    79 extern int sizeof_boolexp(struct boolexp *b); 
    80 extern int eval_boolexp(dbref player, struct boolexp *b, dbref target); 
    81 extern struct boolexp *parse_boolexp(dbref player, const char *buf, 
    82                      lock_type ltype); 
    83 extern void free_boolexp(struct boolexp *b); 
    84 struct boolexp *getboolexp(FILE * f, const char *ltype); 
    85 void putboolexp(FILE * f, struct boolexp *b); 
     20extern boolexp dup_bool(boolexp b); 
     21extern int sizeof_boolexp(boolexp b); 
     22extern int eval_boolexp(dbref player, boolexp b, dbref target); 
     23extern boolexp parse_boolexp(dbref player, const char *buf, lock_type ltype); 
     24extern void free_boolexp(boolexp b); 
     25boolexp getboolexp(FILE * f, const char *ltype); 
     26void putboolexp(FILE * f, boolexp b); 
    8627enum u_b_f { UB_ALL, UB_DBREF }; 
    87 extern char *unparse_boolexp(dbref player, struct boolexp *b, enum u_b_f flag); 
     28extern char *unparse_boolexp(dbref player, boolexp b, enum u_b_f flag); 
    8829#endif              /* BOOLEXP_H */ 
  • 1.7.7/hdrs/chunk.h

    r427 r433  
    44#ifndef _CHUNK_H_ 
    55#define _CHUNK_H_ 
     6 
     7#undef LOG_CHUNK_STATS 
    68 
    79typedef unsigned short u_int_16; 
  • 1.7.7/hdrs/command.h

    r427 r433  
    3939 */ 
    4040#define CMD_T_INTERNAL  0x00040000 
     41 
     42/* Logging for commands */ 
     43#define CMD_T_LOGNAME   0x00020000 
     44#define CMD_T_LOGARGS   0x00010000 
    4145 
    4246/* Split arguments at = */ 
  • 1.7.7/hdrs/conf.h

    r427 r433  
    8484  char mud_name[128];   /**< The name of the mush */ 
    8585  int port;     /**< The port to listen for connections */ 
    86   int sslport;     /**< Future: The port to listen for SSL connections */ 
     86  int ssl_port;        /**< The port to listen for SSL connections */ 
    8787  char input_db[256];   /**< Name of the input database file */ 
    8888  char output_db[256];  /**< Name of the output database file */ 
     
    230230  char chunk_swap_file[256];    /**< Name of the attribute swap file */ 
    231231  int chunk_cache_memory;   /**< Memory to use for the attribute cache */ 
    232   int chunk_migrate_inactive;   /**< Number of attrs to migrate when inactive */ 
    233   int chunk_migrate_active; /**< Number of attrs to migrate when active */ 
     232  int chunk_migrate_amount; /**< Number of attrs to migrate each second */ 
     233#ifdef HAS_OPENSSL 
     234  char ssl_private_key_file[256];   /**< File to load the server's cert from */ 
     235  char ssl_ca_file[256];    /**< File to load the CA certs from */ 
     236  int ssl_require_client_cert;  /**< Are clients required to present certs? */ 
     237#endif 
    234238}; 
    235239 
     
    261265 
    262266#define TINYPORT         (options.port) 
    263 #define SSLPORT          (options.sslport) 
     267#define SSLPORT          (options.ssl_port) 
    264268#define PLAYER_START     (options.player_start) 
    265269#define MASTER_ROOM      (options.master_room) 
     
    366370#define CHUNK_SWAP_FILE (options.chunk_swap_file) 
    367371#define CHUNK_CACHE_MEMORY (options.chunk_cache_memory) 
    368 #define CHUNK_MIGRATE_INACTIVE (options.chunk_migrate_inactive) 
    369 #define CHUNK_MIGRATE_ACTIVE (options.chunk_migrate_active) 
     372#define CHUNK_MIGRATE_AMOUNT (options.chunk_migrate_amount) 
    370373 
    371374/* Compiler-specific stuff. */ 
  • 1.7.7/hdrs/dbdefs.h