This is patch12 to PennMUSH 1.7.4. After applying this patch, you will have version 1.7.4p12 To apply this patch, save it to a file in your top-level MUSH directory, and do the following: patch -p1 < 1.7.4-patch12 make install If you use GNU patch 2.2, you probably want the above to be 'patch -b -p1', not just 'patch -p1'. Unix (or cygwin) users need not worry about failed hunks in src/switchinc.c, hdrs/switches.h, hdrs/cmds.h, or hdrs/funs.h. These files are automatically rebuilt on compile. Then @shutdown and restart your MUSH. - Alan/Javelin In this patch: Minor changes: * @dol/delim is now @dol/delimit, for Mux compatibility. [SW] * /preserve switch for @chownall works like @chown's /preserve switch. This changes the default behavior of @chownall, which used to preserve everything, to work like @chown and strip privileged bits. Suggested by Taladan@M*U*S*H. Fixes: * Warnings in index-files.pl are no longer shown. Report by Noltar@Korongil * Additional support for ansi in channel names. Ansi is now stripped when sorting channels and when matching names for @chan/decomp and @chan/what. Reported by Oriens@Alexandria. * Help @decompile clarifies the /flags switch. Suggested by Oriens@Alexandria * Source is indented before diffs are produced. * Typo in help zmr correct by Oriens@Alexandria. * Players disconnecting without QUIT continued to use CPU until fully disconnected. Fixed. Report by Protagonist@M*U*S*H. [SW] Prereq: 1.7.4p11 *** 1_7_4.178/Patchlevel Mon, 15 Oct 2001 14:53:56 -0500 dunemush (pennmush/5_Patchlevel 1.29 600) --- 1_7_4.186(w)/Patchlevel Fri, 09 Nov 2001 19:06:00 -0600 dunemush (pennmush/5_Patchlevel 1.29 600) *************** *** 1,2 **** Do not edit this file. It is maintained by the official PennMUSH patches. ! This is PennMUSH 1.7.4p11 --- 1,2 ---- Do not edit this file. It is maintained by the official PennMUSH patches. ! This is PennMUSH 1.7.4p12 *** 1_7_4.178/CHANGES Thu, 25 Oct 2001 11:34:36 -0500 dunemush (pennmush/8_CHANGES 1.219.1.47 600) --- 1_7_4.186(w)/CHANGES Fri, 09 Nov 2001 19:06:34 -0600 dunemush (pennmush/8_CHANGES 1.219.1.55 600) *************** *** 17,22 **** --- 17,42 ---- ========================================================================== + Version 1.7.4 patchlevel 12 November 9, 2001 + + Minor changes: + * @dol/delim is now @dol/delimit, for Mux compatibility. [SW] + * /preserve switch for @chownall works like @chown's /preserve switch. + This changes the default behavior of @chownall, which used to + preserve everything, to work like @chown and strip privileged bits. + Suggested by Taladan@M*U*S*H. + Fixes: + * Warnings in index-files.pl are no longer shown. Report by Noltar@Korongil + * Additional support for ansi in channel names. Ansi is now stripped + when sorting channels and when matching names for @chan/decomp and + @chan/what. Reported by Oriens@Alexandria. + * Help @decompile clarifies the /flags switch. Suggested by Oriens@Alexandria + * Source is indented before diffs are produced. + * Typo in help zmr correct by Oriens@Alexandria. + * Players disconnecting without QUIT continued to use CPU until fully + disconnected. Fixed. Report by Protagonist@M*U*S*H. [SW] + + Version 1.7.4 patchlevel 11 October 15, 2001 Minor Changes: *** 1_7_4.178/game/txt/hlp/pennvers.hlp Thu, 25 Oct 2001 11:34:36 -0500 dunemush (pennmush/12_pennvers.h 1.169.1.38 600) --- 1_7_4.186(w)/game/txt/hlp/pennvers.hlp Fri, 09 Nov 2001 19:02:37 -0600 dunemush (pennmush/12_pennvers.h 1.169.1.42 600) *************** *** 1,5 **** & changes ! & 1.7.4p11 This is a list of changes in this patchlevel which are probably of interest to players. More information about new commands and functions can probably be gotten via 'help '. 'help credits' --- 1,5 ---- & changes ! & 1.7.4p12 This is a list of changes in this patchlevel which are probably of interest to players. More information about new commands and functions can probably be gotten via 'help '. 'help credits' *************** *** 11,16 **** --- 11,37 ---- A list of the patchlevels associated with each release can be read in 'help patchlevels'. + Version 1.7.4 patchlevel 12 October 15, 2001 + + Minor changes: + * @dol/delim is now @dol/delimit, for Mux compatibility. [SW] + * /preserve switch for @chownall works like @chown's /preserve switch. + This changes the default behavior of @chownall, which used to + preserve everything, to work like @chown and strip privileged bits. + Suggested by Taladan@M*U*S*H. + Fixes: + * Warnings in index-files.pl are no longer shown. Report by Noltar@Korongil + * Additional support for ansi in channel names. Ansi is now stripped + when sorting channels and when matching names for @chan/decomp and + @chan/what. Reported by Oriens@Alexandria. + * Help @decompile clarifies the /flags switch. Suggested by Oriens@Alexandria + * Source is indented before diffs are produced. + * Typo in help zmr correct by Oriens@Alexandria. + * Players disconnecting without QUIT continued to use CPU until fully + disconnected. Fixed. Report by Protagonist@M*U*S*H. [SW] + + + & 1.7.4p11 Version 1.7.4 patchlevel 11 October 15, 2001 Minor Changes: *************** *** 4891,4897 **** For information on a specific patchlevel of one of the versions listed, type 'help p'. For example, 'help 1.7.2p3' ! 1.7.4: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11 1.7.3: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14 1.7.2: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35 --- 4912,4918 ---- For information on a specific patchlevel of one of the versions listed, type 'help p'. For example, 'help 1.7.2p3' ! 1.7.4: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12 1.7.3: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14 1.7.2: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35 *** 1_7_4.178/game/txt/hlp/penntop.hlp Wed, 24 Oct 2001 16:16:45 -0500 dunemush (pennmush/13_penntop.hl 1.2.1.27.1.3.1.2.1.2 600) --- 1_7_4.186(w)/game/txt/hlp/penntop.hlp Tue, 30 Oct 2001 10:45:47 -0600 dunemush (pennmush/13_penntop.hl 1.2.1.27.1.3.1.2.1.2.1.1 600) *************** *** 1672,1678 **** objects in the ZMR are global to that zone. Zone master rooms are only defined if globals are used. Zone master rooms are best used for very large zones which have a lot of global exits, or for zones with ! restricted commands that can go on a seperate use-locked object from general ones. Only other rooms can have a ZMR as their zone. --- 1672,1678 ---- objects in the ZMR are global to that zone. Zone master rooms are only defined if globals are used. Zone master rooms are best used for very large zones which have a lot of global exits, or for zones with ! restricted commands that can go on a separate use-locked object from general ones. Only other rooms can have a ZMR as their zone. *** 1_7_4.178/game/txt/hlp/penncmd.hlp Tue, 25 Sep 2001 16:27:23 -0500 dunemush (pennmush/18_penncmd.hl 1.2.1.1.1.47.1.1.1.1.1.3.1.4.1.1 600) --- 1_7_4.186(w)/game/txt/hlp/penncmd.hlp Wed, 07 Nov 2001 19:38:19 -0600 dunemush (pennmush/18_penncmd.hl 1.2.1.1.1.47.1.1.1.1.1.3.1.4.1.1.1.1.1.1 600) *************** *** 706,712 **** This command makes @decompile use the object's DBREF # instead of its name, which is useful for editing code off-MUSH. @decompile/flags ! Only the code to @create the object and set its flags is printed. @decompile/attribs Only the code to set the object's attributes is printed. @decompile/skipdefault --- 706,712 ---- This command makes @decompile use the object's DBREF # instead of its name, which is useful for editing code off-MUSH. @decompile/flags ! Only the code to @create the object and set flags/powers/locks is printed. @decompile/attribs Only the code to set the object's attributes is printed. @decompile/skipdefault *************** *** 832,843 **** See also: @poll, WHO, DOING & @dolist ! @dolist[/notify][/delim] [] = @dolist executes the for each element in . If is a function, it will be evaluated to obtain the necessary list to use. It may be any space-separated list of strings, which can be object numbers, ! attributes, or arbitrary words. If the /delim switch is given, the first character of the list is used as the separator, instead of space. is a command or list of commands enclosed in braces { } --- 832,843 ---- See also: @poll, WHO, DOING & @dolist ! @dolist[/notify][/delimit] [] = @dolist executes the for each element in . If is a function, it will be evaluated to obtain the necessary list to use. It may be any space-separated list of strings, which can be object numbers, ! attributes, or arbitrary words. If the /delimit switch is given, the first character of the list is used as the separator, instead of space. is a command or list of commands enclosed in braces { } *** 1_7_4.178/game/txt/index-files.pl Mon, 30 Jul 2001 13:14:13 -0500 dunemush (pennmush/28_index-file 1.4 600) --- 1_7_4.186(w)/game/txt/index-files.pl Thu, 25 Oct 2001 23:46:44 -0500 dunemush (pennmush/28_index-file 1.5 600) *************** *** 1,4 **** ! #!/usr/local/bin/perl -w # # index-files.pl - make an & index topic for events/news/help # --- 1,4 ---- ! #!/usr/local/bin/perl # # index-files.pl - make an & index topic for events/news/help # *** 1_7_4.178/src/SWITCHES Tue, 04 Sep 2001 08:19:24 -0500 dunemush (pennmush/b/22_SWITCHES 1.12 600) --- 1_7_4.186(w)/src/SWITCHES Wed, 07 Nov 2001 19:38:19 -0600 dunemush (pennmush/b/22_SWITCHES 1.13 600) *************** *** 23,29 **** DECOMPILE DEFAULTS DELETE ! DELIM DESCRIBE DESTROY DISABLE --- 23,29 ---- DECOMPILE DEFAULTS DELETE ! DELIMIT DESCRIBE DESTROY DISABLE *** 1_7_4.178/src/wiz.c Mon, 13 Aug 2001 19:51:56 -0500 dunemush (pennmush/b/23_wiz.c 1.44.1.1.1.1.1.2.1.7 660) --- 1_7_4.186(w)/src/wiz.c Fri, 09 Nov 2001 19:14:35 -0600 dunemush (pennmush/b/23_wiz.c 1.44.1.1.1.1.1.2.1.7.1.1 660) *************** *** 811,820 **** } void ! do_chownall(player, name, target) dbref player; const char *name; const char *target; { int i; dbref victim; --- 811,821 ---- } void ! do_chownall(player, name, target, preserve) dbref player; const char *name; const char *target; + int preserve; { int i; dbref victim; *************** *** 840,846 **** for (i = 0; i < db_top; i++) { if ((Owner(i) == victim) && (!IsPlayer(i))) { ! Owner(i) = n_target; count++; } } --- 841,847 ---- for (i = 0; i < db_top; i++) { if ((Owner(i) == victim) && (!IsPlayer(i))) { ! chown_object(player, i, n_target, preserve); count++; } } *** 1_7_4.178/src/switchinc.c Thu, 25 Oct 2001 14:54:56 -0500 dunemush (pennmush/b/32_switchinc. 1.3.1.2.1.6.1.18.1.2.1.2.2.5.1.4.2.4.1.1.1.2.1.5 660) --- 1_7_4.186(w)/src/switchinc.c Fri, 09 Nov 2001 19:14:34 -0600 dunemush (pennmush/b/32_switchinc. 1.3.1.2.1.6.1.18.1.2.1.2.2.5.1.4.2.4.1.1.1.2.1.5.1.1 660) *************** *** 1,516 **** { ! "ACCESS", SWITCH_ACCESS ! } ! , ! { ! "ADD", SWITCH_ADD ! } ! , ! { ! "ALL", SWITCH_ALL ! } ! , ! { ! "ATTRIBS", SWITCH_ATTRIBS ! } ! , ! { ! "BAN", SWITCH_BAN ! } ! , ! { ! "BLIND", SWITCH_BLIND ! } ! , ! { ! "BRIEF", SWITCH_BRIEF ! } ! , ! { ! "CHECK", SWITCH_CHECK ! } ! , ! { ! "CHOWN", SWITCH_CHOWN ! } ! , ! { ! "CLEAR", SWITCH_CLEAR ! } ! , ! { ! "CMD", SWITCH_CMD ! } ! , ! { ! "COMMANDS", SWITCH_COMMANDS ! } ! , ! { ! "CONN", SWITCH_CONN ! } ! , ! { ! "CONNECT", SWITCH_CONNECT ! } ! , ! { ! "CONNECTED", SWITCH_CONNECTED ! } ! , ! { ! "CONTENTS", SWITCH_CONTENTS ! } ! , ! { ! "COSTS", SWITCH_COSTS ! } ! , ! { ! "COUNT", SWITCH_COUNT ! } ! , ! { ! "CREATE", SWITCH_CREATE ! } ! , ! { ! "DATABASE", SWITCH_DATABASE ! } ! , ! { ! "DB", SWITCH_DB ! } ! , ! { ! "DEBUG", SWITCH_DEBUG ! } ! , ! { ! "DECOMPILE", SWITCH_DECOMPILE ! } ! , ! { ! "DEFAULTS", SWITCH_DEFAULTS ! } ! , ! { ! "DELETE", SWITCH_DELETE ! } ! , ! { ! "DELIM", SWITCH_DELIM ! } ! , ! { ! "DESCRIBE", SWITCH_DESCRIBE ! } ! , ! { ! "DESTROY", SWITCH_DESTROY ! } ! , ! { ! "DISABLE", SWITCH_DISABLE ! } ! , ! { ! "DOWN", SWITCH_DOWN ! } ! , ! { ! "DSTATS", SWITCH_DSTATS ! } ! , ! { ! "EMIT", SWITCH_EMIT ! } ! , ! { ! "ENABLE", SWITCH_ENABLE ! } ! , ! { ! "ERR", SWITCH_ERR ! } ! , ! { ! "EXITS", SWITCH_EXITS ! } ! , ! { ! "FILE", SWITCH_FILE ! } ! , ! { ! "FIRST", SWITCH_FIRST ! } ! , ! { ! "FLAGS", SWITCH_FLAGS ! } ! , ! { ! "FOLDERS", SWITCH_FOLDERS ! } ! , ! { ! "FORWARD", SWITCH_FORWARD ! } ! , ! { ! "FSTATS", SWITCH_FSTATS ! } ! , ! { ! "FULL", SWITCH_FULL ! } ! , ! { ! "FUNCTIONS", SWITCH_FUNCTIONS ! } ! , ! { ! "FWD", SWITCH_FWD ! } ! , ! { ! "GAG", SWITCH_GAG ! } ! , ! { ! "GLOBALS", SWITCH_GLOBALS ! } ! , ! { ! "HEADER", SWITCH_HEADER ! } ! , ! { ! "HERE", SWITCH_HERE ! } ! , ! { ! "HIDE", SWITCH_HIDE ! } ! , ! { ! "ILIST", SWITCH_ILIST ! } ! , ! { ! "INVENTORY", SWITCH_INVENTORY ! } ! , ! { ! "IPRINT", SWITCH_IPRINT ! } ! , ! { ! "JOIN", SWITCH_JOIN ! } ! , ! { ! "LIST", SWITCH_LIST ! } ! , ! { ! "LOWERCASE", SWITCH_LOWERCASE ! } ! , ! { ! "ME", SWITCH_ME ! } ! , ! { ! "MEMBERS", SWITCH_MEMBERS ! } ! , ! { ! "MOD", SWITCH_MOD ! } ! , ! { ! "MORTAL", SWITCH_MORTAL ! } ! , ! { ! "MOTD", SWITCH_MOTD ! } ! , ! { ! "MUTE", SWITCH_MUTE ! } ! , ! { ! "NAME", SWITCH_NAME ! } ! , ! { ! "NO", SWITCH_NO ! } ! , ! { ! "NOEVAL", SWITCH_NOEVAL ! } ! , ! { ! "NOFLAGCOPY", SWITCH_NOFLAGCOPY ! } ! , ! { ! "NOISY", SWITCH_NOISY ! } ! , ! { ! "NOSIG", SWITCH_NOSIG ! } ! , ! { ! "NOSPACE", SWITCH_NOSPACE ! } ! , ! { ! "NOTIFY", SWITCH_NOTIFY ! } ! , ! { ! "NUKE", SWITCH_NUKE ! } ! , ! { ! "OFF", SWITCH_OFF ! } ! , ! { ! "ON", SWITCH_ON ! } ! , ! { ! "OUTSIDE", SWITCH_OUTSIDE ! } ! , ! { ! "OVERRIDE", SWITCH_OVERRIDE ! } ! , ! { ! "PANIC", SWITCH_PANIC ! } ! , ! { ! "PARANOID", SWITCH_PARANOID ! } ! , ! { ! "PLAYERS", SWITCH_PLAYERS ! } ! , ! { ! "PORT", SWITCH_PORT ! } ! , ! { ! "POSE", SWITCH_POSE ! } ! , ! { ! "PRESERVE", SWITCH_PRESERVE ! } ! , ! { ! "PRINT", SWITCH_PRINT ! } ! , ! { ! "PRIVS", SWITCH_PRIVS ! } ! , ! { ! "PURGE", SWITCH_PURGE ! } ! , ! { ! "QUICK", SWITCH_QUICK ! } ! , ! { ! "QUIET", SWITCH_QUIET ! } ! , ! { ! "READ", SWITCH_READ ! } ! , ! { ! "REBOOT", SWITCH_REBOOT ! } ! , ! { ! "REGISTER", SWITCH_REGISTER ! } ! , ! { ! "REMOVE", SWITCH_REMOVE ! } ! , ! { ! "RENAME", SWITCH_RENAME ! } ! , ! { ! "RESTORE", SWITCH_RESTORE ! } ! , ! { ! "RESTRICT", SWITCH_RESTRICT ! } ! , ! { ! "RETROACTIVE", SWITCH_RETROACTIVE ! } ! , ! { ! "ROOM", SWITCH_ROOM ! } ! , ! { ! "ROOMS", SWITCH_ROOMS ! } ! , ! { ! "ROYALTY", SWITCH_ROYALTY ! } ! , ! { ! "SEE", SWITCH_SEE ! } ! , ! { ! "SEEFLAG", SWITCH_SEEFLAG ! } ! , ! { ! "SELF", SWITCH_SELF ! } ! , ! { ! "SEND", SWITCH_SEND ! } ! , ! { ! "SET", SWITCH_SET ! } ! , ! { ! "SILENT", SWITCH_SILENT ! } ! , ! { ! "SKIPDEFAULTS", SWITCH_SKIPDEFAULTS ! } ! , ! { ! "SPEAK", SWITCH_SPEAK ! } ! , ! { ! "STATS", SWITCH_STATS ! } ! , ! { ! "SUMMARY", SWITCH_SUMMARY ! } ! , ! { ! "TABLES", SWITCH_TABLES ! } ! , ! { ! "TAG", SWITCH_TAG ! } ! , ! { ! "TELEPORT", SWITCH_TELEPORT ! } ! , ! { ! "TF", SWITCH_TF ! } ! , ! { ! "THINGS", SWITCH_THINGS ! } ! , ! { ! "TITLE", SWITCH_TITLE ! } ! , ! { ! "TRACE", SWITCH_TRACE ! } ! , ! { ! "UNCLEAR", SWITCH_UNCLEAR ! } ! , ! { ! "UNFOLDER", SWITCH_UNFOLDER ! } ! , ! { ! "UNGAG", SWITCH_UNGAG ! } ! , ! { ! "UNHIDE", SWITCH_UNHIDE ! } ! , ! { ! "UNMUTE", SWITCH_UNMUTE ! } ! , ! { ! "UNTAG", SWITCH_UNTAG ! } ! , ! { ! "UNTIL", SWITCH_UNTIL ! } ! , ! { ! "URGENT", SWITCH_URGENT ! } ! , ! { ! "USEFLAG", SWITCH_USEFLAG ! } ! , ! { ! "WHAT", SWITCH_WHAT ! } ! , ! { ! "WHO", SWITCH_WHO ! } ! , ! { ! "WIPE", SWITCH_WIPE ! } ! , ! { ! "WIZ", SWITCH_WIZ ! } ! , ! { ! "WIZARD", SWITCH_WIZARD ! } ! , ! { ! "YES", SWITCH_YES ! } ! , ! { ! "ZONE", SWITCH_ZONE ! } , --- 1,388 ---- { ! "ACCESS", SWITCH_ACCESS} ! ! , { ! "ADD", SWITCH_ADD} ! ! , { ! "ALL", SWITCH_ALL} ! ! , { ! "ATTRIBS", SWITCH_ATTRIBS} ! ! , { ! "BAN", SWITCH_BAN} ! ! , { ! "BLIND", SWITCH_BLIND} ! ! , { ! "BRIEF", SWITCH_BRIEF} ! ! , { ! "CHECK", SWITCH_CHECK} ! ! , { ! "CHOWN", SWITCH_CHOWN} ! ! , { ! "CLEAR", SWITCH_CLEAR} ! ! , { ! "CMD", SWITCH_CMD} ! ! , { ! "COMMANDS", SWITCH_COMMANDS} ! ! , { ! "CONN", SWITCH_CONN} ! ! , { ! "CONNECT", SWITCH_CONNECT} ! ! , { ! "CONNECTED", SWITCH_CONNECTED} ! ! , { ! "CONTENTS", SWITCH_CONTENTS} ! ! , { ! "COSTS", SWITCH_COSTS} ! ! , { ! "COUNT", SWITCH_COUNT} ! ! , { ! "CREATE", SWITCH_CREATE} ! ! , { ! "DATABASE", SWITCH_DATABASE} ! ! , { ! "DB", SWITCH_DB} ! ! , { ! "DEBUG", SWITCH_DEBUG} ! ! , { ! "DECOMPILE", SWITCH_DECOMPILE} ! ! , { ! "DEFAULTS", SWITCH_DEFAULTS} ! ! , { ! "DELETE", SWITCH_DELETE} ! ! , { ! "DELIM", SWITCH_DELIM} ! ! , { ! "DESCRIBE", SWITCH_DESCRIBE} ! ! , { ! "DESTROY", SWITCH_DESTROY} ! ! , { ! "DISABLE", SWITCH_DISABLE} ! ! , { ! "DOWN", SWITCH_DOWN} ! ! , { ! "DSTATS", SWITCH_DSTATS} ! ! , { ! "EMIT", SWITCH_EMIT} ! ! , { ! "ENABLE", SWITCH_ENABLE} ! ! , { ! "ERR", SWITCH_ERR} ! ! , { ! "EXITS", SWITCH_EXITS} ! ! , { ! "FILE", SWITCH_FILE} ! ! , { ! "FIRST", SWITCH_FIRST} ! ! , { ! "FLAGS", SWITCH_FLAGS} ! ! , { ! "FOLDERS", SWITCH_FOLDERS} ! ! , { ! "FORWARD", SWITCH_FORWARD} ! ! , { ! "FSTATS", SWITCH_FSTATS} ! ! , { ! "FULL", SWITCH_FULL} ! ! , { ! "FUNCTIONS", SWITCH_FUNCTIONS} ! ! , { ! "FWD", SWITCH_FWD} ! ! , { ! "GAG", SWITCH_GAG} ! ! , { ! "GLOBALS", SWITCH_GLOBALS} ! ! , { ! "HEADER", SWITCH_HEADER} ! ! , { ! "HERE", SWITCH_HERE} ! ! , { ! "HIDE", SWITCH_HIDE} ! ! , { ! "ILIST", SWITCH_ILIST} ! ! , { ! "INVENTORY", SWITCH_INVENTORY} ! ! , { ! "IPRINT", SWITCH_IPRINT} ! ! , { ! "JOIN", SWITCH_JOIN} ! ! , { ! "LIST", SWITCH_LIST} ! ! , { ! "LOWERCASE", SWITCH_LOWERCASE} ! ! , { ! "ME", SWITCH_ME} ! ! , { ! "MEMBERS", SWITCH_MEMBERS} ! ! , { ! "MOD", SWITCH_MOD} ! ! , { ! "MORTAL", SWITCH_MORTAL} ! ! , { ! "MOTD", SWITCH_MOTD} ! ! , { ! "MUTE", SWITCH_MUTE} ! ! , { ! "NAME", SWITCH_NAME} ! ! , { ! "NO", SWITCH_NO} ! ! , { ! "NOEVAL", SWITCH_NOEVAL} ! ! , { ! "NOFLAGCOPY", SWITCH_NOFLAGCOPY} ! ! , { ! "NOISY", SWITCH_NOISY} ! ! , { ! "NOSIG", SWITCH_NOSIG} ! ! , { ! "NOSPACE", SWITCH_NOSPACE} ! ! , { ! "NOTIFY", SWITCH_NOTIFY} ! ! , { ! "NUKE", SWITCH_NUKE} ! ! , { ! "OFF", SWITCH_OFF} ! ! , { ! "ON", SWITCH_ON} ! ! , { ! "OUTSIDE", SWITCH_OUTSIDE} ! ! , { ! "OVERRIDE", SWITCH_OVERRIDE} ! ! , { ! "PANIC", SWITCH_PANIC} ! ! , { ! "PARANOID", SWITCH_PARANOID} ! ! , { ! "PLAYERS", SWITCH_PLAYERS} ! ! , { ! "PORT", SWITCH_PORT} ! ! , { ! "POSE", SWITCH_POSE} ! ! , { ! "PRESERVE", SWITCH_PRESERVE} ! ! , { ! "PRINT", SWITCH_PRINT} ! ! , { ! "PRIVS", SWITCH_PRIVS} ! ! , { ! "PURGE", SWITCH_PURGE} ! ! , { ! "QUICK", SWITCH_QUICK} ! ! , { ! "QUIET", SWITCH_QUIET} ! ! , { ! "READ", SWITCH_READ} ! ! , { ! "REBOOT", SWITCH_REBOOT} ! ! , { ! "REGISTER", SWITCH_REGISTER} ! ! , { ! "REMOVE", SWITCH_REMOVE} ! ! , { ! "RENAME", SWITCH_RENAME} ! ! , { ! "RESTORE", SWITCH_RESTORE} ! ! , { ! "RESTRICT", SWITCH_RESTRICT} ! ! , { ! "RETROACTIVE", SWITCH_RETROACTIVE} ! ! , { ! "ROOM", SWITCH_ROOM} ! ! , { ! "ROOMS", SWITCH_ROOMS} ! ! , { ! "ROYALTY", SWITCH_ROYALTY} ! ! , { ! "SEE", SWITCH_SEE} ! ! , { ! "SEEFLAG", SWITCH_SEEFLAG} ! ! , { ! "SELF", SWITCH_SELF} ! ! , { ! "SEND", SWITCH_SEND} ! ! , { ! "SET", SWITCH_SET} ! ! , { ! "SILENT", SWITCH_SILENT} ! ! , { ! "SKIPDEFAULTS", SWITCH_SKIPDEFAULTS} ! ! , { ! "SPEAK", SWITCH_SPEAK} ! ! , { ! "STATS", SWITCH_STATS} ! ! , { ! "SUMMARY", SWITCH_SUMMARY} ! ! , { ! "TABLES", SWITCH_TABLES} ! ! , { ! "TAG", SWITCH_TAG} ! ! , { ! "TELEPORT", SWITCH_TELEPORT} ! ! , { ! "TF", SWITCH_TF} ! ! , { ! "THINGS", SWITCH_THINGS} ! ! , { ! "TITLE", SWITCH_TITLE} ! ! , { ! "TRACE", SWITCH_TRACE} ! ! , { ! "UNCLEAR", SWITCH_UNCLEAR} ! ! , { ! "UNFOLDER", SWITCH_UNFOLDER} ! ! , { ! "UNGAG", SWITCH_UNGAG} ! ! , { ! "UNHIDE", SWITCH_UNHIDE} ! ! , { ! "UNMUTE", SWITCH_UNMUTE} ! ! , { ! "UNTAG", SWITCH_UNTAG} ! ! , { ! "UNTIL", SWITCH_UNTIL} ! ! , { ! "URGENT", SWITCH_URGENT} ! ! , { ! "USEFLAG", SWITCH_USEFLAG} ! ! , { ! "WHAT", SWITCH_WHAT} ! ! , { ! "WHO", SWITCH_WHO} ! ! , { ! "WIPE", SWITCH_WIPE} ! ! , { ! "WIZ", SWITCH_WIZ} ! ! , { ! "WIZARD", SWITCH_WIZARD} ! ! , { ! "YES", SWITCH_YES} ! ! , { ! "ZONE", SWITCH_ZONE} ! , *** 1_7_4.178/src/extchat.c Wed, 24 Oct 2001 10:55:53 -0500 dunemush (pennmush/c/23_extchat.c 1.1.1.1.1.1.1.1.1.2.1.1.1.3.1.1.1.5.1.1.1.1.1.5.1.2.1.3.1.3.1.1.1.4.1.2.1.6.1.2.1.1.2.4.2.9.1.2.1.2.1.3 660) --- 1_7_4.186(w)/src/extchat.c Fri, 09 Nov 2001 19:14:33 -0600 dunemush (pennmush/c/23_extchat.c 1.1.1.1.1.1.1.1.1.2.1.1.1.3.1.1.1.5.1.1.1.1.1.5.1.2.1.3.1.3.1.1.1.4.1.2.1.6.1.2.1.1.2.4.2.9.1.2.1.2.1.3.1.2.1.2 660) *************** *** 319,324 **** --- 319,326 ---- CHAN **ch; { CHAN *p; + char cleanname[CHAN_NAME_LEN]; + char cleanp[CHAN_NAME_LEN]; if (!ch || !*ch) return; *************** *** 333,347 **** } p = channels; /* First channel? */ ! if (strcasecmp(ChanName(p), ChanName(*ch)) > 0) { channels = *ch; channels->next = p; return; } /* Otherwise, find which user this user should be inserted after */ ! for (; ! p->next && (strcasecmp(ChanName(p->next), ChanName(*ch)) < 0); ! p = p->next) ; (*ch)->next = p->next; p->next = *ch; return; --- 335,354 ---- } p = channels; /* First channel? */ ! strcpy(cleanp, remove_markup(ChanName(p), NULL)); ! strcpy(cleanname, remove_markup(ChanName(*ch), NULL)); ! if (strcasecmp(cleanp, cleanname) > 0) { channels = *ch; channels->next = p; return; } /* Otherwise, find which user this user should be inserted after */ ! while (p->next) { ! strcpy(cleanp, remove_markup(ChanName(p->next), NULL)); ! if (strcasecmp(cleanp, cleanname) > 0) ! break; ! p = p->next; ! } (*ch)->next = p->next; p->next = *ch; return; *************** *** 1543,1548 **** --- 1550,1558 ---- CHAN *c; CHANUSER *u; char numusers[BUFFER_LEN]; + char cleanname[CHAN_NAME_LEN]; + const char thirtyblanks[31] = " "; + char blanks[31]; if (SUPPORT_PUEBLO) notify_noenter(player, tprintf("%cSAMP%c", TAG_START, TAG_END)); *************** *** 1550,1567 **** CHAN_NAME_LEN, "Name", "Users", "Msgs", T("Chan Type"), "Status"); for (c = channels; c; c = c->next) { ! if (Chan_Can_See(c, player) && string_prefix(ChanName(c), partname)) { u = onchannel(player, c); if (SUPPORT_PUEBLO) sprintf(numusers, "%cA XCH_CMD=\"@channel/who %s\" XCH_HINT=\"See who's on this channel now\"%c%5ld%c/A%c", ! TAG_START, ChanName(c), TAG_END, ChanNumUsers(c), TAG_START, TAG_END); else sprintf(numusers, "%5ld", ChanNumUsers(c)); notify_format(player, ! "%-30s %s %8ld [%c%c%c%c%c%c%c %c%c%c%c%c%c] [%-3s %c%c]", ! ChanName(c), numusers, ChanNumMsgs(c), Channel_Disabled(c) ? 'D' : '-', Channel_Player(c) ? 'P' : '-', Channel_Object(c) ? 'O' : '-', --- 1560,1580 ---- CHAN_NAME_LEN, "Name", "Users", "Msgs", T("Chan Type"), "Status"); for (c = channels; c; c = c->next) { ! strcpy(cleanname, remove_markup(ChanName(c), NULL)); ! if (Chan_Can_See(c, player) && string_prefix(cleanname, partname)) { u = onchannel(player, c); if (SUPPORT_PUEBLO) sprintf(numusers, "%cA XCH_CMD=\"@channel/who %s\" XCH_HINT=\"See who's on this channel now\"%c%5ld%c/A%c", ! TAG_START, cleanname, TAG_END, ChanNumUsers(c), TAG_START, TAG_END); else sprintf(numusers, "%5ld", ChanNumUsers(c)); + strcpy(blanks, thirtyblanks); + blanks[strlen(ChanName(c)) - strlen(cleanname)] = '\0'; notify_format(player, ! "%-30s%s %s %8ld [%c%c%c%c%c%c%c %c%c%c%c%c%c] [%-3s %c%c]", ! ChanName(c), blanks, numusers, ChanNumMsgs(c), Channel_Disabled(c) ? 'D' : '-', Channel_Player(c) ? 'P' : '-', Channel_Object(c) ? 'O' : '-', *************** *** 1926,1934 **** { CHAN *c; int found = 0; if (ShowAnsi(player)) { for (c = channels; c; c = c->next) { ! if (Chan_Can_See(c, player) && string_prefix(ChanName(c), partname)) { notify_format(player, "%s<%s>%s", ANSI_HILITE, ChanName(c), ANSI_NORMAL); notify_format(player, "%s: %s", T("Creator"), Name(ChanCreator(c))); --- 1939,1952 ---- { CHAN *c; int found = 0; + char cleanname[BUFFER_LEN]; + char cleanp[CHAN_NAME_LEN]; + + strcpy(cleanname, remove_markup(partname, NULL)); if (ShowAnsi(player)) { for (c = channels; c; c = c->next) { ! strcpy(cleanp, remove_markup(ChanName(c), NULL)); ! if (Chan_Can_See(c, player) && string_prefix(cleanp, cleanname)) { notify_format(player, "%s<%s>%s", ANSI_HILITE, ChanName(c), ANSI_NORMAL); notify_format(player, "%s: %s", T("Creator"), Name(ChanCreator(c))); *************** *** 1939,1945 **** } } else { for (c = channels; c; c = c->next) { ! if (Chan_Can_See(c, player) && string_prefix(ChanName(c), partname)) { notify_format(player, "<%s>", ChanName(c)); notify_format(player, "%s: %s", T("Creator"), Name(ChanCreator(c))); notify(player, privs_to_string(priv_table, ChanType(c))); --- 1957,1964 ---- } } else { for (c = channels; c; c = c->next) { ! strcpy(cleanp, remove_markup(ChanName(c), NULL)); ! if (Chan_Can_See(c, player) && string_prefix(cleanp, cleanname)) { notify_format(player, "<%s>", ChanName(c)); notify_format(player, "%s: %s", T("Creator"), Name(ChanCreator(c))); notify(player, privs_to_string(priv_table, ChanType(c))); *************** *** 1963,1972 **** CHAN *c; CHANUSER *u; int found; found = 0; for (c = channels; c; c = c->next) { ! if (string_prefix(ChanName(c), name)) { found++; if (!(Hasprivs(player) || Chan_Can_Modify(c, player) || (ChanCreator(c) == player))) { --- 1982,1995 ---- CHAN *c; CHANUSER *u; int found; + char cleanname[BUFFER_LEN]; + char cleanp[CHAN_NAME_LEN]; found = 0; + strcpy(cleanname, remove_markup(name, NULL)); for (c = channels; c; c = c->next) { ! strcpy(cleanp, remove_markup(ChanName(c), NULL)); ! if (string_prefix(cleanp, cleanname)) { found++; if (!(Hasprivs(player) || Chan_Can_Modify(c, player) || (ChanCreator(c) == player))) { *** 1_7_4.178/src/command.c Tue, 04 Sep 2001 08:19:24 -0500 dunemush (pennmush/c/36_command.c 1.56.1.1.1.1.1.1.1.2.1.1.1.1.1.5 660) --- 1_7_4.186(w)/src/command.c Fri, 09 Nov 2001 19:14:32 -0600 dunemush (pennmush/c/36_command.c 1.56.1.1.1.1.1.1.1.2.1.1.1.1.1.5.1.2 660) *************** *** 73,79 **** {"@CHAT", NULL, cmd_chat, CMD_T_ANY | CMD_T_EQSPLIT | CMD_T_NOGAGGED, 0, 0, 0}, #endif ! {"@CHOWNALL", NULL, cmd_chownall, CMD_T_ANY | CMD_T_EQSPLIT, WIZARD, 0, 0}, {"@CHOWN", "PRESERVE", cmd_chown, CMD_T_ANY | CMD_T_EQSPLIT | CMD_T_NOGAGGED, 0, 0, 0}, --- 73,80 ---- {"@CHAT", NULL, cmd_chat, CMD_T_ANY | CMD_T_EQSPLIT | CMD_T_NOGAGGED, 0, 0, 0}, #endif ! {"@CHOWNALL", "PRESERVE", cmd_chownall, CMD_T_ANY | CMD_T_EQSPLIT, WIZARD, 0, ! 0}, {"@CHOWN", "PRESERVE", cmd_chown, CMD_T_ANY | CMD_T_EQSPLIT | CMD_T_NOGAGGED, 0, 0, 0}, *************** *** 107,113 **** {"@DOING", "HEADER", cmd_doing, CMD_T_ANY | CMD_T_NOPARSE | CMD_T_NOGAGGED, 0, 0, 0}, ! {"@DOLIST", "NOTIFY DELIM", cmd_dolist, CMD_T_ANY | CMD_T_EQSPLIT | CMD_T_RS_NOPARSE, 0, 0, 0}, {"@DRAIN", NULL, cmd_drain, CMD_T_ANY | CMD_T_EQSPLIT, 0, 0, 0}, {"@DUMP", "PARANOID DEBUG", cmd_dump, CMD_T_ANY, WIZARD, 0, 0}, --- 108,114 ---- {"@DOING", "HEADER", cmd_doing, CMD_T_ANY | CMD_T_NOPARSE | CMD_T_NOGAGGED, 0, 0, 0}, ! {"@DOLIST", "NOTIFY DELIMIT", cmd_dolist, CMD_T_ANY | CMD_T_EQSPLIT | CMD_T_RS_NOPARSE, 0, 0, 0}, {"@DRAIN", NULL, cmd_drain, CMD_T_ANY | CMD_T_EQSPLIT, 0, 0, 0}, {"@DUMP", "PARANOID DEBUG", cmd_dump, CMD_T_ANY, WIZARD, 0, 0}, *************** *** 165,171 **** #endif #endif ! {"@MAP", "DELIM", cmd_map, CMD_T_ANY | CMD_T_EQSPLIT | CMD_T_RS_NOPARSE, 0, 0, 0}, {"@MOTD", "CONNECT LIST WIZARD DOWN FULL", cmd_motd, CMD_T_ANY | CMD_T_NOGAGGED, 0, 0, 0}, --- 166,172 ---- #endif #endif ! {"@MAP", "DELIMIT", cmd_map, CMD_T_ANY | CMD_T_EQSPLIT | CMD_T_RS_NOPARSE, 0, 0, 0}, {"@MOTD", "CONNECT LIST WIZARD DOWN FULL", cmd_motd, CMD_T_ANY | CMD_T_NOGAGGED, 0, 0, 0}, *** 1_7_4.178/src/cmds.c Tue, 25 Sep 2001 15:42:13 -0500 dunemush (pennmush/c/37_cmds.c 1.33.1.1.1.2.1.2.2.3.1.1 660) --- 1_7_4.186(w)/src/cmds.c Fri, 09 Nov 2001 19:14:32 -0600 dunemush (pennmush/c/37_cmds.c 1.33.1.1.1.2.1.2.2.3.1.1.1.2 660) *************** *** 158,171 **** #endif COMMAND (cmd_chownall) { ! do_chownall(player, arg_left, arg_right); } COMMAND (cmd_chown) { ! if (SW_ISSET(sw, SWITCH_PRESERVE)) ! do_chown(player, arg_left, arg_right, SWITCH_PRESERVE); ! else ! do_chown(player, arg_left, arg_right, SWITCH_NONE); } COMMAND (cmd_chzoneall) { --- 158,168 ---- #endif COMMAND (cmd_chownall) { ! do_chownall(player, arg_left, arg_right, SW_ISSET(sw, SWITCH_PRESERVE)); } COMMAND (cmd_chown) { ! do_chown(player, arg_left, arg_right, SW_ISSET(sw, SWITCH_PRESERVE)); } COMMAND (cmd_chzoneall) { *************** *** 290,296 **** unsigned int flags = 0; if (SW_ISSET(sw, SWITCH_NOTIFY)) flags |= DOL_NOTIFY; ! if (SW_ISSET(sw, SWITCH_DELIM)) flags |= DOL_DELIM; do_dolist(player, arg_left, arg_right, cause, flags); } --- 287,293 ---- unsigned int flags = 0; if (SW_ISSET(sw, SWITCH_NOTIFY)) flags |= DOL_NOTIFY; ! if (SW_ISSET(sw, SWITCH_DELIMIT)) flags |= DOL_DELIM; do_dolist(player, arg_left, arg_right, cause, flags); } *************** *** 554,560 **** COMMAND (cmd_map) { unsigned int flags = DOL_MAP; ! if (SW_ISSET(sw, SWITCH_DELIM)) flags |= DOL_DELIM; do_dolist(player, arg_left, arg_right, cause, flags); } --- 551,557 ---- COMMAND (cmd_map) { unsigned int flags = DOL_MAP; ! if (SW_ISSET(sw, SWITCH_DELIMIT)) flags |= DOL_DELIM; do_dolist(player, arg_left, arg_right, cause, flags); } *** 1_7_4.178/src/bsd.c Mon, 15 Oct 2001 14:53:56 -0500 dunemush (pennmush/c/38_bsd.c 1.58.1.11.1.2.1.5.1.7.1.14.1.13.1.9.1.4.1.2.1.12.1.1.1.1.1.2.1.1.1.13.1.1.1.1.1.1 660) --- 1_7_4.186(w)/src/bsd.c Fri, 09 Nov 2001 19:14:32 -0600 dunemush (pennmush/c/38_bsd.c 1.58.1.11.1.2.1.5.1.7.1.14.1.13.1.9.1.4.1.2.1.12.1.1.1.1.1.2.1.1.1.13.1.1.1.1.1.1.1.1 660) *************** *** 3399,3404 **** --- 3399,3406 ---- int got; char tbuf1[BUFFER_LEN]; + errno = 0; + #ifdef WIN32 got = recv(d->descriptor, tbuf1, sizeof tbuf1, 0); #else *** 1_7_4.178/hdrs/version.h Mon, 15 Oct 2001 14:53:56 -0500 dunemush (pennmush/c/47_version.h 1.32.1.2.1.7.1.9.1.1.1.1 660) --- 1_7_4.186(w)/hdrs/version.h Fri, 09 Nov 2001 19:14:35 -0600 dunemush (pennmush/c/47_version.h 1.32.1.2.1.7.1.9.1.1.1.1 660) *************** *** 1,2 **** ! #define VERSION "PennMUSH version 1.7.4 patchlevel 11 [10/15/2001]" ! #define SHORTVN "PennMUSH 1.7.4p11" --- 1,2 ---- ! #define VERSION "PennMUSH version 1.7.4 patchlevel 12 [11/09/2001]" ! #define SHORTVN "PennMUSH 1.7.4p12" *** 1_7_4.178/hdrs/game.h Tue, 25 Sep 2001 15:42:13 -0500 dunemush (pennmush/d/12_game.h 1.28.1.2 660) --- 1_7_4.186(w)/hdrs/game.h Fri, 09 Nov 2001 19:14:35 -0600 dunemush (pennmush/d/12_game.h 1.28.1.2.1.1 660) *************** *** 148,154 **** extern void do_sitelock _((dbref player, const char *site, const char *opts, const char *charname, int type)); ! extern void do_chownall _((dbref player, const char *name, const char *target)); extern void do_reboot _((dbref player, int flag)) __attribute__ ((__noreturn__)); --- 148,155 ---- extern void do_sitelock _((dbref player, const char *site, const char *opts, const char *charname, int type)); ! extern void do_chownall ! _((dbref player, const char *name, const char *target, int preserve)); extern void do_reboot _((dbref player, int flag)) __attribute__ ((__noreturn__)); *** 1_7_4.178/hdrs/switches.h Mon, 10 Sep 2001 15:21:06 -0500 dunemush (pennmush/d/21_switches.h 1.2.1.6.2.2 660) --- 1_7_4.186(w)/hdrs/switches.h Fri, 09 Nov 2001 19:14:35 -0600 dunemush (pennmush/d/21_switches.h 1.2.1.6.2.3 660) *************** *** 23,29 **** #define SWITCH_DECOMPILE 23 #define SWITCH_DEFAULTS 24 #define SWITCH_DELETE 25 ! #define SWITCH_DELIM 26 #define SWITCH_DESCRIBE 27 #define SWITCH_DESTROY 28 #define SWITCH_DISABLE 29 --- 23,29 ---- #define SWITCH_DECOMPILE 23 #define SWITCH_DEFAULTS 24 #define SWITCH_DELETE 25 ! #define SWITCH_DELIMIT 26 #define SWITCH_DESCRIBE 27 #define SWITCH_DESTROY 28 #define SWITCH_DISABLE 29 Index: 1_7_4.178/Makefile.SH *** 1_7_4.178/Makefile.SH Mon, 10 Sep 2001 12:21:21 -0500 dunemush (pennmush/d/30_Makefile.S 1.14 700) --- 1_7_4.186(w)/Makefile.SH Fri, 09 Nov 2001 19:14:22 -0600 dunemush (pennmush/d/30_Makefile.S 1.14.1.1 700) *************** *** 188,195 **** game/access.README \ game/txt/* game/txt/nws/* game/txt/evt/* game/txt/hlp/* ) ! diffs: ! (cd utils; sh mkcmds.sh) @(prcs diff -r$(VS) -N pennmush `cat MANIFEST` | grep -v 'Index:') patch: versions --- 188,196 ---- game/access.README \ game/txt/* game/txt/nws/* game/txt/evt/* game/txt/hlp/* ) ! diffs: ! @make indent > /dev/null 2>&1 ! @(cd utils; sh mkcmds.sh) > /dev/null 2>&1 @(prcs diff -r$(VS) -N pennmush `cat MANIFEST` | grep -v 'Index:') patch: versions