diff -uNr ircservices-5.0.19/Changes ircservices-5.0.20/Changes --- ircservices-5.0.19/Changes 2003-05-28 14:18:53 +0900 +++ ircservices-5.0.20/Changes 2003-06-25 02:57:44 +0900 @@ -1,5 +1,35 @@ Version 5.0 ----------- +2003/06/21 .20 Fixed a minor memory leak in the socket handling code. +2003/06/17 Minor tweaks to various Makefiles. +2003/06/16 Fixed bug causing data in socket write buffers to get + corrupted. +2003/06/11 Added workaround for GCC bug on SPARC systems. Reported by + Kevin Kane +2003/06/09 Fixed compilation problems on Solaris. Reported by Kevin + Kane +2003/06/09 NickServ autojoin no longer auto-invites users into +i + channels when the user doesn't have INVITE privileges. + Reported by Martin Pels +2003/06/05 Fixed bug causing ChanServ to inappropriately remove some + users' channel modes. Reported by Yusuf Iskenderoglu + +2003/06/05 Changed handling of inappropriate channel user mode changes + (e.g. entering a registered channel and setting +v on + oneself before Services' -o comes through) to remove + only the added modes, not all of them. +2003/06/02 Corrected various errors and inconsistencies in the language + files, and brought section 4 of the manual up to date. +2003/06/02 Added FORCE option to OperServ UPDATE command. +2003/06/02 OperServ UPDATE now sends a notice after saving the + databases indicating whether the operation succeeded. +2003/06/02 Fixed bug causing some callback functions to not be called + if a callback function removed itself from the callback + list. (Note that this situation does not occur in any + previous versions of Services.) +2003/05/28 Reworded NickServ replies and documentation for the + mail-auth module to replace "authorize" by the more + accurate "authenticate". 2003/05/28 .19 Fake hostnames are now handled correctly by the PTlink protocol module. 2003/05/28 Services now checks in advance whether a protocol module diff -uNr ircservices-5.0.19/Makefile ircservices-5.0.20/Makefile --- ircservices-5.0.19/Makefile 2003-05-28 15:19:26 +0900 +++ ircservices-5.0.20/Makefile 2003-06-25 03:03:13 +0900 @@ -57,7 +57,7 @@ ########################################################################### config-check: - @if ! ./configure -check ; then \ + @if ./configure -check ; then : ; else \ echo 'Either you have not yet run the "configure" script, or the script has been' ; \ echo 'updated since you last ran it. Please run "./configure" before running' ; \ echo '"$(MAKE)".' ; \ diff -uNr ircservices-5.0.19/TODO ircservices-5.0.20/TODO --- ircservices-5.0.19/TODO 2003-05-28 14:18:53 +0900 +++ ircservices-5.0.20/TODO 2003-06-17 15:25:40 +0900 @@ -132,7 +132,7 @@ CS Channel/conffile setting to make ChanServ join channels ("BotServ") This has been discussed many, many times, and will not be reconsidered; see question Z.6 in the FAQ. -NS/CS Allow SENDPASS without mail authorization (FAQ D.3) +NS/CS Allow SENDPASS without mail authentication (FAQ D.3) NS Allow DROP or SET EMAIL if registered with a wrong E-mail address This would allow users to send mailbombs using Services. If a wrong address is given in a REGISTER or SET EMAIL command, a diff -uNr ircservices-5.0.19/WhatsNew ircservices-5.0.20/WhatsNew --- ircservices-5.0.19/WhatsNew 2002-10-02 17:10:15 +0900 +++ ircservices-5.0.20/WhatsNew 2003-05-28 15:05:06 +0900 @@ -19,11 +19,12 @@ Services is now capable of sending E-mail. Currently, this functionality is used by: - + The new "authorization" feature of NickServ (in the "nickserv/mail-auth" - module). This sends a message to a user upon nick registration or - E-mail address change, and requires the user to "authorize" their - nickname with a random numeric code included in the message before it - is recognized as a valid registered nick by Services/ + + The new "authentication" feature of NickServ (in the + "nickserv/mail-auth" module). This sends a message to a user upon + nickname registration or E-mail address change, and requires the user + to "authenticate" their nickname with a random numeric code included in + the message before it is recognized as a valid registered nick by + Services. + The new SENDPASS command for NickServ and ChanServ (in the "nickserv/sendpass" and "chanserv/sendpass" modules, respectively). which allows a user to send themselves their nick or channel password. diff -uNr ircservices-5.0.19/channels.c ircservices-5.0.20/channels.c --- ircservices-5.0.19/channels.c 2003-05-28 15:19:26 +0900 +++ ircservices-5.0.20/channels.c 2003-06-25 03:03:13 +0900 @@ -136,6 +136,7 @@ LIST_INSERT(u, c->users); u->user = user; u->mode = modes; + u->flags = 0; call_callback_2(NULL, cb_join, c, u); return c; } diff -uNr ircservices-5.0.19/configure ircservices-5.0.20/configure --- ircservices-5.0.19/configure 2003-04-15 15:13:31 +0900 +++ ircservices-5.0.20/configure 2003-06-09 16:45:46 +0900 @@ -43,6 +43,10 @@ fi } +grep_q () { + grep >/dev/null 2>&1 "$@" +} + ########################################################################### # Return the default flags for the given C compiler. @@ -182,6 +186,7 @@ BINDEST=/usr/local/sbin DATDEST=/usr/local/lib/ircservices +TEST_NT= INSTALL= MKDIR= CP_ALL= @@ -287,12 +292,12 @@ export USER_CC USER_CC_FLAGS USER_CC_LFLAGS USER_CC_LIBS while [ $# -gt 0 ] ; do - if echo "$1" | grep -q '^-' ; then + if echo "$1" | grep_q '^-' ; then option=`echo "$1" | cut -c2-` shift - if echo "$option" | grep -q '^-' ; then + if echo "$option" | grep_q '^-' ; then option=`echo "$option" | cut -c2-` - if echo "$option" | grep -q '=' ; then + if echo "$option" | grep_q '=' ; then value=`echo "$option" | sed 's/^[^=]*=//'` option=`echo "$option" | sed 's/=.*$//'` set -- "$value" "$@" @@ -565,7 +570,7 @@ INPUT=$BINDEST default=1 fi - if echo "$INPUT" | grep -q \[\'\"\\\] ; then + if echo "$INPUT" | grep_q \[\'\"\\\] ; then echo 'Please use a pathname without the characters: '\'' " \' elif [ ! "$NO_DIR_CHECK" -a ! -d "$INPUT" ] ; then if exists "$INPUT" ; then @@ -620,7 +625,7 @@ if [ ! "$INPUT" ] ; then INPUT=$DATDEST fi - if echo "$INPUT" | grep -q \[\'\"\\\] ; then + if echo "$INPUT" | grep_q \[\'\"\\\] ; then echo 'Please use a pathname without the characters: '\'' " \' elif [ ! "$NO_DIR_CHECK" -a ! -d "$INPUT" ] ; then if exists "$INPUT" ; then @@ -666,6 +671,38 @@ ########################################################################### +# Check whether we have a working "test FILE_A -nt FILE_B". + +MODE="check_test_nt " +if [ "$TEST_NT" ] ; then + log "cache says $TEST_NT" +else + echo2 "Checking sanity of /bin/sh... " + touch $CONFTMP/file1 + sleep 2 # just in case sleep 1 really does a sleep 0.997 or some such + touch $CONFTMP/file2 + if run /bin/sh -c "test $CONFTMP/file2 -nt $CONFTMP/file1" ; then + TEST_NT=test + log "test works" + echo "high." + elif run /bin/test $CONFTMP/file2 -nt $CONFTMP/file1 ; then + TEST_NT=/bin/test + log "/bin/test works" + echo "medium." + elif run /usr/bin/test $CONFTMP/file2 -nt $CONFTMP/file1 ; then + TEST_NT=/usr/bin/test + log "/usr/bin/test works" + echo "medium." + else + log "neither test nor /bin/test work!" + echo "low." + echo " Warning: Compilation may fail unless you pass a saner shell to make:" + echo " make [or gmake] SHELL=/usr/local/bin/bash ..." + fi +fi + +########################################################################### + # Search for a compiler. MODE="find_cc " @@ -920,16 +957,17 @@ # See what libraries we have that we might need. MODE="find_libs " -echo2 "Let's see what libraries we need... " +echo2 "Let's see what libraries we need..." if [ "$CC_LIBS" != bonkle ] ; then if [ "$CC_LIBS" ] ; then - echo "(cached) $CC_LIBS" + echo " (cached) $CC_LIBS" else - echo "(cached) none" + echo " (cached) none" fi log cache supplied \`"$CC_LIBS'" else CC_LIBS= + HAVE_RESOLV=0 cat >$CONFTMP/test.c <$CONFTMP/test-hstrerror.c < [OPTIONAL] # Sets the period of time after which a newly registered nickname - # will expire if it is not authorized. If not specified, the + # will expire if it is not authenticated. If not specified, the # standard nickname expiration time (NSExpire) is used. #NSNoAuthExpire 12h diff -uNr ircservices-5.0.19/docs/1.html ircservices-5.0.20/docs/1.html --- ircservices-5.0.19/docs/1.html 2003-04-23 10:44:49 +0900 +++ ircservices-5.0.20/docs/1.html 2003-05-28 15:28:14 +0900 @@ -115,12 +115,12 @@ specific language.

Furthermore, NickServ has the ability to verify E-mail addresses -associated with nicknames, by sending an "authorization code" to the E-mail -address and not allowing the owner any privileges associated with the -nickname until the owner sends that authorization code back to NickServ. -This feature can help maintain accountability of users for their actions on -IRC by requiring a valid E-mail address at which the user of a nickname can -be contacted if problems arise. +associated with nicknames, by sending an "authentication code" to the +E-mail address and not allowing the owner any privileges associated with +the nickname until the owner sends that authentication code back to +NickServ. This feature can help maintain accountability of users for their +actions on IRC by requiring a valid E-mail address at which the user of a +nickname can be contacted if problems arise.

ChanServ is to channels what NickServ is to nicknames; it handles registration and maintenance of channels on the IRC network. Its functions diff -uNr ircservices-5.0.19/docs/3.html ircservices-5.0.20/docs/3.html --- ircservices-5.0.19/docs/3.html 2003-03-03 11:19:22 +0900 +++ ircservices-5.0.20/docs/3.html 2003-05-28 15:27:39 +0900 @@ -15,7 +15,7 @@
    3-1-1. Core NickServ features
    3-1-2. Netsplit recovery
    3-1-3. Nickname linking -
    3-1-4. E-mail authorization +
    3-1-4. E-mail authentication
    3-1-5. Access lists
    3-1-6. Miscellaneous functions
3-2. Channel management (ChanServ) @@ -355,11 +355,11 @@

Back to top -

3-1-4. E-mail authorization

+

3-1-4. E-mail authentication

-

In order to help enforce accountability for registered nicknames, -Services can require users to "authorize" their nickname registration using -a numeric code sent via E-mail to the address provided when the nickname is +

In order to help enforce accountability for registered nicknames, Services +can require users to "authenticate" their nickname registration using a +numeric code sent via E-mail to the address provided when the nickname is registered. In order to have Services recognize the nickname as a valid, registered nickname, the owner must send the code back to Services first, thus verifying that the E-mail address the owner provided is in fact valid. @@ -380,12 +380,12 @@ forbidden, the E-mail address is invalid, or some other problem occurs, Services reports an error and discards the REGISTER command. -

  • A random 9-digit authorization code is generated, stored with the +

  • A random 9-digit authentication code is generated, stored with the nickname in Services' databases, and sent via E-mail to the user. The E-mail looks like this, if the default language is set to English:
    - The authorization code for your nickname (NickName) is: 123456789 + The authentication code for your nickname (NickName) is: 123456789
    Please submit this code to NickServ with the command:
    /msg NickServ AUTH 123456789
    @@ -393,14 +393,14 @@
    username@hostname.example.com.

  • Services informs the user that their nickname has been registered, - and that they will need to authorize it with the code sent to their - E-mail address before they can use it. + and that they will need to authenticate it with the code sent to + their E-mail address before they can use it.

  • The user sends an AUTH command to NickServ with the code given in the E-mail.

  • Services checks that the code given matches the one sent, and if so, - marks the nickname as authorized and allows it to be used normally - (the user will get privileges in channels if on the channel's - access list, etc.). + marks the nickname as authenticated and allows it to be used + normally (the user will get privileges in channels if on the + channel's access list, etc.).

    A procedure similar to the above is followed when a nickname owner @@ -409,7 +409,7 @@

    If for some reason, such as a mail server problem, the user does not -receive the E-mail message containing the authorization code, they can +receive the E-mail message containing the authentication code, they can request that an extra copy of the message be sent by using the SENDAUTH command. By default, Services will only allow this command to be used once a day per nickname @@ -421,11 +421,11 @@ malicious users will be able to abuse Services to send large amounts of mail to arbitrary users. -

    Services can be set to automatically drop unauthorized nicknames after a -shorter period than the usual expiration time. The configuration option +

    Services can be set to automatically drop unauthenticated nicknames after +a shorter period than the usual expiration time. The configuration option NSNoAuthExpire in modules.conf is used to set this time; by default it is not set, -meaning that unauthorized nicknames will be retained until the usual +meaning that unauthenticated nicknames will be retained until the usual expiration time (defined by NSExpire).

    Additionally, the commands @@ -433,17 +433,17 @@ GETAUTH, and CLEARAUTH are available to Services administrators. The SETAUTH command generates a new -authorization code for the given nickname, requiring its owner to authorize -the nick before continuing to use it; GETAUTH command retrieves -the authorization code stored for the given nickname, if any; and the -CLEARAUTH command clears any stored authorization code and allows -the nickname's owner to use the nick normally, as if they had authorized it -with the AUTH command. +authentication code for the given nickname, requiring its owner to +authenticate the nick before continuing to use it; GETAUTH command +retrieves the authentication code stored for the given nickname, if any; +and the CLEARAUTH command clears any stored authentication code +and allows the nickname's owner to use the nick normally, as if they had +authenticated it with the AUTH command.

    Finally, NickServ recognizes the command-line option "-clear-nick-email"; when this option is given, all nicknames' E-mail addresses will be cleared on startup, which can be useful when -first activating the E-mail authorization module. See +first activating the E-mail authentication module. See section 5 of the upgrade notes for details.

    Back to top @@ -536,7 +536,7 @@ when a user forgets their password.

    As with the GETPASS command, this command may not be usable when encryption is enabled. This module will also refuse to - load if E-mail authorization (section 3-1-4) is + load if E-mail authentication (section 3-1-4) is not in use, to prevent users from sending mail to arbitrary addresses.

    Note that this module requires a mail module (section @@ -1212,7 +1212,7 @@ memoserv/forward module allows users to select this behavior for their nicknames, and will convert each memo to the user into an E-mail message sent to the E-mail address registered with the nickname. (To -prevent spamming, this module requires that nickname E-mail authorization +prevent spamming, this module requires that nickname E-mail authentication be active; see section 3-1-4 for details.) Note that this module requires a mail module (section 3-8) to be loaded in order to function. @@ -2091,7 +2091,7 @@

    Services has the ability to send E-mail to users outside of the IRC protocol. This ability is used, for example, by the NickServ E-mail -authorization (section 3-1-4) and SENDPASS +authentication (section 3-1-4) and SENDPASS (section 3-1-6) modules. E-mail functionality is split into two parts: a main module, which provides an interface for other modules to use, and method modules, which actually implement the E-mail diff -uNr ircservices-5.0.19/docs/4.html ircservices-5.0.20/docs/4.html --- ircservices-5.0.19/docs/4.html 2003-01-06 09:18:02 +0900 +++ ircservices-5.0.20/docs/4.html 2003-06-05 13:47:53 +0900 @@ -39,15 +39,17 @@

    Registers your nickname in the NickServ database. Once -your nickname is registered, you can use the SET and ACCESS +your nickname is registered, you can use the SET +and ACCESS commands to configure your nickname's settings as you like them. Make sure you remember the password you use when registering; you'll need it to make changes to your nickname -later. (Note that case matters! FIDO, Fido, and fido +later. (Note that case matters! FIDO, Fido, and fido are all different passwords!)

    You may include an E-mail address when registering your -nickname; you may also set one later using the SET EMAIL +nickname; you may also set one later using the +SET EMAIL command. (If the NSRequireEmail is set, the E-mail address is mandatory.)

    @@ -70,14 +72,14 @@

    AUTH code

    -Authorizes registration or change of E-mail for a nickname. +Authenticates registration or change of E-mail for a nickname. To ensure that your E-mail address is correct, NickServ will -send an message containing an authorization code to the +send an message containing an authentication code to the E-mail address given when you register your nickname or -change your E-mail address with the SET EMAIL command. This +change your E-mail address with the SET EMAIL command. This command allows you to confirm that you have received the message and continue using your nickname normally. Replace -code in the command with the nine-digit authorization code +code in the command with the nine-digit authentication code given in the E-mail message.

    @@ -90,9 +92,10 @@

    SENDAUTH

    -Sends you a copy of the authorization code for your nickname -after a REGISTER or SET EMAIL. If you accidentally delete -or otherwise lose the message with the authorization code, +Sends you a copy of the authentication code for your nickname +after a REGISTER or +SET EMAIL. If you accidentally delete +or otherwise lose the message with the authentication code, you can use this command to have an extra copy sent to you.

    To prevent abuse, this command may only be used once every @@ -108,9 +111,9 @@

    SETAUTH nickname

    -Sets a new authorization code for the given nickname. The -nickname's owner will have to use the AUTH command for the -nickname before being allowed to identify again. If the +Sets a new authentication code for the given nickname. The +nickname's owner will have to use the AUTH +command for the nickname before being allowed to identify again. If the nickname is currently in use, a notice will be sent to the user of the nickname and they will no longer be treated as identified for the nickname. @@ -125,7 +128,7 @@

    GETAUTH nickname

    -Retrieves the authorization code associated with nickname, +Retrieves the authentication code associated with nickname, if one exists.

    @@ -138,7 +141,7 @@

    CLEARAUTH nickname

    -Clears any authorization code associated with nickname, +Clears any authentication code associated with nickname, allowing the nickname to be used normally.

    @@ -153,8 +156,11 @@

    Sends an E-mail message containing the given nickname's password to the E-mail address registered for the nickname. -The address must have first been confirmed using the AUTH -command. +The address must have first been confirmed using the +AUTH command. +

    +If encryption (see section 3-7) is in use, +this command may not be available depending on the type of encryption used.


    @@ -169,8 +175,8 @@ Tells NickServ that you are really the owner of this nickname. Many commands require you to authenticate yourself with this command before you use them. The password -should be the same one you sent with the REGISTER -command. +should be the same one you sent with the +REGISTER command.


    @@ -188,7 +194,7 @@

    Note that when you drop a nickname, all nicknames linked to it will be dropped as well. To remove a single linked nickname, use -the UNLINK command. +the UNLINK command.

    To prevent accidental use of this command, you must enter your password in order to drop your nickname. @@ -226,10 +232,10 @@ of your nicks has auto-op privileges in a channel, you will get auto-opped no matter which linked nick you use.

    -To cancel a link, use the UNLINK command. +To cancel a link, use the UNLINK command.

    In order to use this command, you must identify for your -current nickname (using the IDENTIFY +current nickname (using the IDENTIFY command), and the nickname to be linked must not currently be in use.

    @@ -243,7 +249,7 @@

    Removes a link (alias) to your nickname created with the -LINK command. You cannot unlink the +LINK command. You cannot unlink the nickname you are currently using; change to another linked nick first before using this command.

    @@ -279,8 +285,8 @@

    Syntax:
    ACCESS ADD mask -
    ACCESS DEL mask -
    ACCESS LIST +
    ACCESS DEL mask +
    ACCESS LIST

    Modifies or displays the access list for your nickname. This is @@ -291,7 +297,7 @@ setting, and if the SET SECURE option is disabled, you will be able to receive auto-op and other privileges in channels without using the -IDENTIFY command. +IDENTIFY command.

    The mask given to the ADD and DELcommands may contain wildcards (* or ?). @@ -301,8 +307,8 @@

    ACCESS ADD achurch@*.dragonfire.net
    - Allows access to user achurch from any machine in - the dragonfire.net domain. + Allows access to user achurch from any machine in + the dragonfire.net domain.
    ACCESS DEL achurch@*.dragonfire.net
    @@ -335,7 +341,7 @@ autojoin list (local channels cannot be added).

    Services admins can list the autojoin list for any nickname -with the format LIST nickname. +with the format LIST nickname.


    @@ -347,7 +353,7 @@
    SET option parameters

    -Sets various nickname options. option can be one of: +Sets various nickname options. option can be one of:

    PASSWORD @@ -360,14 +366,14 @@
    EMAIL
    Associate an E-mail address with your nickname
    INFO -
    Set text to be displayed with the INFO command +
    Set text to be displayed with the INFO command
    KILL
    Turn kill protection on or off
    SECURE
    Turn nickname security on or off
    PRIVATE
    Prevent your nickname from appearing in a - /msg NickServ LIST + /msg NickServ LIST
    HIDE
    Hide certain pieces of nickname information
    TIMEZONE @@ -377,17 +383,14 @@

    In order to use this command, you must first identify -with your password (/msg NickServ HELP IDENTIFY for more +with your password (/msg NickServ HELP IDENTIFY for more information).

    -Type /msg NickServ HELP SET option for more information -on a specific option. -

    -Services admins can also set the option NOEXPIRE, with +Services admins can also set the option NOEXPIRE, with which nicknames can be prevented from expiring. Additionally, Services admins can set options for any nickname without entering a password, using the format -SET nickname option parameters. +SET nickname option parameters.


    @@ -431,7 +434,7 @@

    Associates the given URL with your nickname. This URL will be displayed whenever someone requests information -on your nickname with the INFO command. +on your nickname with the INFO command.


    @@ -445,7 +448,7 @@

    Associates the given E-mail address with your nickname. This address will be displayed whenever someone requests -information on your nickname with the INFO command. +information on your nickname with the INFO command.


    @@ -459,7 +462,7 @@

    Associates the given text with your nickname; it will be displayed whenever someone requests information on your nickname -with the INFO command. +with the INFO command.


    @@ -477,13 +480,13 @@ change to another nick, after which they will be forcibly removed from IRC by NickServ.

    -If you select QUICK, the user will be given only 20 seconds +If you select QUICK, the user will be given only 20 seconds to change their nickname instead of the usual 60. If you select -IMMED, the user will be killed immediately without being +IMMED, the user will be killed immediately without being warned first or given a chance to change their nick; please -do not use this option unless necessary. (IMMED can be disabled; -see option NSAllowKillImmed -in modules.conf.) +do not use this option unless necessary. (IMMED can be disabled; +see the NSAllowKillImmed +option in modules.conf.)


    @@ -496,12 +499,12 @@

    Turns NickServ's security features on or off for your -nickname. With SECURE set, you must enter your password +nickname. With SECURE set, you must enter your password before you will be recognized as the owner of the nick, regardless of whether your address is on the access list. However, if you are on the access list, NickServ will not auto-kill you regardless of the setting of the -KILL option. +KILL option.


    @@ -514,10 +517,10 @@

    Turns NickServ's privacy option on or off for your nickname. -With PRIVATE set, your nickname will not appear in -nickname lists generated with NickServ's LIST command. +With PRIVATE set, your nickname will not appear in +nickname lists generated with NickServ's LIST command. (However, anyone who knows your nickname can still get -information on it using the INFO command.) +information on it using the INFO command.)


    @@ -530,11 +533,11 @@

    Allows you to prevent certain pieces of information from -being displayed when someone does a NickServ INFO on your -nickname. You can hide your E-mail address (EMAIL), last seen -user@host mask (USERMASK), and last quit message (QUIT). +being displayed when someone does a NickServ INFO on your +nickname. You can hide your E-mail address (EMAIL), last seen +user@host mask (USERMASK), and last quit message (QUIT). The second parameter specifies whether the information should -be displayed (OFF) or hidden (ON). +be displayed (OFF) or hidden (ON).


    @@ -548,7 +551,7 @@

    Sets the time zone to use for displaying times (such as a nickname or channel's last used time), instead of using the -time zone Services is operating in; the DEFAULT setting can +time zone Services is operating in; the DEFAULT setting can be used to return to Services' time zone. The time zone can be specified in one of two ways:

    @@ -613,7 +616,7 @@

    Sets whether the given nickname will expire. Setting this -to ON prevents the nickname from expiring. If no +to ON prevents the nickname from expiring. If no nickname is given, sets the no-expire flag for your nick.

    Limited to Services admins. @@ -635,9 +638,9 @@ option is set in modules.conf, then the E-mail address cannot be cleared (UNSET EMAIL will generate an error).

    -Services admins may use the UNSET command on any nickname by +Services admins may use the UNSET command on any nickname by including the nickname before the option name, as with the -SET command. +SET command.


    @@ -658,12 +661,14 @@ user online with the same nickname as the user you're trying to recover your nick from, causing the IRC servers to disconnect the other user. This fake user will remain -online for one minute to ensure that the other user does -not immediately reconnect; after that minute, you can -reclaim your nick. Alternatively, use the RELEASE +online for one minute (by default, changeable with the +NSReleaseTimeout +option in modules.conf) to ensure that the other user does +not immediately reconnect; after that time, you can +reclaim your nick. Alternatively, use the RELEASE command to get the nick back sooner.

    -In order to use the RECOVER command for a nickname, you must +In order to use the RECOVER command for a nickname, you must supply the correct password for the nickname, or you must already have identified to a nick linked to the given nick. @@ -678,11 +683,12 @@

    Instructs NickServ to remove any hold on your nickname -caused by automatic kill protection or use of the RECOVER -command. By default, such holds last for one minute; -this command gets rid of them sooner. +caused by automatic kill protection or use of the RECOVER +command. By default, such holds last for one minute +(changeable with the NSReleaseTimeout +option in modules.conf); this command gets rid of them sooner.

    -In order to use the RELEASE command for a nickname, you must +In order to use the RELEASE command for a nickname, you must supply the correct password for the nickname, or you must already have identified to a nick linked to the given nick. @@ -703,7 +709,7 @@ computer crashes or your Internet or modem connection goes down while you're on IRC.

    -In order to use the GHOST command for a nickname, you must +In order to use the GHOST command for a nickname, you must supply the correct password for the nickname, or you must already have identified to a nick linked to the given nick. @@ -720,17 +726,17 @@ Displays information about the given nickname, such as the nickname's owner, last seen address and time, and options. If you are identified for the nick you're -getting information for and ALL is specified, you will +getting information for and ALL is specified, you will be shown all the information, regardless of whether it's hidden or not.

    When the nickserv/mail-auth module is in use, if the nickname's E-mail address has not yet been confirmed with the -AUTH command, it will not be shown to anyone except the +AUTH command, it will not be shown to anyone except the nickname owner and Services administrators, regardless of the -nickname's SET HIDE EMAIL setting. +nickname's SET HIDE EMAIL setting.

    -Services admins may use the ALL parameter with any nickname. +Services admins may use the ALL parameter with any nickname.


    @@ -747,7 +753,7 @@

    Services admins may list channels for any nickname by giving the nickname with the command (for example, -/msg NickServ LISTCHANS OtherNick). +/msg NickServ LISTCHANS OtherNick).


    @@ -760,20 +766,20 @@

    Lists all registered nicknames for which either the nickname -itself or the last seen address (in user@host format) match -the given pattern. Nicks with the PRIVATE +itself or the last seen address (in user@host format) match +the given pattern. Nicks with the PRIVATE option set will only be displayed to Services admins. For -Services admins, nicks with the NOEXPIRE option set will -have a ! prepended to the nickname, those that are -suspended will be prepended by a *, and those that have not -yet been authorized (with the AUTH command) -will be prepended by a ?. +Services admins, nicks with the NOEXPIRE option set will +have a ! prepended to the nickname, those that are +suspended will be prepended by a *, and those that have not +yet been authenticated (with the AUTH command) +will be prepended by a ?.

    -If the FORBIDDEN, SUSPENDED, NOEXPIRE, or NOAUTH +If the FORBIDDEN, SUSPENDED, NOEXPIRE, or NOAUTH options are given, only nicks which, respectively, are forbidden, suspended, -have the NOEXPIRE option set, or have not yet been authorized will be +have the NOEXPIRE option set, or have not yet been authenticated will be displayed. The options can be used in any order and in any combination. -These options are limited to Services admins. (Note that the NOAUTH +These options are limited to Services admins. (Note that the NOAUTH option is not available unless the nickserv/mail-auth module is loaded.)

    @@ -790,7 +796,7 @@

    LIST *Bot*
    - Lists all registered nicknames with Bot in their + Lists all registered nicknames with Bot in their names (case insensitive).
    LIST * NOEXPIRE @@ -809,9 +815,9 @@
    LISTEMAIL pattern [FORBIDDEN] [NOEXPIRE] [SUSPENDED] [NOAUTH]

    -Lists registered nicknames like the LIST -command, but matches on E-mail addresses instead of user@host addresses. -See the LIST command help for more information. +Lists registered nicknames like the LIST +command, but matches on E-mail addresses instead of user@host addresses. +See the LIST command help for more information.


    @@ -829,8 +835,8 @@
    nickname status-code
    -where nickname is the nickname sent with the command, and -status-code is one of the following: +where nickname is the nickname sent with the command, and +status-code is one of the following:

    0 @@ -862,10 +868,10 @@ on will be logged and, if the WallGetpass configuration option is set in ircservices.conf, sent out as a -WALLOPS/GLOBOPS. +WALLOPS or GLOBOPS.

    If encryption (see section 3-7) is in use, -encryption may not be available depending on the type of encryption used. +this command may not be available depending on the type of encryption used.

    Limited to Services admins. @@ -894,13 +900,11 @@

    SUSPEND [+expiry] nickname reason

    -Prevents a nickname, and all those nicknames with the -same root nickname, from being used or identified for -by anyone. A nickname can be unsuspended with the -UNSUSPEND command. -

    -Unlike a forbidden nickname, a suspended one does not -lose its information and will expire! +Prevents a nickname, and all nicknames linked to it, from +being used or identified for by anyone. A nickname can be +unsuspended with the UNSUSPEND command, which will allow it +to be used as before. The expiry parameter is interpreted +in the same manner as for the OperServ AKILL command.

    Limited to Services admins. @@ -938,7 +942,7 @@ Registers a channel in the ChanServ database. In order to use this command, you must first be a channel operator on the channel you're trying to register. The password -is used with the IDENTIFY command to allow you to +is used with the IDENTIFY command to allow you to make changes to the channel settings at a later time. The last parameter, which must be included, is a general description of the channel's purpose. @@ -948,13 +952,13 @@ to change all of the channel settings for the channel; ChanServ will also automatically give the founder channel-operator privileges when s/he enters the channel. -See the ACCESS command (/msg ChanServ HELP ACCESS) for +See the ACCESS command (/msg ChanServ HELP ACCESS) for information on giving a subset of these privileges to other channel users.

    NOTICE: In order to register a channel, you must have first registered and identified for your nickname. If you -haven't, /msg NickServ HELP for information on how to do so. +haven't, /msg NickServ HELP for information on how to do so.

    Non-Services admins may be prevented from registering channels by unsetting the CSEnableRegister @@ -964,7 +968,7 @@


    -

    SENDPASS +

    SENDPASS (requires the chanserv/sendpass module)

    Syntax:
    SENDPASS channel @@ -973,7 +977,10 @@ Sends you an E-mail message containing the password for the given channel. You must be the founder of the channel to use this command, and you must first identify for your -nickname with the NickServ IDENTIFY command. +nickname with the NickServ IDENTIFY command. +

    +If encryption (see section 3-7) is in use, +this command may not be available depending on the type of encryption used.


    @@ -988,7 +995,7 @@ Authenticates you to ChanServ as the founder of the given channel. Many commands require you to use this command before using them. The password should be the same one -you sent with the REGISTER command. +you sent with the REGISTER command.


    @@ -1001,7 +1008,7 @@

    Unregisters the named channel. Can only be used by -channel founder, who must use the IDENTIFY command first. +channel founder, who must use the IDENTIFY command first. (However, Services admins may drop any channel without identifying for the channel.)

    @@ -1015,50 +1022,49 @@

    Allows the channel founder to set various channel options -and other information. The founder must use the IDENTIFY -command before using SET. +and other information. The founder must use the IDENTIFY +command before using SET.

    Available options:

    -
    FOUNDER +
    FOUNDER
    Set the founder of a channel -
    SUCCESSOR +
    SUCCESSOR
    Set the successor for a channel -
    PASSWORD +
    PASSWORD
    Set the founder password -
    DESC +
    DESC
    Set the channel description -
    URL +
    URL
    Associate a URL with the channel -
    EMAIL +
    EMAIL
    Associate an E-mail address with the channel -
    ENTRYMSG -
    Set a message to be sent to users when they - enter the channel -
    KEEPTOPIC +
    ENTRYMSG +
    Set a message to be sent to users when they enter the channel +
    KEEPTOPIC
    Retain topic when channel is not in use -
    TOPICLOCK +
    TOPICLOCK
    Topic can only be changed with TOPIC -
    MLOCK +
    MLOCK
    Lock channel modes on or off -
    PRIVATE +
    PRIVATE
    Hide channel from LIST command -
    RESTRICTED +
    RESTRICTED
    Restrict access to the channel -
    SECURE +
    SECURE
    Activate ChanServ security features -
    SECUREOPS +
    SECUREOPS
    Stricter control of chanop status -
    LEAVEOPS +
    LEAVEOPS
    Do not de-op users on channel entry -
    OPNOTICE -
    Send a notice when OP/DEOP commands are used -
    ENFORCE +
    OPNOTICE +
    Send a notice when OP/VOICE commands are used +
    ENFORCE
    Enforce auto-op, auto-voice status

    -Services admins can also set the option NOEXPIRE, with +Services admins can also set the option NOEXPIRE, with which channels can be prevented from expiring. Additionally, Services admins can set options for any channel without identifying by password for the channel. @@ -1120,7 +1126,7 @@

    Sets the description for the channel, which shows up with -the LIST and INFO commands. +the LIST and INFO commands.


    @@ -1134,7 +1140,7 @@

    Associates the given URL with the channel. This URL will be displayed whenever someone requests information on the -channel with the INFO command. +channel with the INFO command.


    @@ -1148,7 +1154,7 @@

    Associates the given E-mail address with the channel. This address will be displayed whenever someone requests -information on the channel with the INFO command. +information on the channel with the INFO command.


    @@ -1191,7 +1197,7 @@

    Enables or disables the topic lock option for a channel. When topic lock is set, ChanServ will not allow the -channel topic to be changed except via the TOPIC +channel topic to be changed except via the TOPIC command.

    @@ -1213,8 +1219,8 @@ a + are locked on, and modes followed by a - are locked off.

    Warning: If you set a mode-locked key, as in the second -example below, you should also set the RESTRICTED option for -the channel (see HELP SET RESTRICTED), or anyone entering +example below, you should also set the RESTRICTED +option for the channel, or anyone entering the channel when it is empty will be able to see the key!

    Examples: @@ -1222,14 +1228,14 @@
    SET #channel MLOCK +nt-ikl
    - Forces modes n and t on, and modes i, k, and l off. + Forces modes n and t on, and modes i, k, and l off. All other modes are left free to be either on or off.
    SET #channel MLOCK +knst-ilmp my-key
    - Forces modes k, n, s, and t on, and modes i, l, m, - and p off. Also forces the channel key to be - "my-key". + Forces modes k, n, s, and t on, and modes i, l, m, + and p off. Also forces the channel key to be + "my-key".
    SET #channel MLOCK +
    @@ -1249,14 +1255,14 @@

    Allows you to prevent certain pieces of information from -being displayed when someone does a ChanServ INFO on the +being displayed when someone does a ChanServ INFO on the given channel. You can hide the channel's E-mail address (EMAIL), last topic (TOPIC), and mode lock (MLOCK). The second parameter specifies whether the information should be displayed (OFF) or hidden (ON).

    Note that the topic will always be hidden if the channel is -mode-locked +p or +s. +mode-locked +p or +s.


    @@ -1269,7 +1275,7 @@

    Enables or disables the private option for a channel. -When private is set, a /msg ChanServ LIST will not +When private is set, a /msg ChanServ LIST will not include the channel in any lists.

    @@ -1299,10 +1305,12 @@

    Enables or disables ChanServ's security features for a -channel. When SECURE is set, only users who have registered -their nicknames with NickServ and IDENTIFY'd with their +channel. When SECURE is set, only users who have registered +their nicknames with NickServ and IDENTIFY'd with their password will be given privileges on the channel as -controlled by the access list. +controlled by the access list. If the RESTRICTED option is +also set, users will not be able to join the channel until +they identify to NickServ.


    @@ -1315,7 +1323,7 @@

    Enables or disables the secure ops option for a channel. -When secure ops is set, users who are not on the userlist +When secure ops is set, users who are not on the access list will not be allowed chanop status.

    @@ -1329,12 +1337,11 @@

    Enables or disables the leave ops option for a channel. -When leave ops is set, ChanServ will leave server ops (+o for +When leave ops is set, ChanServ will leave server ops (+o for the first person in the channel) in place even if the user -would not normally get auto-opped. The SECUREOPS option -and AUTODEOP access level will still be enforced. -Notice: This can allow users to "steal" ops during a -netsplit. +would not normally get auto-opped. The SECUREOPS option will still +be enforced. +Notice: This can allow users to "steal" ops during a netsplit.


    @@ -1348,7 +1355,8 @@

    Enables or disables the op-notice option for a channel. When op-notice is set, ChanServ will send a notice to the -channel whenever the OP, VOICE, or related commands are used +channel whenever the OP, +VOICE, or related commands are used for a user in the channel.

    @@ -1366,7 +1374,7 @@ auto-voice levels for all users. For example, if a user with auto-op privileges is deopped, ChanServ will automatically op the user again, and ChanServ will also -not allow the DEOP command to be used on that user. +not allow the DEOP command to be used on that user.


    @@ -1379,7 +1387,7 @@

    Sets whether the given channel will expire. Setting this -to ON prevents the channel from expiring. +to ON prevents the channel from expiring.

    Limited to Services admins. @@ -1395,7 +1403,7 @@

    Clears the given setting for a channel.

    -As with the SET command, Services admins can clear settings +As with the SET command, Services admins can clear settings for any channel without identifying for the channel.

    @@ -1406,20 +1414,20 @@

    Syntax:
    SOP channel ADD nickname -
    SOP channel DEL nickname -
    SOP channel LIST [mask | list] -
    SOP channel COUNT +
    SOP channel DEL nickname +
    SOP channel LIST [mask | list] +
    SOP channel COUNT

    Maintains the SuperOp (SOP) list for a channel. Users with -SOP status are automatically opped (set mode +o) and -protected (mode +a, if supported by the IRC server) when they join +SOP status are automatically opped (set mode +o) and +protected (mode +a), if supported by the IRC server) when they join the channel.

    An SOP can modify the AOP, HOP (if the IRC server supports halfops), and VOP lists. Only a channel's founder can modify the SOP list.

    -The SOP LIST command displays the SOP list. If a wildcard +The SOP LIST command displays the SOP list. If a wildcard mask is given, only those entries matching the mask are displayed. If a list of entry numbers is given, only those entries are shown; for example: @@ -1428,7 +1436,7 @@

    SOP #channel LIST 2-5,7-9
    Lists SOP list entries numbered 2 through 5 and 7 through 9. -The SOP COUNT command returns the number of entries there +The SOP COUNT command returns the number of entries there are on the SOP list.

    @@ -1439,19 +1447,19 @@

    Syntax:
    AOP channel ADD nickname -
    AOP channel DEL nickname -
    AOP channel LIST [mask | list] -
    AOP channel COUNT +
    AOP channel DEL nickname +
    AOP channel LIST [mask | list] +
    AOP channel COUNT

    Maintains the AutoOp (AOP) list for a channel. Users with -AOP status are automatically opped (set mode +o) when they +AOP status are automatically opped (set mode +o) when they join the channel.

    An AOP can modify the HOP (if the IRC server supports halfops) and VOP lists; SOPs can modify the AOP list.

    -The AOP LIST command displays the AOP list. If a wildcard +The AOP LIST command displays the AOP list. If a wildcard mask is given, only those entries matching the mask are displayed. If a list of entry numbers is given, only those entries are shown; for example: @@ -1460,7 +1468,7 @@

    AOP #channel LIST 2-5,7-9
    Lists AOP list entries numbered 2 through 5 and 7 through 9. -The AOP COUNT command returns the number of entries there +The AOP COUNT command returns the number of entries there are on the AOP list.

    @@ -1471,19 +1479,19 @@

    Syntax:
    HOP channel ADD nickname -
    HOP channel DEL nickname -
    HOP channel LIST [mask | list] -
    HOP channel COUNT +
    HOP channel DEL nickname +
    HOP channel LIST [mask | list] +
    HOP channel COUNT

    Maintains the HalfOp (HOP) list for a channel. Users with -HOP status are automatically halfopped (set mode +h) when +HOP status are automatically halfopped (set mode +h) when they join the channel.

    An HOP can modify the VOP list; SOPs and AOPs can modify the HOP list.

    -The HOP LIST command displays the HOP list. If a wildcard +The HOP LIST command displays the HOP list. If a wildcard mask is given, only those entries matching the mask are displayed. If a list of entry numbers is given, only those entries are shown; for example: @@ -1492,7 +1500,7 @@

    HOP #channel LIST 2-5,7-9
    Lists HOP list entries numbered 2 through 5 and 7 through 9. -The HOP COUNT command returns the number of entries there +The HOP COUNT command returns the number of entries there are on the HOP list.

    Note that this command is only available if the IRC server in use @@ -1506,16 +1514,16 @@

    Syntax:
    VOP channel ADD nickname -
    VOP channel DEL nickname -
    VOP channel LIST [mask | list] -
    VOP channel COUNT +
    VOP channel DEL nickname +
    VOP channel LIST [mask | list] +
    VOP channel COUNT

    Maintains the VoiceOp (VOP) list for a channel. Users with -VOP status are automatically voiced (set mode +v) when they +VOP status are automatically voiced (set mode +v) when they join the channel.

    -The VOP LIST command displays the VOP list. If a wildcard +The VOP LIST command displays the VOP list. If a wildcard mask is given, only those entries matching the mask are displayed. If a list of entry numbers is given, only those entries are shown; for example: @@ -1524,31 +1532,31 @@

    VOP #channel LIST 2-5,7-9
    Lists VOP list entries numbered 2 through 5 and 7 through 9. -The VOP COUNT command returns the number of entries there +The VOP COUNT command returns the number of entries there are on the VOP list.


    -

    ACCESS (requires the chanserv/access-levels module) +

    ACCESS (requires the chanserv/access-levels module)

    Syntax:
    ACCESS channel ADD nickname level -
    ACCESS channel DEL {nickname | entry-num | list} -
    ACCESS channel LIST [mask | list] -
    ACCESS channel COUNT +
    ACCESS channel DEL {nickname | entry-num | list} +
    ACCESS channel LIST [mask | list] +
    ACCESS channel COUNT

    Maintains the access list for a channel. The access list specifies which users are allowed chanop status or access to ChanServ commands on the channel. Different user levels allow for access to different subsets of -privileges; /msg ChanServ HELP ACCESS LEVELS for more +privileges; /msg ChanServ HELP ACCESS LEVELS for more specific information. Any nickname not on the access list has a user level of 0.

    -The ACCESS ADD command adds the given nickname to the +The ACCESS ADD command adds the given nickname to the access list with the given user level; if the nick is already present on the list, its access level is changed to the level specified in the command. The level specified @@ -1557,11 +1565,11 @@ access level of that nick must be less than the access level of the user giving the command.

    -The ACCESS DEL command removes the given nickname from the +The ACCESS DEL command removes the given nickname from the access list. If a list of entry numbers is given, those entries are deleted. (See the example for LIST below.)

    -The ACCESS LIST command displays the access list. If +The ACCESS LIST command displays the access list. If a wildcard mask is given, only those entries matching the mask are displayed. If a list of entry numbers is given, only those entries are shown; for example: @@ -1570,13 +1578,14 @@

    Lists access entries numbered 2 through 5 and 7 through 9.

    -The ACCESS COUNT command returns the number of entries +The ACCESS COUNT command returns the number of entries there are on the access list.

    Note that the access list may also be manipulated with the -SOP, AOP, and HOP, and VOP commands, which -correspond to levels of 100, 50, 40, and 30 respectively, if the -chanserv/access-xop module is also loaded. +SOP, AOP, +HOP, and VOP +commands, which correspond to levels of 100, 50, 40, and 30 respectively, if +the chanserv/access-xop module is also loaded.


    @@ -1586,32 +1595,32 @@

    Syntax:
    LEVELS channel SET type level -
    LEVELS channel {DIS | DISABLE} type -
    LEVELS channel LIST -
    LEVELS channel RESET +
    LEVELS channel {DIS | DISABLE} type +
    LEVELS channel LIST +
    LEVELS channel RESET

    -The LEVELS command allows fine control over the meaning of -the numeric access levels used by the ACCESS command. With +The LEVELS command allows fine control over the meaning of +the numeric access levels used by the ACCESS command. With this command, you can define the access level required for -most of ChanServ's functions. (The SET FOUNDER and SET PASSWORD +most of ChanServ's functions. (The SET FOUNDER and SET PASSWORD commands, as well as this command, are always restricted to the channel founder.)

    Caution: This command is for advanced users only! Changing -level settings with this command may cause the SOP, AOP, and -VOP commands to stop working correctly. +level settings with this command may cause the SOP, AOP, +HOP, and VOP commands to stop working correctly.

    -LEVELS SET allows the access level for a function or group of -functions to be changed. LEVELS DISABLE (or DIS for short) +LEVELS SET allows the access level for a function or group of +functions to be changed. LEVELS DISABLE (or DIS for short) disables an automatic feature or disallows access to a function by anyone other than the channel founder. -LEVELS LIST shows the current levels for each function or -group of functions. LEVELS RESET resets the levels to the -default levels of a newly-created channel (see HELP ACCESS LEVELS). +LEVELS LIST shows the current levels for each function or +group of functions. LEVELS RESET resets the levels to the +default levels of a newly-created channel (see HELP ACCESS LEVELS).

    For a list of the features and functions whose levels can be -set, see HELP LEVELS DESC. +set, see HELP LEVELS DESC.


    @@ -1621,11 +1630,11 @@

    Syntax:
    AKICK channel ADD mask [reason] -
    AKICK channel DEL mask -
    AKICK channel LIST [mask | list] -
    AKICK channel VIEW [mask | list] -
    AKICK channel ENFORCE -
    AKICK channel COUNT +
    AKICK channel DEL mask +
    AKICK channel LIST [mask | list] +
    AKICK channel VIEW [mask | list] +
    AKICK channel ENFORCE +
    AKICK channel COUNT

    Maintains the autokick list for a channel. If a user @@ -1633,26 +1642,26 @@ ChanServ will ban that user from the channel, then kick the user.

    -The AKICK ADD command adds the given user@host or +The AKICK ADD command adds the given user@host or nickname!user@host mask to the autokick list. If a reason is given with the command, that reason will be used when the user is kicked; if not, the default reason is "You have been banned from the channel".

    -The AKICK DEL command removes the given mask +The AKICK DEL command removes the given mask from the autokick list. It does not, however, remove any bans placed by an autokick; those must be removed manually.

    -The AKICK LIST command displays the autokick list, or +The AKICK LIST command displays the autokick list, or optionally only those autokick entries which match the -given mask. AKICK VIEW is similar, but shows more details. +given mask. AKICK VIEW is similar, but shows more details.

    -The AKICK ENFORCE command causes ChanServ to enforce the +The AKICK ENFORCE command causes ChanServ to enforce the current autokick list by removing those users who match an autokick mask.

    -The AKICK COUNT command returns how many entries there +The AKICK COUNT command returns how many entries there are on the autokick list.

    By default, limited to users with level 100 (SOP) access and @@ -1672,10 +1681,10 @@ including its founder, time of registration, last time used, description, and mode lock, if any. If you are identified as the founder of the channel you're getting -information for and ALL is specified, the entry message +information for and ALL is specified, the entry message and successor will also be displayed.

    -Services admins can use the ALL parameter with any channel. +Services admins can use the ALL parameter with any channel.


    @@ -1688,16 +1697,16 @@

    Lists all registered channels matching the given pattern. -Channels with the PRIVATE option set will only be displayed -to Services admins. Channels with the NOEXPIRE option set -will have a ! prepended to the channel name for Services +Channels with the PRIVATE option set will only be displayed +to Services admins. Channels with the NOEXPIRE option set +will have a ! prepended to the channel name for Services admins.

    -If the FORBIDDEN, SUSPENDED or NOEXPIRE options are given, +If the FORBIDDEN, SUSPENDED or NOEXPIRE options are given, only channels which, respectively, are forbidden, suspended or -have the NOEXPIRE flag set will be displayed. The options can +have the NOEXPIRE flag set will be displayed. The options can be used in any order and in any combination. These options -are limited to Services admins. +are limited to Services admins.

    If the CSListOpersOnly option is given in modules.conf, only IRC operators will be allowed @@ -1799,7 +1808,7 @@

    PROTECT #channel [nickname]

    -Gives channel protection (mode +a) to a selected nickname on a +Gives channel protection (mode +a) to a selected nickname on a channel. If nickname is not given, gives channel protection to you. By default, limited to users with level 100 (SOP) access and above on the channel. Only available with IRC servers which @@ -1815,7 +1824,7 @@

    DEPROTECT #channel [nickname]

    -Removes channel protection (mode +a) from a selected nickname +Removes channel protection (mode +a) from a selected nickname on a channel. If nickname is not given, removes channel protection from you. By default, limited to users with level 100 (SOP) access and above on the channel. Only available with IRC @@ -1865,11 +1874,11 @@

    Tells ChanServ to kick the given nickname from the given channel. The message included in the kick will show who -used the KICK command, as well as the reason given with the +used the KICK command, as well as the reason given with the command, if any. By default, limited to users with level 50 (AOP) access and above on the channel.

    -Note that protected (+a) users cannot be kicked with this +Note that protected (+a) users cannot be kicked with this command, even by the channel founder.

    @@ -1884,7 +1893,7 @@

    Causes ChanServ to set the channel topic to the one specified. This command is most useful in conjunction -with SET TOPICLOCK. +with SET TOPICLOCK. By default, limited to users with level 50 (AOP) access and above on the channel. @@ -1904,18 +1913,18 @@

    MODES
    Clears all modes on the channel except those - set in the channel's mode lock. + set in the channel's mode lock.
    BANS
    Clears all bans on the channel.
    EXCEPTIONS
    Clears all exceptions on the channel (only available if the IRC server supports ban exceptions).
    OPS -
    Removes channel-operator status (mode +o) from - all users. +
    Removes channel-operator status (mode +o) from + all users.
    HALFOPS -
    Removes halfop status (mode +h) from all users (only available if the IRC server supports halfops). +
    Removes halfop status (mode +h) from all users (only available if the IRC server supports halfops).
    VOICES -
    Removes "voice" status (mode +v) from all users. +
    Removes "voice" status (mode +v) from all users.
    USERS
    Removes (kicks) all users from the channel.
    @@ -1963,7 +1972,7 @@ on will be logged and, if the WallGetpass configuration option is set in ircservices.conf, sent out as a -WALLOPS/GLOBOPS. +WALLOPS or GLOBOPS.

    If encryption (see section 3-7) is in use, encryption may not be available depending on the type of encryption used. @@ -1996,11 +2005,11 @@

    Prevents a channel from being used or identified for -by anyone. A channel can be unsuspended with the -UNSUSPEND command. -

    -Unlike a forbidden channel, a suspended one does not -lose its information and will expire! +by anyone. The channel can be unsuspended with the +UNSUSPEND command, +which will allow it to be used as before. +The expiry parameter is interpreted in the same manner +as for the OperServ AKILL command.

    Limited to Services admins. @@ -2014,8 +2023,7 @@

    UNSUSPEND channel

    -Allows users to use and identify for a previously suspended -channel. +Allows users to use and identify for a previously suspended channel.

    Limited to Services admins. @@ -2050,7 +2058,7 @@

    LIST [channel] [num | list | NEW]

    -Lists any memos you currently have. With NEW, lists only +Lists any memos you currently have. With NEW, lists only new (unread) memos. Unread memos are marked with a "*" to the left of the memo number; memos that will not expire are marked with a "+". You can also specify a list of @@ -2073,8 +2081,8 @@ Sends you the text of the memos specified. If LAST is given, sends you the memo you most recently received. If NEW is given, sends you all of your new memos. Otherwise, -sends you memo number num. You can also give a list of -numbers, as with the LIST command. +sends you memo number num. You can also give a list of +numbers, as with the LIST command.


    @@ -2087,7 +2095,7 @@

    Marks the given memo or memos as non-expiring. You can give -either a single memo number or, as with the LIST command, a +either a single memo number or, as with the LIST command, a list of memos.

    Note that this command will not be available if the @@ -2106,22 +2114,11 @@

    Deletes the specified memo or memos. You can supply multiple memo numbers or ranges of numbers instead of a -single number, as in the second example below. +single number, as with the LIST command; you can also give +the word ALL, which causes all of your memos to be +deleted.

    -If ALL is given, deletes all of your memos. -

    -

    Examples: -
    -
    - DEL 1 -
    - Deletes your first memo. -
    - DEL 2-5,7-9 -
    - Deletes memos numbered 2 through 5 and 7 through 9. -
    -
    +Warning: Once a memo is deleted, it cannot be recovered!


    @@ -2133,22 +2130,20 @@
    SET option parameters

    -Sets various memo options. option can be one of: +Sets various memo options. option can be one of:

    NOTIFY
    Changes when you will be notified about - new memos (only for nicknames) + new memos (only for nicknames)
    LIMIT
    Sets the maximum number of memos you can - receive + receive
    FORWARD
    Sets whether memos are automatically - forwarded to you + forwarded to you

    -Type /msg MemoServ HELP SET option for more information -on a specific option.


    @@ -2165,22 +2160,22 @@
    ON
    You will be notified of memos when you log on, - when you unset /AWAY, and when they are sent - to you. + when you unset /AWAY, and when they are sent + to you.
    LOGON
    You will only be notified of memos when you log - on or when you unset /AWAY. + on or when you unset /AWAY.
    NEW
    You will only be notified of memos when they - are sent to you. + are sent to you.
    OFF
    You will not receive any notification of memos.
    -ON is equivalent to LOGON and NEW combined. +ON is equivalent to LOGON and NEW combined.

    Note that if your nickname has the "secure" setting on, you -will only be notified of new memos (for LOGON or ON) after -you identify to MemoServ. +will only be notified of new memos (for LOGON or ON) after +you identify to NickServ.


    @@ -2194,17 +2189,17 @@

    Sets the maximum number of memos a nickname (or channel) is allowed to have. Setting the limit to 0 prevents the nick -from receiving any memos; setting it to NONE allows the nick +from receiving any memos; setting it to NONE allows the nick to receive and keep as many memos as they want; and setting -it to DEFAULT restores the limit to the default value +it to DEFAULT restores the limit to the default value (MSMaxMemos in modules.conf, 20 by default). If you do not give a nickname or channel, your own limit is set.

    -Adding HARD prevents the user from changing the limit. Not -adding HARD has the opposite effect, allowing the user to +Adding HARD prevents the user from changing the limit. Not +adding HARD has the opposite effect, allowing the user to change the limit (even if a previous limit was set with -HARD). +HARD).

    This use of the SET LIMIT command is limited to Services admins. Other users may only enter a limit for themselves @@ -2260,19 +2255,19 @@

    Sets whether MemoServ automatically forwards to your E-mail -address memos sent to you. When set to ON, memos sent to +address memos sent to you. When set to ON, memos sent to your nickname will instead be forwarded to the E-mail -address registered with your nickname. COPY is similar, but +address registered with your nickname. COPY is similar, but also causes MemoServ to save a copy of the memo to read -online. When set to OFF, your memos will be stored online -as usual. Even if you set this option to ON, you may still +online. When set to OFF, your memos will be stored online +as usual. Even if you set this option to ON, you may still receive memos online if Services is unable to forward them to you.

    -Note that when this option is set to COPY and you have +Note that when this option is set to COPY and you have received the maximum number of memos you are allowed to, you will not be able to receive any new memos (including by -E-mail) until you delete some old memos using the DEL +E-mail) until you delete some old memos using the DEL command.

    @@ -2287,12 +2282,12 @@

    Controls the list of "ignored" users; users whose nickname or user@host mask match an entry on this list are not -allowed to send you memos. ADD adds the given nickname or -user@host mask to your ignore list, and DEL removes the -given nickname or mask from the list; LIST displays your +allowed to send you memos. ADD adds the given nickname or +user@host mask to your ignore list, and DEL removes the +given nickname or mask from the list; LIST displays your current ignore list.

    -Note that the nickname or mask given to the ADD command may +Note that the nickname or mask given to the ADD command may contain "*" or "?" wildcards, and is not case-sensitive; for example, "*Evil*" matches "EvilNick", "AN_EVIL_USER" and "devil". @@ -2314,7 +2309,7 @@

    Allows IRCops to send messages to all users on the network. -The message will be sent from the nickname Global (which +The message will be sent from the nickname "Global" (which can be changed with the GlobalName option in modules.conf). @@ -2334,10 +2329,10 @@ users online since Services was started, and the length of time Services has been running.

    -With the RESET option, resets the maximum user count to +With the RESET option, resets the maximum user count to the number of users currently online.

    -With the NETWORK option, shows the amount of data sent +With the NETWORK option, shows the amount of data sent to and received from the remote server, and the amount of memory used by network send/receive buffers. The ratio of the current buffer memory usage to the buffer size limit is @@ -2345,15 +2340,15 @@ NetBufferSize in ircservices.conf).

    -With the AKILL option, displays the current size of the +With the AKILL option, displays the current size of the AKILL list and the current default expiry time.

    -The ALL option is available only to Services admins, and +The ALL option is available only to Services admins, and displays information on Services' memory usage. Using this option can freeze Services for a short period of time on large networks, so don't overuse it!

    -UPTIME may be used as a synonym for STATS. +UPTIME may be used as a synonym for STATS.


    @@ -2367,7 +2362,7 @@

    Displays a map of servers connected to the network, from the viewpoint of Services. "Fake" servers—Services itself and -any servers jupitered with the JUPE +any servers jupitered with the JUPE command—have "(*)" displayed after the sever name.

    @@ -2378,8 +2373,8 @@

    Syntax:
    OPER ADD nickname -
    OPER DEL nickname -
    OPER LIST +
    OPER DEL nickname +
    OPER LIST

    Allows Services admins to add or remove nicknames to or from @@ -2387,7 +2382,7 @@ Services operator list and who has identified to NickServ will be able to access Services operator commands.

    -Any IRC operator may use the OPER LIST form of the command. +Any IRC operator may use the OPER LIST form of the command. All other use limited to Services admins.

    @@ -2398,8 +2393,8 @@

    Syntax:
    ADMIN ADD nickname -
    ADMIN DEL nickname -
    ADMIN LIST +
    ADMIN DEL nickname +
    ADMIN LIST

    Allows the Services super-user to add or remove nicknames @@ -2407,7 +2402,7 @@ is on the Services admin list and who has identified to NickServ will be able to access Services admin commands.

    -Any IRC operator may use the ADMIN LIST form of the command. +Any IRC operator may use the ADMIN LIST form of the command. All other use limited to Services super-user.

    @@ -2436,9 +2431,10 @@

    CLEARMODES channel [ALL]

    -Clears all binary modes (n,s,t,k,l, and so on) and bans from -a channel. If ALL is given, also clears all user modes -(like +o and +v) from the channel. +Clears all binary modes (n, s, t, k, +l, and so on) and bans from a channel. If ALL is given, +also clears all user modes (like +o and +v) from the +channel.

    Limited to Services operators. @@ -2469,7 +2465,7 @@ Allows IRCops to kick a user from any channel. Parameters are the same as for the standard /KICK command. The kick message will have the nickname of the -IRCop sending the KICK command prepended; for example: +IRCop sending the KICK command prepended; for example:

    *** SpamMan has been kicked off channel #my_channel by OperServ (Alcan (Flood))

    @@ -2483,33 +2479,33 @@

    Syntax:
    AKILL ADD [+expiry] mask reason -
    AKILL DEL mask -
    AKILL LIST [mask] [NOEXPIRE] -
    AKILL VIEW [mask] [NOEXPIRE] -
    AKILL COUNT +
    AKILL DEL mask +
    AKILL LIST [mask] [NOEXPIRE] +
    AKILL VIEW [mask] [NOEXPIRE] +
    AKILL COUNT

    Allows Services operators to manipulate the autokill (AKILL) list. If a user matching an AKILL mask attempts to connect, Services -will issue a KILL for that user and, on supported server +will issue a KILL for that user and, on supported server types, will instruct all servers to add a ban (K-line) for the mask which the user matched.

    -AKILL ADD adds the given user@host mask to the AKILL +AKILL ADD adds the given user@host mask to the AKILL list for the given reason (which must be given). -AKILL DEL removes the given mask from the AKILL list if it -is present. AKILL LIST shows all current AKILLs; if the +AKILL DEL removes the given mask from the AKILL list if it +is present. AKILL LIST shows all current AKILLs; if the optional mask is given, the list is limited to those -AKILLs matching the mask. AKILL VIEW is a more verbose -version of AKILL LIST, and will show who added an AKILL, +AKILLs matching the mask. AKILL VIEW is a more verbose +version of AKILL LIST, and will show who added an AKILL, the date it was added, and when it expires, as well as the -user@host mask and reason. If the NOEXPIRE option is given, +user@host mask and reason. If the NOEXPIRE option is given, then only AKILLs that will not expire, and match the given -user@host mask, will be displayed. AKILL COUNT simply +user@host mask, will be displayed. AKILL COUNT simply returns the number of AKILLs in the AKILL list.

    -Optionally, an expiry time can be given with the AKILL ADD -command. The expiry time precedes the user@host mask, and +Optionally, an expiry time can be given with the AKILL ADD +command. The expiry time precedes the user@host mask, and is specified as an integer followed by one of "d" (days), "h" (hours), or "m" (minutes). Combinations (such as 1h30m) are also permitted. If a unit specifier is not included, @@ -2518,7 +2514,7 @@ usermask to be added starts with a +, an expiry time must be given, even if it is the same as the default. The current AKILL default expiry time can be found with the -STATS AKILL command. +STATS AKILL command.

    The reason should describe why the entry is being added; depending on how Services is configured, it may also be @@ -2539,23 +2535,23 @@

    Syntax:
    EXCLUDE ADD [+expiry] mask reason -
    EXCLUDE DEL mask -
    EXCLUDE LIST [mask] [NOEXPIRE] -
    EXCLUDE VIEW [mask] [NOEXPIRE] -
    EXCLUDE COUNT +
    EXCLUDE DEL mask +
    EXCLUDE LIST [mask] [NOEXPIRE] +
    EXCLUDE VIEW [mask] [NOEXPIRE] +
    EXCLUDE COUNT

    Allows Services operators to manipulate the autokill exclusion list. When a user matching an autokill exclusion -mask connects to the network, Services will not issue a KILL +mask connects to the network, Services will not issue a KILL for that user even if the user would otherwise match an autokill mask. This is useful if you have wide autokill masks, and still want specific hosts or users that match those masks to be able to connect.

    -The ADD, DEL, LIST, VIEW, and COUNT subcommands function the -same way as the subcommands for the AKILL command; see -the AKILL help for more information. +The ADD, DEL, LIST, VIEW, and COUNT subcommands function the +same way as the subcommands for the AKILL command; see +the AKILL help for more information.

    Limited to Services operators. @@ -2567,10 +2563,10 @@

    Syntax:
    SGLINE ADD [+expiry] mask reason -
    SGLINE DEL mask -
    SGLINE LIST [mask] [NOEXPIRE] -
    SGLINE VIEW [mask] [NOEXPIRE] -
    SGLINE COUNT +
    SGLINE DEL mask +
    SGLINE LIST [mask] [NOEXPIRE] +
    SGLINE VIEW [mask] [NOEXPIRE] +
    SGLINE COUNT

    Allows Services operators to manipulate the SGLINE list. If @@ -2579,28 +2575,28 @@ supported server types, will instruct all servers to add a ban (server G-line) for the mask which the user matched.

    -SGLINE ADD adds the given real name mask to the SGLINE list +SGLINE ADD adds the given real name mask to the SGLINE list for the given reason (which must be given). -SGLINE DEL removes the given mask from the SGLINE list if it +SGLINE DEL removes the given mask from the SGLINE list if it is present. -SGLINE LIST shows all SGLINE entries; if the optional mask +SGLINE LIST shows all SGLINE entries; if the optional mask is given, the list is limited to those entries matching the mask. -SGLINE VIEW is a more verbose version of SGLINE LIST, and +SGLINE VIEW is a more verbose version of SGLINE LIST, and will show who added each SGLINE entry, the date it was added, when it was last used, and when it expires, as well -as the mask and reason. If the NOEXPIRE option is given, +as the mask and reason. If the NOEXPIRE option is given, then only entriess that both will not expire and match the given mask will be displayed. -SGLINE COUNT simply returns the number of entries in the +SGLINE COUNT simply returns the number of entries in the SGLINE list. -The mask parameter may be enclosed in double quotes, and +The mask parameter may be enclosed in double quotes, and must be when the mask contains spaces; for example:

    /msg OperServ SGLINE ADD +0 "bad name" This is a bad name.

    -Optionally, an expiry time can be given with the SGLINE ADD +Optionally, an expiry time can be given with the SGLINE ADD command. The expiry time precedes the user@host mask, and is specified as an integer followed by one of "d" (days), "h" (hours), or "m" (minutes). Combinations (such as 1h30m) @@ -2625,22 +2621,31 @@

    Syntax:
    SQLINE ADD [+expiry] mask reason -
    SQLINE DEL mask -
    SQLINE LIST [mask] [NOEXPIRE] -
    SQLINE VIEW [mask] [NOEXPIRE] -
    SQLINE COUNT +
    SQLINE DEL mask +
    SQLINE LIST [mask] [NOEXPIRE] +
    SQLINE VIEW [mask] [NOEXPIRE] +
    SQLINE COUNT

    Allows Services operators to manipulate the SQLINE list. If a user whose nickname matches an SQLINE mask attempts to -connect, Services will issue a KILL for that user and, on -supported server types, will instruct all servers to add a -ban (server Q-line) for the mask which the user matched. +connect, Services will either (1) if the +SQlineKill option +is set in modules.conf or the IRC server type in use does not +support forced nick changing, issue a KILL for that user; or (2) change +the user's nickname to a "guest" nickname, and send the user a message +that will normally cause the user's IRC client to request a new nickname. +On supported server types, Services will also instruct all servers to add +a ban (server Q-line) for the mask which the user matched. +

    +If the SQlineIgnoreOpers +option is set in modules.conf, then IRC operators will not be +affected by SQlines.

    -The ADD, DEL, LIST, and VIEW, and COUNT subcommands can be +The ADD, DEL, LIST, and VIEW, and COUNT subcommands can be used to add, delete, view (short or long version), or count the number of entries in the SQLINE list. See the help for -SGLINE (/msg OperServ HELP SGLINE) for details. +SGLINE for details.

    Limited to Services operators. @@ -2652,22 +2657,22 @@

    Syntax:
    SZLINE ADD [+expiry] mask reason -
    SZLINE DEL mask -
    SZLINE LIST [mask] [NOEXPIRE] -
    SZLINE VIEW [mask] [NOEXPIRE] -
    SZLINE COUNT +
    SZLINE DEL mask +
    SZLINE LIST [mask] [NOEXPIRE] +
    SZLINE VIEW [mask] [NOEXPIRE] +
    SZLINE COUNT

    Allows Services operators to manipulate the SZLINE list. If a user whose IP address matches an SZLINE mask attempts to -connect, Services will issue a KILL for that user and, on +connect, Services will issue a KILL for that user and, on supported server types, will instruct all servers to add a ban (server Z-line) for the mask which the user matched.

    -The ADD, DEL, LIST, and VIEW, and COUNT subcommands can be +The ADD, DEL, LIST, and VIEW, and COUNT subcommands can be used to add, delete, view (short or long version), or count the number of entries in the SZLINE list. See the help for -SGLINE (/msg OperServ HELP SGLINE) for details. +SGLINE for details.

    Note that SZlines are not supported by all IRC servers, and this command will not be available when using a server @@ -2685,10 +2690,10 @@

    Syntax:
    EXCEPTION ADD [+expiry] mask limit reason -
    EXCEPTION DEL {mask | list} -
    EXCEPTION MOVE num newnum -
    EXCEPTION LIST [mask | list] -
    EXCEPTION VIEW [mask | list] +
    EXCEPTION DEL {mask | list} +
    EXCEPTION MOVE num newnum +
    EXCEPTION LIST [mask | list] +
    EXCEPTION VIEW [mask | list]

    Allows Services admins to manipulate the list of hosts that @@ -2703,7 +2708,7 @@ SessionLimitDetailsLoc in modules.conf).

    -EXCEPTION ADD adds the given host mask to the exception list. +EXCEPTION ADD adds the given host mask to the exception list. Note that nick!user@host and user@host masks are invalid! Only real host masks, such as box.host.dom and *.host.dom, are allowed because sessions limiting does not take nick or @@ -2712,8 +2717,8 @@ may carry at a time (a value of zero means the host has an unlimited session limit).

    -Optionally, an expiry time can be given with the EXCEPTION -ADD command. The expiry time precedes the host mask, and +Optionally, an expiry time can be given with the EXCEPTION +ADD command. The expiry time precedes the host mask, and is specified as an integer followed by one of "d" (days), "h" (hours), or "m" (minutes). Combinations (such as 1h30m) are also permitted. If a unit specifier is not included, @@ -2722,16 +2727,18 @@ mask to be added starts with a +, an expiry time must be given, even if it is the same as the default.

    -EXCEPTION DEL removes the given mask from the exception list. +EXCEPTION DEL removes the given mask or numbered entry or +entries from the exception list (entry numbers can be found +with VIEW or LIST). +

    +EXCEPTION MOVE moves exception num to newnum. If newnum +is already used by another exception, its number will be +increased to make room.

    -EXCEPTION MOVE moves exception num to newnum. If newnum -is already used by another exception, its number will be shifted -upward to make room. -

    -EXCEPTION LIST and EXCEPTION VIEW show all current +EXCEPTION LIST and EXCEPTION VIEW show all current exceptions; if the optional mask is given, the list is limited to those exceptions matching the mask. The -difference between the two commands is that EXCEPTION VIEW +difference between the two commands is that EXCEPTION VIEW is more verbose, displaying the name of the person who added the exception, its session limit, reason, host mask and the expiry date and time, as well as the last time the exception @@ -2752,21 +2759,21 @@

    Syntax:
    SESSION LIST threshold -
    SESSION VIEW host +
    SESSION VIEW host

    Allows Services admins to view the session list.

    -SESSION LIST lists hosts with at least threshold sessions. +SESSION LIST lists hosts with at least threshold sessions. The threshold must be a number greater than 1, to prevent accidental listing of the large number of single session hosts.

    -SESSION VIEW displays detailed information about a specific +SESSION VIEW displays detailed information about a specific host, including the current session count and session limit. The host value may not include wildcards.

    -See the EXCEPTION help for more information about session +See the EXCEPTION help for more information about session limiting and how to set session limits specific to certain hosts and groups thereof.

    @@ -2784,7 +2791,7 @@

    Allows access to functions which require Services super-user privileges. The password is the same as that set with the -SET SUPASS command; note that the password must be set once +SET SUPASS command; note that the password must be set once before using this command. Super-user privileges last until you quit IRC.

    @@ -2806,15 +2813,15 @@ Sets various global Services options. Option names currently defined are:

    -
    READONLY +
    READONLY
    Set read-only or read-write mode -
    DEBUG +
    DEBUG
    Activate or deactivate debug mode -
    SUPASS -
    Set password for SU command (super-user) +
    SUPASS +
    Set password for SU command (super-user)

    -Limited to Services admins; the SUPASS option is may only be +Limited to Services admins; the SUPASS option may only be set by the Services super-user.

    @@ -2837,7 +2844,7 @@ or restarted.

    This option is equivalent to the command-line option --readonly. +-readonly.


    @@ -2856,7 +2863,7 @@ to num.

    This option is equivalent to the command-line option --debug. +-debug.


    @@ -2868,7 +2875,7 @@
    SET SUPASS [password]

    -Sets the password to be used for the SU command. The +Sets the password to be used for the SU command. The password must be set once before using the SU command for the first time. If no password is given, the SU command will be unavailable. @@ -2888,7 +2895,7 @@ Tells Services to jupiter a server—that is, to create a fake "server" connected to Services which prevents the real server of that name from connecting. The jupe -may be removed using a standard SQUIT. If a reason is +may be removed using a standard /SQUIT. If a reason is given, it is placed in the server information field; otherwise, the server information field will contain the text "Jupitered by nickname", showing the nickname of the @@ -2922,11 +2929,14 @@

    UPDATE

    Syntax: -
    UPDATE +
    UPDATE [FORCE]

    Causes Services to update all database files as soon as you -send the command. +send the command. If the FORCE option is given, Services +will attempt to unlock the databases before performing the +update; this can be used to fix "databases are locked" +errors when updating the databases.

    Limited to Services admins. @@ -2944,7 +2954,7 @@ not saved. This command should not be used unless damage to the in-memory copies of the databases is feared and they should not be saved. For normal shutdowns, use the -SHUTDOWN command. +SHUTDOWN command.

    Limited to Services admins. @@ -2975,7 +2985,7 @@ Causes Services to save all databases and then restart (i.e. exit and immediately re-run the executable).

    -Limited to Services admins. +Limited to Services admins.


    @@ -3023,8 +3033,8 @@

    Kills all users who have the same hostname as nickname. A -temporary AKILL, in the form *@host, is added to prevent the -offending clients from immediately reconnecting. A WALLOPS +temporary AKILL, in the form *@host, is added to prevent the +offending clients from immediately reconnecting. A WALLOPS is also sent indicating who used the command, which host was affected, and how many users were killed. It's useful for removing numerous clones from the network. @@ -3050,8 +3060,8 @@ more than three news messages, only the three most recent will be sent.)

    -LOGONNEWS LIST may be used by any IRC operator to list the -current news messages. ADD and DEL may only be used by +LOGONNEWS LIST may be used by any IRC operator to list the +current news messages. ADD and DEL may only be used by Services administrators.

    @@ -3067,14 +3077,14 @@

    Edits or displays the list of logon news messages. When a -user opers up (with the /OPER command), these messages will +user opers up (with the /OPER command), these messages will be sent to them. (However, no more than three messages will be sent in order to avoid flooding the user. If there are more than three news messages, only the three most recent will be sent.)

    -OPERNEWS LIST may be used by any IRC operator to list the -current news messages. ADD and DEL may only be used by +OPERNEWS LIST may be used by any IRC operator to list the +current news messages. ADD and DEL may only be used by Services administrators. @@ -3094,31 +3104,31 @@

    Syntax:
    SERVERS STATS -
    SERVERS LIST [mask] -
    SERVERS VIEW [mask] [ONLINE | OFFLINE] -
    SERVERS DELETE server -
    SERVERS COPY server newname -
    SERVERS RENAME server newname +
    SERVERS LIST [mask] +
    SERVERS VIEW [mask] [ONLINE | OFFLINE] +
    SERVERS DELETE server +
    SERVERS COPY server newname +
    SERVERS RENAME server newname

    Displays statistics relating to the network's servers.

    - SERVERS STATS displays a brief summary of the servers + SERVERS STATS displays a brief summary of the servers currently visible (online) and invisible (offline) to Services. - SERVERS LIST displays a list of online servers and + SERVERS LIST displays a list of online servers and current statistics about each. - SERVERS VIEW displays a list of online and offline + SERVERS VIEW displays a list of online and offline servers with detailed statistics about each. The - ONLINE and OFFLINE options cause, respectively, + ONLINE and OFFLINE options cause, respectively, only online or offline servers to be shown.

    - Use the mask option to limit which servers' + Use the mask option to limit which servers' statistics are shown.

    - DELETE deletes the specified server's statistics. -
    COPY duplicates a set of server statistics. -
    RENAME rename's a set of server statistics. + DELETE deletes the specified server's statistics. +
    COPY duplicates a set of server statistics. +
    RENAME rename's a set of server statistics.
    These three commands are limited to Services administrators.

    diff -uNr ircservices-5.0.19/docs/6.html ircservices-5.0.20/docs/6.html --- ircservices-5.0.19/docs/6.html 2003-05-28 11:41:28 +0900 +++ ircservices-5.0.20/docs/6.html 2003-06-05 13:32:16 +0900 @@ -481,10 +481,20 @@

    6-1-5. Handling messages from the network

    Most modules will need to be able to process messages received from the -IRC network to perform any useful functions. There are three main ways of +IRC network to perform any useful functions. There are four main ways of doing this: -

    • Through the m_privmsg +

      • Through one of the pseudoclients' "command" +callbacks. If your module adds functionality to one of the existing +pseudoclients (NickServ, ChanServ, etc.), you can hook into the +"command" callback provided by that pseudoclient to receive each +command (other than a CTCP PING) sent to the pseudoclient, and process the +commands that apply to you. You will probably also want to hook into the +"HELP" and "HELP COMMANDS" callbacks to provide help +information about the commands your module implements. See the section +below on the particular pseudoclient's callbacks for details. + +

      • Through the m_privmsg callback. This callback is designed for handling user interaction with pseudoclients; if you hook into this callback, you will be able to check each PRIVMSG (/msg) message received by Services and take @@ -741,8 +751,8 @@

        channel create -
        Parameters: Channel *channel, User *user, - int32 mode +
        Parameters: Channel *channel, User *user, + int32 mode
        Called when a channel is created (i.e. a user joins a nonexistent channel). The user that created the channel and that user's modes (CUMODE_*) are also passed to the callback (note that the user is @@ -751,68 +761,73 @@

        channel delete -
        Parameters: Channel *channel +
        Parameters: Channel *channel
        Called when a channel is about to be deleted (i.e. the last user has left the channel). The callback routine should always return 0.

        channel JOIN -
        Parameters: Channel *channel, struct c_userlist *u +
        Parameters: Channel *channel, + struct c_userlist *u
        Called when a user has joined a channel. The callback routine should always return 0.

        channel JOIN check -
        Parameters: const char *channel, User *user +
        Parameters: const char *channel, User *user
        Called when a user is about to join a channel. The callback routine should return 1 to refuse the user access to the channel or 0 to allow the JOIN to proceed normally.

        channel KICK -
        Parameters: Channel *channel, User *user, - const char *reason +
        Parameters: Channel *channel, User *user, + const char *reason
        Called when a user has been kicked from a channel. The callback routine should always return 0.

        channel MODE -
        Parameters: const char *source, Channel *channel, - int modechar, int add, char **av +
        Parameters: const char *source, + Channel *channel, int modechar, + int add, char **av
        Called for each valid mode character in a MODE message, except for channel user modes (+o, +v, etc.). - "add" is nonzero if adding modes, zero if removing them. - "av" points to the first argument for the mode; there will - always be enough arguments for the mode character. The callback - routine should return 1 if it processes the mode, 0 otherwise. + add is nonzero if adding modes, zero if removing + them. av" points to the first argument for the + mode; there are guaranteed to be enough arguments for the mode + character (provided the number of parameters in the mode definition + is set correctly). The callback routine should return 1 if it + processes the mode, 0 otherwise.

        channel mode change -
        Parameters: Channel *channel +
        Parameters: Channel *channel
        Called when a channel's modes have changed. The callback routine should always return 0.

        channel umode change -
        Parameters: Channel *channel, struct c_userlist *user +
        Parameters: Channel *channel, + struct c_userlist *user
        Called when a user's modes on a channel have changed. The callback routine should always return 0.

        channel PART -
        Parameters: Channel *channel, User *user, - const char *reason +
        Parameters: Channel *channel, User *user, + const char *reason
        Called when a user parts from a channel. The callback routine should always return 0.

        channel TOPIC
        Parameters: Channel *channel, const char *topic, - const char *setter + const char *setter time_t topic_time
        Called when a TOPIC command is received. The callback routine should return 0 to permit the topic change or 1 to refuse - it. Note that "setter" may be in the form + it. Note that setter may be in the form "nick!user@host" instead of just a nickname, depending on the remote server type; however, Services currently stores only the nickname, and discards the username and @@ -820,8 +835,9 @@

        clear channel -
        Parameters: const char *source, Channel *channel, - int what, const void *param +
        Parameters: const char *source, + Channel *channel, int what, + const void *param
        Called whenever the clear_channel() function (in actions.c) is called, before any other action is taken. The callback routine should return 1 to terminate @@ -834,13 +850,13 @@

        command line -
        Parameters: char *option, char *value +
        Parameters: char *option, char *value
        Called at program startup for each command-line option. - "option" is the name of the option (the part of the + option is the name of the option (the part of the option string after the initial "-", up to and not - including any "="), and "value" is the text after - the "=" (NULL if no "=" is present). - "option" is guaranteed to be non-NULL. The + including any "="), and value" is the text + after the "=" (NULL if no "=" is present). + option is guaranteed to be non-NULL. The callback routine should return 0 if it does not recognize the option, 1 if it successfully processes the option, 2 if there is an error processing the option, or 3 if no error occurred but Services @@ -865,11 +881,11 @@

        introduce_user -
        Parameters: char *nick +
        Parameters: char *nick
        Called whenever Services may need to introduce a pseudoclient (at startup and when receiving a KILL message). The - "nick" parameter is the nickname of the pseudoclient which - should be introduced (if it exists), or NULL when + nick parameter is the nickname of the pseudoclient + which should be introduced (if it exists), or NULL when introducing all pseudoclients. The callback routine should return 1 if nick is not NULL and the routine introduces a pseudoclient, 0 otherwise. (If nick is @@ -878,10 +894,11 @@

        load module -
        Parameters: Module *module, const char *modname +
        Parameters: Module *module, + const char *modname
        Called when a module is loaded, after its init_module() - routine has been called. "modname" is the name of the - module, either specified by the module (char + routine has been called. modname is the name of + the module, either specified by the module (char module_name[]) or copied from the module's path. The callback routine should always return 0. This callback may be used, for example, to add callback routines to a new module's callbacks when @@ -889,30 +906,30 @@

        m_privmsg -
        Parameters: char *source, char *target, - char *message +
        Parameters: char *source, char *target, + char *message
        Called for every PRIVMSG which is not ignored by Services. The callback routine should return 1 if it processes the message, 0 otherwise.

        m_whois -
        Parameters: char *source, char *target, - char *target_server +
        Parameters: char *source, char *target, + char *target_server
        Called for every WHOIS command. The callback routine should return 1 if it processes the message, 0 otherwise.

        receive message -
        Parameters: char *source, char *cmd, int ac, - char **av +
        Parameters: char *source, char *cmd, + int ac, char **av
        Called for every message received from the uplink server. The callback routine should return 1 if it processes the message, 0 otherwise.

        reconfigure -
        Parameters: int after_configure +
        Parameters: int after_configure
        Called twice when Services is signalled to re-read its configuration files. The first call is made before any module configuration data is changed (but after the main Services @@ -929,22 +946,31 @@ such as OperServ UPDATE, explicitly causes data saving to occur. The callback routine should always return 0. +

        +save data complete +
        Parameters: int successful +
        Called when a save-data operation completes. The + successful parameter indicates whether the + operation succeeded or not. The callback routine should always + return 0. +

        server create -
        Parameters: Server *server +
        Parameters: Server *server
        Called whenever a new server joins the network, after the server record is created. The callback routine should always return 0.

        server delete -
        Parameters: Server *server, const char *reason +
        Parameters: Server *server, + const char *reason
        Called whenever a server splits from the network, before the server - record is created. The callback routine should always return 0. + record is deleted. The callback routine should always return 0.

        set topic -
        Parameters: Channel *c, const char *topic, - const char *setter, time_t t +
        Parameters: Channel *c, const char *topic, + const char *setter, time_t t
        Called twice whenever set_topic() (in actions.c) is called to set the topic of a channel from Services. The first call is done before the channel structure is modified, and all @@ -958,7 +984,7 @@

        unload module -
        Parameters: Module *module +
        Parameters: Module *module
        Called when a module is unloaded, after its exit_module() routine has been called. The callback routine should always return 0. Note that it is not necessary to use this callback to remove @@ -967,63 +993,65 @@

        user check -
        Parameters: int ac, char **av +
        Parameters: int ac, char **av
        Called whenever a user joins the network, before the user record - is created. "ac" and "av" are the argument list - to the NICK (or USER) command, as passed to - users.c/do_nick(). The callback routine should return 0 - to allow the user to connect or 1 to disallow (in this case the - routine should take action to remove the user from the network, - such as sending a KILL message). + is created. ac and av are the + argument list to the NICK (or USER) command, as + passed to users.c/do_nick(). The callback routine should + return 0 to allow the user to connect or 1 to disallow (in this + case the routine should take action to remove the user from the + network, such as sending a KILL message).

        user create -
        Parameters: User *user, int ac, char **av +
        Parameters: User *user, int ac, + char **av
        Called whenever a user joins the network, after the user record - is created. "ac" and "av" are the argument list - to the NICK (or USER) command, as passed to - users.c/do_nick(). The callback routine should always - return 0. + is created. ac and av are the + argument list to the NICK (or USER) command, as + passed to users.c/do_nick(). The callback routine should + always return 0.

        user delete -
        Parameters: User *user, char *reason, - int is_kill +
        Parameters: User *user, char *reason, + int is_kill
        Called whenever a user leaves the network (whether by QUIT or KILL), before the user record is deleted. - "is_kill" is 1 if the user is quitting because of a + is_kill is 1 if the user is quitting because of a KILL, 0 if because of a QUIT. The callback routine should always return 0.

        user MODE -
        Parameters: User *user, int modechar, - int add, char **av +
        Parameters: User *user, int modechar, + int add, char **av
        Called for every mode character given in a user MODE - message. "add" is nonzero when adding modes and zero when - subtracting. "av" points to the first argument for the - mode; there will always be enough arguments for the mode character. - The callback routine should return 1 if it processes the mode, 0 - otherwise. + message. add is nonzero when adding modes and zero + when subtracting. av points to the first argument + for the mode; there are guaranteed to be enough arguments for the + mode character (provided the number of parameters in the mode + definition is set correctly). The callback routine should return 1 + if it processes the mode, 0 otherwise.

        user nickchange (after) -
        Parameters: User *user, const char *oldnick +
        Parameters: User *user, const char *oldnick
        Called whenever a user changes nicks, after the nickname is actually changed. The callback routine should return 1 if it kills the user, 0 otherwise.

        user nickchange (before) -
        Parameters: User *user, const char *newnick +
        Parameters: User *user, const char *newnick
        Called whenever a user changes nicks, before the nickname is actually changed. The callback routine should always return 0. Note that users should never be killed within this callback; use - the "user nickchange (after)" callback for that. + the "user nickchange (after)" callback for that.

        user servicestamp change -
        Parameters: User *user +
        Parameters: User *user
        Called when a user's Services stamp (the servicestamp field) is altered and the network should be informed of it. The callback routine should always return 0. @@ -1035,11 +1063,11 @@

        command -
        Parameters: User *user, char *command +
        Parameters: User *user, char *command
        Called for every message (other than a CTCP PING or empty - message) received by OperServ. "command" is the first - word in the message (where words are separated by spaces); the - remaining text can be obtained through repeated calls to + message) received by OperServ. command is the + first word in the message (where words are separated by spaces); + the remaining text can be obtained through repeated calls to strtok() with a NULL first parameter. The callback routine should return 1 if it processes the message, 0 otherwise. If the routine does not process the message, it @@ -1047,23 +1075,23 @@

        expire maskdata -
        Parameters: uint32 type, MaskData *md +
        Parameters: uint32 type, MaskData *md
        Called when a MaskData entry is about to be expired, just before it is actually deleted. The callback routine should always return 0.

        HELP -
        Parameters: User *user, char *param +
        Parameters: User *user, char *param
        Called when the HELP command is used with a parameter. The callback should return 1 if it processes the message, 0 otherwise.

        HELP COMMANDS -
        Parameters: User *user, int which +
        Parameters: User *user, int which
        Called when the HELP COMMANDS command is used. The - "which" parameter is 0 when called after the list of + which parameter is 0 when called after the list of unprivileged (IRC operator) commands, 1 after the Services operator commands, 2 after the Services administrator commands, and 3 after the Services root commands. The callback routine should always @@ -1071,15 +1099,16 @@

        SET -
        Parameters: User *u, char *option, char *param +
        Parameters: User *u, char *option, + char *param
        Called when the SET command is used. All parameters are - guaranteed to be valid (non-NULL); "param" may - contain multiple words. The callback routine should return 1 if it - processes the given option, 0 otherwise. + guaranteed to be valid (non-NULL); param + may contain multiple words. The callback routine should return 1 + if it processes the given option, 0 otherwise.

        STATS -
        Parameters: User *user, char *extra +
        Parameters: User *user, char *extra
        Called for every STATS command that is not plain "STATS", "STATS ALL", or "STATS RESET". "extra" contains the remainder of the message (after @@ -1088,15 +1117,17 @@

        STATS ALL -
        Parameters: User *user, const char *s_OperServ -
        Called for every STATS ALL command. "s_OperServ" - is the OperServ pseudoclient nickname; the callback routine should - send messages using this nick. The callback routine should always - return 0. +
        Parameters: User *user, + const char *s_OperServ +
        Called for every STATS ALL command. + s_OperServ is the OperServ pseudoclient nickname; + the callback routine should send messages using this nick. The + callback routine should always return 0.

        cancel_akill ("operserv/akill" module) -
        Parameters: const char *username, const char *host +
        Parameters: const char *username, + const char *host
        Called when an autokill is to be removed from the uplink server. The callback routine should return 1 if it removes the autokill, 0 otherwise. @@ -1104,7 +1135,7 @@

        send_akill ("operserv/akill" module)
        Parameters: const char *username, const char *host, - time_t expires + time_t expires const char *who, const char *reason
        Called when an autokill is to be sent to the uplink server. The callback routine should return 1 if it sends the autokill, 0 @@ -1117,19 +1148,20 @@

        cancel_user -
        Parameters: User *u, int old_status, - int old_authstat +
        Parameters: User *u, int old_status, + int old_authstat
        Called whenever the cancel_user() routine is called for a - user with a registered nick. "old_status" is the value of - the user's nick's "status" field while the nick was in use - (when the callback is called, all temporary flags will have been - cleared); "old_authstat" is likewise the value before - clearing of the nick group's "authstat" field. The - callback routine should always return 0. + user with a registered nick. old_status is the + value of the user's nick's status field while the + nick was in use (when the callback is called, all temporary flags + will have been cleared); old_authstat is likewise + the value before clearing of the nick group's + authstat field. The callback routine should always + return 0.

        check_expire -
        Parameters: NickInfo *ni, NickGroupInfo *ngi +
        Parameters: NickInfo *ni, NickGroupInfo *ngi
        Called when a nickname is being checked for expiration, after the nickname's last-used time has been updated (if appropriate). The callback routine should return 1 if the nick should be expired, 0 @@ -1138,12 +1170,13 @@

        check recognized -
        Parameters: const User *u +
        Parameters: const User *u
        Called whenever Services needs to check whether a user is recognized as being the owner of the nick they are using (e.g., when the user connects to the network). The - User structure is guaranteed to have valid "ni" - and "ngi" pointers. The callback routine should return: + User structure is guaranteed to have valid + ni and ngi pointers. The callback + routine should return:
        • 0, to indicate that the user was not recognized;
        • 1, to indicate that the user was recognized as the owner of the @@ -1154,7 +1187,7 @@

          collide -
          Parameters: User *u +
          Parameters: User *u
          Called whenever NickServ determines that a user should be "collided". The callback should return 1 if it handles colliding the user (for example, by forcibly changing the user's nick), or 0 @@ -1162,7 +1195,7 @@

          command -
          Parameters: User *user, char *command +
          Parameters: User *user, char *command
          Called for every message (other than a CTCP PING or empty message) received by NickServ. See the OperServ "command" callback for @@ -1170,31 +1203,31 @@

          HELP -
          Parameters: User *user, char *param +
          Parameters: User *user, char *param
          Called when the HELP command is used with a parameter. The callback should return 1 if it processes the messages, 0 otherwise.

          HELP COMMANDS -
          Parameters: User *user, int which +
          Parameters: User *user, int which
          Called when the HELP COMMANDS command is used. The - "which" parameter is 0 when called after the list of + which parameter is 0 when called after the list of unprivileged commands and 1 after the list of privileged commands (those shown to IRC operators). The callback routine should always return 0.

          identified -
          Parameters: User *u, int old_authstat +
          Parameters: User *u, int old_authstat
          Called when a user identifies for their nick. - "old_authstat" is the authorization status of the nick + old_authstat is the authorization status of the nick before the identify took place. The callback routine should always return 0.

          IDENTIFY check -
          Parameters: User *u, char *pass +
          Parameters: User *u, char *pass
          Called when a user attempts to identify for their nick, after the standard checks (whether the nick exists, etc.) are done but before the password itself is checked. The callback routine should return @@ -1203,76 +1236,78 @@

          nick delete -
          Parameters: NickInfo *ni +
          Parameters: NickInfo *ni
          Called when a nick's registration is deleted. The callback routine should always return 0.

          nickgroup delete -
          Parameters: NickGroupInfo *ngi, const char *oldnick +
          Parameters: NickGroupInfo *ngi, + const char *oldnick
          Called when a nick group is deleted (i.e. when the last nick for the group is deleted), after the nick - delete callback is called. "oldnick" is the + delete callback is called. oldnick is the nickname whose deletion caused this nickgroup to be deleted. The callback routine should always return 0.

          REGISTER/LINK check -
          Parameters: User *u, const char *nick, - char *password, char *email +
          Parameters: User *u, const char *nick, + char *password, char *email
          Called when a user attempts to register their nickname, after the validity of the parameters has been checked but before checking whether the nickname exists or the password is strong enough. - "u" is the user who sent the REGISTER command, - and "nick" is their nickname (the same as - u->nick). "email" may be NULL (if - the user did not provide an E-mail address), but - "password" will always be non-NULL. The callback - routine should return 0 to allow the registration to continue or 1 - to disallow it. + u is the user who sent the REGISTER + command, and nick is their nickname (the same as + u->nick). email may be + NULL (if the user did not provide an E-mail address), but + password will always be non-NULL. The + callback routine should return 0 to allow the registration to + continue or 1 to disallow it.

          Also called by the nickserv/link module when a user attempts to link a new nickname to their own. In this case - "nick" is the requested target nickname (different from - u->nick), and "password" and "email" - are both NULL. The callback is called after the nickname - is checked for validity (length and invalid characters), but before - checking whether the user has registered their current nickname. - The callback routine should return 0 to allow the link to be made - or 1 to disallow it. + nick is the requested target nickname (different + from u->nick), and password and + email are both NULL. The callback is + called after the nickname is checked for validity (length and + invalid characters), but before checking whether the user has + registered their current nickname. The callback routine should + return 0 to allow the link to be made or 1 to disallow it.

          registered -
          Parameters: User *u, NickInfo *ni, - NickGroupInfo *ngi, int *replied +
          Parameters: User *u, NickInfo *ni, + NickGroupInfo *ngi, + int *replied
          Called when a user registers their nickname, after the data structures have been set up. The integer pointed to by - "replied" can be set to 1 to disable the standard "your - nick has been registered" reply. The callback need not call - put_xxx() even if it modifies "ni" or - "ngi", as the caller will do so afterwards. The callback - routine should always return 0. + replied can be set to 1 to disable the standard + "your nick has been registered" reply. The callback need not call + put_xxx() even if it modifies ni or + ngi, as the caller will do so afterwards. The + callback routine should always return 0.

          SET -
          Parameters: User *u, NickInfo *ni, - NickGroupInfo *ngi, char *option, - char *param +
          Parameters: User *u, NickInfo *ni, + NickGroupInfo *ngi, + char *option, char *param
          Called when the SET command is used. All parameters are guaranteed to be valid (non-NULL), and standard permission - checks will have been performed (so "u" either is - identified for "ni"/"ngi" or is a Services + checks will have been performed (so u either is + identified for ni/ngi or is a Services admin). The callback routine should return 1 if it processes the given option, 0 otherwise.

          SET EMAIL -
          Parameters: User *u, NickGroupInfo *ngi +
          Parameters: User *u, NickGroupInfo *ngi
          Called when the E-mail address associated with a nick group is set, - changed, or unset. "u" is the user making the change; + changed, or unset. u is the user making the change; this may not necessarily be the owner of the nick if, for example, a Services admin is making the change. The new address is stored - in "ngi->email". The callback routine should always + in ngi->email. The callback routine should always return 0.
        @@ -1282,44 +1317,46 @@

        check_chan_user_modes -
        Parameters: const char *source, User *user, - Channel *c, int32 modes +
        Parameters: const char *source, User *user, + Channel *c, int32 modes
        Called when checking a user's modes on a channel, before any standard checks are performed. The mode change is being performed - by "source" (NULL for a channel join) on - "user" on channel "c", and the user's current - modes on the channel are "modes". The callback routine - should return 0 to allow normal checking to continue or 1 to abort - further checks. + by source (NULL for a channel join) on + user on channel c, and the user's + current modes on the channel are modes. The + callback routine should return 0 to allow normal checking to + continue or 1 to abort further checks.

        - Note: "source" may be the empty string; this + Note: source may be the empty string; this indicates an internal call to verify a user's current modes. In this case callback routines should not make any decisions about - modes based on the value of "source". + modes based on the value of source.

        check_kick -
        Parameters: User *user, ChannelInfo *ci, - char **mask_ret, const char **reason_ret +
        Parameters: User *user, ChannelInfo *ci, + char **mask_ret, + const char **reason_ret
        Called when checking whether a user should be kicked from a channel, before any standard checks are performed. The callback routine may return:
        • 0, to allow normal processing to continue.
        • 1, to cause the user to be kicked from the channel. In this - case, the callback routine must set "*mask_ret to a - newly smalloc()'d memory area containing the mask - to be banned (create_mask() or sstrdup() - may also be used) and "*reason_ret" to a string for - use as the reason in the kick. -
        • 2, to abort further processing and allow the user to enter the + case, the callback routine must set *mask_ret + to a newly smalloc()'d memory area containing the + mask to be banned (create_mask() or sstrdup() + may also be used) and *reason_ret to a string + for use as the reason in the kick. +
        • 2, to abort further processing and allow the user to enter the channel.

        check_modes -
        Parameters: Channel *channel, ChannelInfo *ci, - int add, int32 flag +
        Parameters: Channel *channel, + ChannelInfo *ci, int add, + int32 flag
        Called when checking a channel's modes against its mode lock for every mode locked either on (add nonzero) or off (add zero). The callback routine should return 1 if it @@ -1334,8 +1371,8 @@

        CLEAR -
        Parameters: User *user, Channel *channel, - char *what +
        Parameters: User *user, Channel *channel, + char *what
        Called when a valid CLEAR command is received (i.e. from a user with permission to use the command on the given channel). The callback routine should return 1 if it processes the command, 0 if @@ -1343,7 +1380,7 @@

        command -
        Parameters: User *user, char *command +
        Parameters: User *user, char *command
        Called for every message (other than a CTCP PING or empty message) received by ChanServ. See the OperServ "command" callback for @@ -1351,23 +1388,24 @@

        HELP -
        Parameters: User *user, char *param +
        Parameters: User *user, char *param
        Called when the HELP command is used with a parameter. The callback should return 1 if it processes the message, 0 otherwise.

        HELP COMMANDS -
        Parameters: User *user, int which +
        Parameters: User *user, int which
        Called when the HELP COMMANDS command is used. The - "which" parameter is 0 when called after the list of + which parameter is 0 when called after the list of unprivileged commands and 1 after the list of privileged commands (those shown to IRC operators). The callback routine should always return 0.

        INVITE -
        Parameters: User *u, Channel *c, ChannelInfo *ci +
        Parameters: User *u, Channel *c, + ChannelInfo *ci
        Called whenever a valid INVITE command is received (i.e. the user has permission to use INVITE for the channel). The callback should return 0 to allow normal processing to continue @@ -1375,36 +1413,39 @@

        SET -
        Parameters: User *u, ChannelInfo *ci, - char *option, char *param +
        Parameters: User *u, ChannelInfo *ci, + char *option, char *param
        Called when the SET command is used. All parameters are guaranteed to be valid (non-NULL), and standard permission checks will have been performed (so `u' either is - identified for "ci" or is a Services admin). The callback - routine should return 1 if it processes the given option, 0 - otherwise. + identified for ci or is a Services admin). The + callback routine should return 1 if it processes the given option, + 0 otherwise.

        SET MLOCK -
        Parameters: User *u, ChannelInfo *ci, - int modechar, int add, char **av +
        Parameters: User *u, ChannelInfo *ci, + int modechar, int add, + char **av
        Called for each valid mode character in a SET MLOCK - command. "add" is nonzero if adding modes, zero if - removing them. "av" points to the first argument for the - mode; there will always be enough arguments for the mode character. - The new mode lock (currently being constructed) is stored in - ci->mlock_XXX. The callback routine should return - 1 if it encounters an invalid parameter for a mode, 0 otherwise. + command. add is nonzero if adding modes, zero if + removing them. av points to the first argument for + the mode; there are guaranteed to be enough arguments for the mode + character (provided the number of arguments in the mode definition + is set correctly. The new mode lock (currently being constructed) + is stored in the ci->mlock_XXX fields. The + callback routine should return 1 if it encounters an invalid + parameter for a mode, otherwise.

        - Also called with "mode" set to zero when all modes have - been processed. In this case, "add" and "av" are - undefined, and the callback routine should return 1 if there is a - problem with the mode lock, 0 otherwise. + Also called with modechar set to zero when all + modes have been processed. In this case, add and + av are undefined, and the callback routine should + return 1 if there is a problem with the mode lock, 0 otherwise.

        UNBAN -
        Parameters: User *u, Channel *c, - ChannelInfo *ci +
        Parameters: User *u, Channel *c, + ChannelInfo *ci
        Called whenever a valid UNBAN command is received (i.e. the user has permission to use UNBAN for the channel). The callback should return 0 to allow normal processing to continue @@ -1417,7 +1458,7 @@

        command -
        Parameters: User *user, char *command +
        Parameters: User *user, char *command
        Called for every message (other than a CTCP PING or empty message) received by MemoServ. See the OperServ "command" callback for @@ -1425,33 +1466,33 @@

        HELP -
        Parameters: User *user, char *param +
        Parameters: User *user, char *param
        Called when the HELP command is used with a parameter. The callback should return 1 if it processes the message, 0 otherwise.

        HELP COMMANDS -
        Parameters: User *user, int which +
        Parameters: User *user, int which
        Called when the HELP COMMANDS command is used. The - "which" parameter is 0 when called after the list of + which parameter is 0 when called after the list of unprivileged commands and 1 after the list of privileged commands (those shown to IRC operators). The callback routine should always return 0.

        receive memo -
        Parameters: int ischan, void *who, - const char *whoname, const User *sender, - char *text -
        Called when a user or channel receives a memo. "ischan" - is zero if the recipient is a user, nonzero if a channel, and - "who" is the NickGroupInfo * or - ChannelInfo * for the recipient, respectively; - "whoname" is the name corresponding to "who" (the - one given in the MemoServ SEND command). The callback - should return nonzero to terminate processing or zero to cause the - memo to be received normally. +
        Parameters: int ischan, void *who, + const char *whoname, const User *sender, + char *text +
        Called when a user or channel receives a memo. + ischan is zero if the recipient is a user, nonzero + if a channel, and who is the NickGroupInfo + * or ChannelInfo * for the recipient, respectively; + whoname is the name corresponding to + who (the one given in the MemoServ SEND + command). The callback should return nonzero to terminate + processing or zero to cause the memo to be received normally.

        Callback routines for this callback should use one of the following two priorities (defined in memoserv.h): @@ -1461,11 +1502,11 @@

        SET -
        Parameters: User *u, MemoInfo *mi, - char *option, char *param +
        Parameters: User *u, MemoInfo *mi, + char *option, char *param
        Called when the SET command is used. All parameters are guaranteed to be valid (non-NULL), and standard permission - checks will have been performed. "mi" points to the + checks will have been performed. mi points to the MemoInfo for the user's nickname. The callback routine should return 1 if it handles the given option, 0 otherwise.
        @@ -1476,7 +1517,7 @@

        command -
        Parameters: User *user, char *command +
        Parameters: User *user, char *command
        Called for every message (other than a CTCP PING or empty message) received by StatServ. See the OperServ "command" callback for @@ -1484,17 +1525,17 @@

        HELP -
        Parameters: User *user, char *param +
        Parameters: User *user, char *param
        Called when the HELP command is used with a parameter. The callback should return 1 if it processes the message, 0 otherwise.

        HELP COMMANDS -
        Parameters: User *user, int which +
        Parameters: User *user, int which
        Called when the HELP COMMANDS command is used. The - "which" parameter is currently always 0. The callback - routine should always return 0. + which parameter is currently always 0. The + callback routine should always return 0.
        @@ -1503,17 +1544,17 @@

        auth -
        Parameters: Client *c, int *close_ptr -
        Called for each valid request received by the server. "c" - is the client from which the request was received; the request data - is stored in the client structure (see http.h), and at a - minimum the "method", "url", - "version_major", and "version_minor" fields will - be set appropriately. If the request is denied and the connection - should be closed after the reply is sent, the callback routine - should set *close_ptr to a nonzero value - (*close_ptr should not be modified if the request is not - denied). The callback routine should return +
        Parameters: Client *c, int *close_ptr +
        Called for each valid request received by the server. + c is the client from which the request was + received; the request data is stored in the client structure + (see http.h), and at a minimum the method, + url, version_major, and version_minor + fields will be set appropriately. If the request is denied and the + connection should be closed after the reply is sent, the callback + routine should set *close_ptr to a nonzero value + (*close_ptr should not be modified if the request + is not denied). The callback routine should return HTTP_AUTH_ALLOW to explicitly allow the request to proceed, HTTP_AUTH_DENY to deny the request (in which case the module must send an appropriate error message), or @@ -1523,18 +1564,17 @@

        request -
        Parameters: Client *c, int *close_ptr +
        Parameters: Client *c, int *close_ptr
        Called for each valid request received by the server and either explicitly allowed or passed through by all authorization - callbacks. "c" is the client from which the request was - received; the request data is stored in the client structure (see - http.h), and at a minimum the "method", - "url", "version_major", and - "version_minor" fields will be set appropriately. If the - connection should be closed after the reply is sent, the callback - routine should set *close_ptr to a nonzero value. The - callback routine should return 1 if it processes the request, 0 - otherwise. + callbacks. c is the client from which the request + was received; the request data is stored in the client structure + (see http.h), and at a minimum the method, + url, version_major, and version_minor + fields will be set appropriately. If the connection should be + closed after the reply is sent, the callback routine should set + *close_ptr to a nonzero value. The callback + routine should return 1 if it processes the request, 0 otherwise.

        Back to top diff -uNr ircservices-5.0.19/docs/a.html ircservices-5.0.20/docs/a.html --- ircservices-5.0.19/docs/a.html 2003-05-28 11:42:10 +0900 +++ ircservices-5.0.20/docs/a.html 2003-05-28 15:18:16 +0900 @@ -1502,13 +1502,13 @@

        Example: NSLinkMax 20

      -

      nickserv/mail-auth (Authorization module) +

      nickserv/mail-auth (Authentication module)

      + +

      Z.6.5. But if so many people want ChanServ to stay in + channels, shouldn't you add that? +

      + As described in Z.5 and Z.6 + above, this runs counter to my development plans, and I frankly + don't believe such a feature is needed. (Just because you can + get a hundred people to agree with you doesn't in and of itself + make your beliefs correct.) I expect that if there is truly enough + need for a feature like this, someone will write a module to + implement it. +

      +

      Z.7. I submitted a bug report / feature request and it got fixed / added, but I didn't get credit in the Changes diff -uNr ircservices-5.0.19/docs/upgrade.html ircservices-5.0.20/docs/upgrade.html --- ircservices-5.0.19/docs/upgrade.html 2003-02-25 21:16:45 +0900 +++ ircservices-5.0.20/docs/upgrade.html 2003-05-28 15:22:23 +0900 @@ -93,7 +93,7 @@

      The mail-auth module is a new feature in version 5.0 which allows E-mail addresses to be checked for validity. When enabled, all new nickname registrations and E-mail address changes will require the user to -verify that the address provided is valid, by entering an authorization +verify that the address provided is valid, by entering an authentication code mailed by Services to the address. However, if you are upgrading from an earlier version of Services, some users may already have entered invalid E-mail addresses for their nicknames. @@ -103,7 +103,7 @@ valid if NickServ is enabled). When this option is used, Services will clear the E-mail address associated with all registered nicknames; all users will then be required to enter their E-mail address again and verify -it with an authorization code before being allowed to identify for their +it with an authentication code before being allowed to identify for their nicknames.

      If you intend to use the mail-auth module, it is recommended diff -uNr ircservices-5.0.19/extern.h ircservices-5.0.20/extern.h --- ircservices-5.0.19/extern.h 2003-05-28 15:19:26 +0900 +++ ircservices-5.0.20/extern.h 2003-06-25 03:03:13 +0900 @@ -180,6 +180,7 @@ E int openlog_failed, openlog_errno; E int cb_connect; E int cb_save_data; +E int cb_save_complete; E void connect_callback(Socket *s, void *param_unused); E void disconnect_callback(Socket *s, void *param); @@ -225,6 +226,7 @@ E char *unpack_ip(const uint8 *ip); E int lock_data(void); +E int is_data_locked(void); E int unlock_data(void); diff -uNr ircservices-5.0.19/init.c ircservices-5.0.20/init.c --- ircservices-5.0.19/init.c 2003-05-28 15:19:26 +0900 +++ ircservices-5.0.20/init.c 2003-06-25 03:03:13 +0900 @@ -798,12 +798,14 @@ srand(time(NULL) ^ getppid() ^ getpid()<<16); /* Register our (and main.c's) callbacks. */ - cb_cmdline = register_callback(NULL, "command line"); + cb_cmdline = register_callback(NULL, "command line"); cb_introduce_user = register_callback(NULL, "introduce_user"); - cb_connect = register_callback(NULL, "connect"); - cb_save_data = register_callback(NULL, "save data"); + cb_connect = register_callback(NULL, "connect"); + cb_save_data = register_callback(NULL, "save data"); + cb_save_complete = register_callback(NULL, "save data complete"); if (cb_cmdline < 0 || cb_introduce_user < 0 || cb_connect < 0 - || cb_save_data < 0) { + || cb_save_data < 0 || cb_save_complete < 0 + ) { log("init(): Unable to register callbacks"); return -1; } diff -uNr ircservices-5.0.19/lang/de.l ircservices-5.0.20/lang/de.l --- ircservices-5.0.19/lang/de.l 2003-01-22 23:45:12 +0900 +++ ircservices-5.0.20/lang/de.l 2003-06-25 02:56:51 +0900 @@ -202,7 +202,7 @@ Dieser Befehl benötigt eine Passwort-Authentizierung. Bitte versuchen Sie es erneut nach der Eingabe von /msg %s IDENTIFY Passwort. NICK_PLEASE_AUTH - Ihr Chatname ist noch nicht authorisiert. Bitte authorisieren sie den Chatnamen mit dem Code, der an folgende E-Mail-Adresse geschickt wurde: %s. + Ihr Chatname ist noch nicht authentifiziert. Bitte authentifizieren sie den Chatnamen mit dem Code, der an folgende E-Mail-Adresse geschickt wurde: %s. NICK_X_NOT_ON_CHAN_X Der Chatname %s ist im Moment nicht im Raum %s. @@ -277,7 +277,7 @@ NICK_CANNOT_BE_REGISTERED Chatname %s kann nicht registriert werden. NICK_REGISTER_EMAIL_UNAUTHED - Die E-Mail-Adresse, die Sie angegeben haben, wurde bis jetzt nicht autorisiert. Benutzen Sie den AUTH Befehl um die E-Mail-Adresse zu autorisieren, befor Sie neue Chatnamen mit ihr registrieren. + Die E-Mail-Adresse, die Sie angegeben haben, wurde bis jetzt nicht authentifiziert. Benutzen Sie den AUTH Befehl um die E-Mail-Adresse zu authentifizieren, befor Sie neue Chatnamen mit ihr registrieren. NICK_REGISTER_TOO_MANY_NICKS Sie haben zu viele registrierten Chatnamen (%d, Maximum ist %d). Sie können keine neuen registrieren, bis Si einige von Ihren Chatnamen löschen. NICK_REGISTERED @@ -351,7 +351,7 @@ # SET EMAIL responses NICK_SET_EMAIL_UNAUTHED - Die E-Mail-Adresse, die Sie angegeben haben, wurde bis jetzt nicht autorisiert. Benutzen zuerst Sie den AUTH Befehl um die E-Mail-Adresse zu autorisieren. + Die E-Mail-Adresse, die Sie angegeben haben, wurde bis jetzt nicht authentifiziert. Benutzen Sie den AUTH Befehl um die E-Mail-Adresse zu authentifizieren. NICK_SET_EMAIL_TOO_MANY_NICKS %s hat bereits %d registrierte Chatnamen (Maximum %d). Die Änderunge der E-Mail-Adresse fehlgeschlagen. NICK_SET_EMAIL_CHANGED @@ -694,12 +694,12 @@ # General-purpose messages NICK_AUTH_SENT - Der Authorisierungscode für Ihren Chatnamen wurde zu %s versand. + Der Authentifizierungscode für Ihren Chatnamen wurde an folgende E-Mail-Adresse geschickt: %s. NICK_AUTH_FOR_REGISTER Wenn sie diese Nachricht bekommen, geben sie bitte, um die Registrierung des Chatnamens abzuschließen, folgenden Befehl ein: /msg %s AUTH Code. Den Code ersetzen sie mit dem, den sie in der Nachricht bekommen haben. NICK_AUTH_FOR_SET_EMAIL Wenn sie diese Nachricht bekommen, geben sie bitte, um die Änderung der E-Mail-Adresse abzuschließen, folgenden Befehl ein: /msg %s AUTH Code. Den Code ersetzen sie mit dem, den sie in der Nachricht bekommen haben. - Hinweis: Sie werden Iren Chatnamen nicht benutzen können, bis Sie den Befehl angewandt haben. + Hinweis: Sie werden Ihren Chatnamen nicht benutzen können, bis Sie den Befehl angewandt haben. NICK_AUTH_NOT_NEEDED Eine Authentifizierung ist momentan nicht notwendig. NICK_AUTH_NO_AUTHCODE @@ -737,7 +737,7 @@ NICK_AUTH_DISABLED Die Chatnamen-Authentifizierung ist temporär nicht verfügbar. NICK_AUTH_FAILED - Der Authentifizierungscode ist falsch. + Der Authentifizierungscode ist nicht korrekt. NICK_AUTH_SUCCEEDED_REGISTER Authentifizierung erfolgreich; die Registrierung des Chatnamens ist jetzt abgeschlossen. NICK_AUTH_SUCCEEDED_SET_EMAIL @@ -765,7 +765,7 @@ NICK_SETAUTH_SEND_TEMPFAIL Warnung: Versenden der E-Mail zu %s fehlgeschlagen. Nicht genug Ressources. NICK_SETAUTH_USER_NOTICE - Sie müssen Ihren Chatnamen Authentifizieren, bevor Sie ihn nutzen können. Der Authentifizierungscode wurde an folgende E-Mail-Adresse verschickt: %s. + Sie müssen Ihren Chatnamen authentifizieren, bevor Sie ihn nutzen können. Der Authentifizierungscode wurde an folgende E-Mail-Adresse verschickt: %s. /msg %s HELP AUTH für weitere Informationen. # GETAUTH responses @@ -2049,8 +2049,16 @@ RAW Text # UPDATE responses +OPER_UPDATE_SYNTAX + UPDATE [FORCE] +OPER_UPDATE_FORCE_FAILED + Unable to unlock databases. OPER_UPDATING - Datenbank wird aktualisiert. + Aktualisiere Datenbanken... +OPER_UPDATE_COMPLETE + Datenbankaktualisierung abgeschlossen. +OPER_UPDATE_FAILED + Datenbankaktualisierung fehlgeschlagen. # RESTART responses @@ -2360,7 +2368,7 @@ REGISTER Registrieren des aktuellen Chatnames. NICK_HELP_COMMANDS_AUTH AUTH Authorisieren der Chatnamenregistrierung. - SENDAUTH Verschickt den Authorisierungscode an Sie. + SENDAUTH Verschickt den Authentifizierungscode an Sie. NICK_HELP_COMMANDS_IDENTIFY IDENTIFY Identifizierung des Chatnames. NICK_HELP_COMMANDS_SENDPASS @@ -2412,8 +2420,8 @@ Informationen NICK_HELP_REGISTER_EMAIL_AUTH - Bei der Registrtierung müssen Sie ihre gültige E-Mail-Adresse angeben. - %S wird eine E-Mail mit dem Authorisierungscode an diese E-Mail-Adresse + Bei der Registrierung müssen Sie ihre gültige E-Mail-Adresse angeben. + %S wird eine E-Mail mit dem Authentifizierungscode an diese E-Mail-Adresse verschicken. Diesen Code müssen Sie mit dem Befehl AUTH angeben, damit die Registrierung abgeschlossen wird. Mit dem Befehl SET HIDE können Sie verhindern, dass diese E-Mail-Adresse von anderen gelesen wird. @@ -2433,22 +2441,22 @@ NICK_HELP_AUTH Syntax: AUTH Code - Authorisiert die Registrierung und/oder die Änderung der + Authentifiziert die Registrierung und/oder die Änderung der E-Mail-Adresse. Um zu prüfen, ob die E-Mail-Adresse korrekt ist, - versendet %S eine E-Mail mit dem Authorisierungscode an diese + versendet %S eine E-Mail mit dem Authentifizierungscode an diese E-Mail-Adresse wenn sie einen Chatnamen registrieren oder die E-Mail-Adresse (Befehl SET EMAIL) ändern. Durch diesen Befehl wird sichergestellt, dass sie die E-Mail erhalten haben. Der - Chatname erst nach der Authorisierung benutzt werden. Der + Chatname erst nach der Authentifizierung benutzt werden. Der Code soll durch den ersetzt werden, den sie über E-Mail bekommen haben. NICK_HELP_SENDAUTH Syntax: SENDAUTH - Verschickt eine Kopie des Authorisierungscode für Ihren + Verschickt eine Kopie des Authentifizierungscode für Ihren Chatnamen nach REGISTER oder SET EMAIL. Dies ist dann - nützlich, wenn sie die E-Mail mit dem Authorisierungscode + nützlich, wenn sie die E-Mail mit dem Authentifizierungscode versehentlich gelöscht haben. Um Mißbrauch vorzubeugen, kann man den Befehl nur einmal @@ -2760,14 +2768,16 @@ benutzt, zu trennen. Wenn die KILL Sicherheitsfunktion aktiv ist, macht %S das automatisch. - Mit diesem Befehl, verbindet %S einen virtuellen User mit ihrem + Mit diesem Befehl, verbindet %S einen virtuellen User mit Ihrem Chatnamen zum Server. Das führt dazu, dass die Verbindung vom anderen Benutzer getrennt wird. Dieser virtuelle User bleibt - eine Minute online. Sie können nach einer Minute Ihren Chatnamen - zurückhaben. Mit dem Befehl RELEASE ist es möglich, den - Chatnamen früher freizugeben (/msg %S HELP RELEASE). + %s online, um zu verhindern, dass ein anderer diesen Nick + nach einem reconnect nutzen kann. Sie können nach einer Minute + Ihren Chatnamen zurückhaben. Mit dem Befehl RELEASE ist es + möglich, den Chatnamen früher freizugeben. + (/msg %S HELP RELEASE) - Um den -befehl RECOVER benutzen zu können, müssen Sie + Um den Befehl RECOVER benutzen zu können, müssen Sie das Passwort angeben oder sich für einen anderen Chatnamen identifizieren, der mit dem Zielchatnamen verbunden ist. @@ -2776,7 +2786,7 @@ Gibt den Chatnamen frei, der von %S, infolge des Befehls RECOVER gehalten ist. Standardmässig wird der Chatname für - eine Minute gehalten. Dieser Befehl erlaubt diese Zeitspanne + %s gehalten. Dieser Befehl erlaubt diese Zeitspanne zu verkürzen. Um den Befehl RELEASE benutzen zu können, müssten Sie @@ -2897,11 +2907,11 @@ NICK_OPER_HELP_COMMANDS_LISTLINKS LISTLINKS Zeigt die aktuellen Links zu einem Chatnamen. NICK_OPER_HELP_COMMANDS_SETAUTH - SETAUTH Setzt einen neuen Authorisierungscode für den + SETAUTH Setzt einen neuen Authentifizierungscode für den angegebenen Chatnamen. - GETAUTH Zeigt den Authorisierungscode für den angegebenen + GETAUTH Zeigt den Authentifizierungscode für den angegebenen Chatnamen an. - CLEARAUTH Löscht den Authorisierungscode für den angegebenen + CLEARAUTH Löscht den Authentifizierungscode für den angegebenen Chatnamen. NICK_OPER_HELP_COMMANDS_END @@ -3031,12 +3041,12 @@ (Format user@host) auf die Suchmaske passen. Chatnamen mit der Option PRIVATE werden nur Services-Administratoren angezeigt. Die NOEXPIRE-Chatnamen werden mit einem !, die suspendierten - mit einem * und noch nicht authorisierten (Befehl AUTH) mit + mit einem * und noch nicht authentifizierten (Befehl AUTH) mit einem ? am Anfang markiert. Wenn FORBIDDEN, SUSPENDED, NOEXPIRE oder NOAUTH angegeben sind, werden nur verbotene, suspendierte, NOEXPIRE- oder noch nicht - authorisierte Chatnamen angezeigt. Diese Optionen können in beliebiger + authentifizierte Chatnamen angezeigt. Diese Optionen können in beliebiger Reihenfolge oder Kombination gegeben werden. Sie sind nur von den Services-Administratoren anwendbar. @@ -3096,6 +3106,8 @@ Verhindert, dass der Chatname, und alle damit verbundenen, benutzt, oder identifiziert werden. UNSUSPEND hebt die Suspendierung auf. + Der Parameter Dauer wird genauso interpretiert wie beim Befehl + %s AKILL. Im Gegensatz zu Verbot (FORBID), verliert der Chatname seine Information nicht. Die Registrierung kann ebenfalls @@ -3118,7 +3130,7 @@ NICK_OPER_HELP_SETAUTH Syntax: SETAUTH Chatname - Setzt den Authorisierungscode für den angegebenen Chatnamen + Setzt den Authentifizierungscode für den angegebenen Chatnamen neu. Der Inhaber der Chatnamens wird den Befehl AUTH erneut benutzen müssen, um den Chatnamen weiter nutzen zu können (z.B. Befehl IDENTIFY). Wenn der Chatname ist in Benutzung, @@ -3130,7 +3142,7 @@ NICK_OPER_HELP_GETAUTH Syntax: GETAUTH Chatname - Zeigt den Authorisierungscode des angegenenen Chatnamens, + Zeigt den Authentifizierungscode des angegenenen Chatnamens, falls existiert. Dieser Befehl steht nur den Services-Administratoren zur Verfügung. @@ -3138,7 +3150,7 @@ NICK_OPER_HELP_CLEARAUTH Syntax: CLEARAUTH Chatname - Löscht den Authorisierungscode für den angegebenen Chatnamen. + Löscht den Authentifizierungscode für den angegebenen Chatnamen. Dies erlaubt eine normalle Nutzung des Chatnamens. Dieser Befehl steht nur den Services-Administratoren zur Verfügung. @@ -3310,7 +3322,7 @@ SECUREOPS Strengere Kontrolle des Raum-Operator-Status LEAVEOPS Beim betreten den Raum-Operator-Status nicht entziehen - OPNOTICE Eine NOTICE schicken, wenn OP/DEOP Befehle + OPNOTICE Eine NOTICE schicken, wenn OP/VOICE Befehle benutzt werden ENFORCE Zwingt die Autoop und Autovoice status @@ -3446,6 +3458,8 @@ Wenn aktiv, können nur die, die ihren Chatnamen mit %s registriert haben und sich mit IDENTIFY identifiziert haben, besondere Rechte zum Raum erhalten - folgend der Zugriffsliste. + Wenn die Option RESTRICTED auch gesetzt ist, können nur Chatter + in den Raum, die sich bei %s identiffiziert haben. CHAN_HELP_SET_SECUREOPS Syntax: SET Raum SECUREOPS {ON|OFF} @@ -3459,10 +3473,10 @@ Aktiviert/deaktiviert die LeaveOps-Option. Wenn aktiv, wird %S der ersten Person, die den Raum betritt, nicht den - Raum-Operator-Status entziehen. Die Optionen SECUREOPS und - AUTODEOP werden trotzdem beachtet. + Raum-Operator-Status entziehen. Die Option SECUREOPS wird + trotzdem beachtet. Warnung: dies kann die Übernahme des Raumes bei einem - Netsplit ermögliochen. + Netsplit ermöglichen. CHAN_HELP_SET_OPNOTICE Syntax: SET Raum OPNOTICE {ON | OFF} @@ -3987,9 +4001,10 @@ Verhindert, dass der Raum benutzt wird und dass sich jemand für den Raum identifiziert. UNSUSPEND hebt die Suspendierung - auf. + auf. Der Parameter Dauer wird in der gleichen Syntax erwartet wie + für den %s AKILL Befehl. - Im Gegensatz zu Verbot (FORBID), verliert der Raum seine + Im Gegensatz zum Verbot (FORBID), verliert der Raum seine Information nicht. Die Registrierung kann ebenfalls verfallen. Dieser Befehl steht nur den Services-Administratoren zur Verfügung. @@ -4023,11 +4038,15 @@ Hinweis: Memos können verfallen (werden automatisch gelöscht) %s nach dem Verschicken, es sei denn sie werden mit dem Befehl SAVE markiert. -MEMO_HELP_END +MEMO_HELP_END_LEVELS (*) Standardeinstellung ist, dass Chatnamen mit Stufe %s in der Zugriffsliste des Raumes die Raum-Memos lesen können. Diese Einstellung kann man mit dem %s-Befehl LEVELS ändern. +MEMO_HELP_END_XOP + + (*) Jeder Chatter in der SOP-Liste eines Raumes kann Memos dieses + Raumes lesen. MEMO_HELP_COMMANDS %S versteht folgende Befehle: @@ -4107,6 +4126,9 @@ DEL 2-5,7-9 Löscht Memos von 2 bis 5 und 7 bis 9. + Achtung: Das Löschen eines Memos ist endgültig, und kann nicht + rückgängig gemacht werden. + MEMO_HELP_SET Syntax: SET Option Parameter @@ -4429,7 +4451,7 @@ wann der Eintrag ablaufen soll. Diese sollte mit einer Zeiteinheit versehen werden: d (Tage), h (Stunden) oder m (Minuten). Eine Kombination (z.B. 1h30m) ist - nicht erlaubt. Der Standardeinheit ist ein Tag, +30 + auch erlaubt. Der Standardeinheit ist ein Tag, +30 bedeutet somit 30 Tage. Ein Eintrag, der nicht ablaufen soll, muss mit einer Zeitangabe von +0 versehen werden. Die Dauer muss angegeben werden, wenn die Maske (user@host) @@ -4461,7 +4483,7 @@ in Ihrer Autokill-Liste haben und manchen Usern die Verbindung zum Server trotzdem erlauben möchten. - Die Optionen ADD, DEL, LIST, VIEW und COUNT funktionieren + Die Optionen ADD, DEL, LIST, VIEW und COUNT funktionieren ähnlich, wie beim Befehl AKILL. Sehen Sie die Hilfe für AKILL für weitere Informationen. @@ -4502,7 +4524,7 @@ wann der Eintrag ablaufen soll. Diese sollte mit einer Zeiteinheit versehen werden: d (Tage), h (Stunden) oder m (Minuten). Eine Kombination (z.B. 1h30m) ist - nicht erlaubt. Der Standardeinheit ist ein Tag, +30 + auch erlaubt. Der Standardeinheit ist ein Tag, +30 bedeutet somit 30 Tage. Ein Eintrag, der nicht ablaufen soll, muss mit einer Zeitangabe von +0 versehen werden. Die Maske muss in Gänsefüßchen angegeben werden, wenn die Maske @@ -4522,12 +4544,27 @@ SQLINE VIEW [Maske] [NOEXPIRE] SQLINE COUNT - Erlaubt Services-Operatoren die SQLINE-Liste zu bearbeiten. - Wenn ein User, dessen Chatname einem Eintrag aus der SQLINE-Liste - entspricht, sich mit dem IRC-Server verbindet, wird Services - den Benutzer per KILL entfernen und, wenn die IRC-Server es - unterstützen, die Server instruieren, einen Bann (Q-Line) - auf den Chatnamen zu setzen. +OPER_HELP_SQLINE_KILL + Erlaubt Services OPERs die SQLINE liste zu manipulieren. + Sobald ein Chatter, dessen Chatname auf einen SQLINE Eintrag + passt, eine Verbindung zum System aufbaut, oder seinen Chatnamen + zu einem ändern möchte, der auf der Liste steht, wird er von + den Services "gekillt". Wenn die Server das unterstützen, wird + auf jedem Server eine Q-Line gesetzt. +OPER_HELP_SQLINE_NOKILL + Erlaubt Services OPERs die SQLINE liste zu manipulieren. + Sobald ein Chatter, dessen Chatname auf einen SQLINE Eintrag + passt, eine Verbindung zum System aufbaut, oder seinen Chatnamen + zu einem ändern möchte, der auf der Liste steht, wird er von + den Services zu einem Gast umbenannt. Der Chatter bekommt eine + Nachricht, die normalerweise dem Chatprogramm mitteilt, einen + alternativen Chatnamen zu benutzen. Wenn die Server das + unterstützen, wird auf jedem Server eine Q-Line gesetzt. +OPER_HELP_SQLINE_IGNOREOPERS + + Bitte beachten: IRC Ops sind von Einträgen in der SQLINE-liste + nicht betroffen. +OPER_HELP_SQLINE_END Die Optionen ADD, DEL, LIST, VIEW und COUNT bewirken das Hinzufügen, Löschen, Anzeigen (Kurz- oder Langform) eines @@ -4600,7 +4637,7 @@ wann der Eintrag ablaufen soll. Diese sollte mit einer Zeiteinheit versehen werden: d (Tage), h (Stunden) oder m (Minuten). Eine Kombination (z.B. 1h30m) ist - nicht erlaubt. Der Standardeinheit ist ein Tag, +30 + auch erlaubt. Der Standardeinheit ist ein Tag, +30 bedeutet somit 30 Tage. Ein Eintrag, der nicht ablaufen soll, muss mit einer Zeitangabe von +0 versehen werden. Die Dauer muss angegeben werden, wenn die Host-Maske @@ -4699,7 +4736,7 @@ Setzt ein Jupiter auf den gegebenen Server, indem Services einen Fake-Server mit dem IRC-Netz verbindet, damit sich der tatsächliche Server mit dem selben namen nicht mehr verbinden - kann. Der Jupiter kann per SQUIT entfernt werden. Wenn + kann. Der Jupiter kann per /SQUIT entfernt werden. Wenn ein Grund angegeben ist, wird er bei der Serverinformation angezeigt. Andernfalls wird der Text "Jupitered by " angezeigt. @@ -4719,11 +4756,13 @@ Dieser Befehl steht nur den Services-Root zur Verfügung. OPER_HELP_UPDATE - Syntax: UPDATE - - Speichert sofort die Services-Datenbank. + Syntax: UPDATE [FORCE] - Dieser Befehl steht nur den Services-Administratoren zur Verfügung. + Veranlasst Services dazu, alle Datenbankdateien wegzuspreichern. + Die Option FORCE sorgt dafür, dass versucht wird, eine sperre + auf die Dateien aufzuheben. Damit kann die Fehlermeldung "databases + are locked" umgangen werden. + Diesen Befehl können nur Services Admins benutzen. OPER_HELP_QUIT Syntax: QUIT diff -uNr ircservices-5.0.19/lang/en_us.l ircservices-5.0.20/lang/en_us.l --- ircservices-5.0.19/lang/en_us.l 2003-04-30 14:20:25 +0900 +++ ircservices-5.0.20/lang/en_us.l 2003-06-03 15:21:55 +0900 @@ -239,7 +239,7 @@ Password authentication required for that command. Retry after typing /msg %s IDENTIFY password. NICK_PLEASE_AUTH - Your nickname is not yet authorized. Please authorize your nickname using the authorization code in the mail message sent to: %s + Your nickname is not yet authenticated. Please authenticate your nickname using the authentication code in the mail message sent to: %s NICK_X_NOT_ON_CHAN_X Nickname %s isn't currently on channel %s. @@ -313,7 +313,7 @@ NICK_CANNOT_BE_REGISTERED Nickname %s may not be registered. NICK_REGISTER_EMAIL_UNAUTHED - The E-mail address you provided has not yet been authorized. Please use the AUTH command to authorize the address before registering new nicknames with it. + The E-mail address you provided has not yet been authenticated. Please use the AUTH command to authenticate the address before registering new nicknames with it. NICK_REGISTER_TOO_MANY_NICKS You have too many nicknames registered (%d, maximum of %d). You cannot register any more until you drop some of your current nicknames. NICK_REGISTERED @@ -387,7 +387,7 @@ # SET EMAIL responses NICK_SET_EMAIL_UNAUTHED - The E-mail address you provided has not yet been authorized. Please use the AUTH command to authorize the address first. + The E-mail address you provided has not yet been authenticated. Please use the AUTH command to authenticate the address first. NICK_SET_EMAIL_TOO_MANY_NICKS %s already has %d nicknames registered (maximum of %d). E-mail address change failed. NICK_SET_EMAIL_CHANGED @@ -731,27 +731,27 @@ # General-purpose messages NICK_AUTH_SENT - An authorization code for your nickname has been sent to %s. + An authentication code for your nickname has been sent to %s. NICK_AUTH_FOR_REGISTER - When you receive this message, type /msg %s AUTH code (replace code with the authorization code in the message) to complete your nickname registration. + When you receive this message, type /msg %s AUTH code (replace code with the authentication code in the message) to complete your nickname registration. NICK_AUTH_FOR_SET_EMAIL - When you receive this message, type /msg %s AUTH code (replace code with the authorization code in the message) to complete your E-mail address change. + When you receive this message, type /msg %s AUTH code (replace code with the authentication code in the message) to complete your E-mail address change. Please note that you will not be able to continue using your nickname unless you complete the change. NICK_AUTH_NOT_NEEDED - There is currently nothing that needs authorization. + There is currently nothing that needs authentication. NICK_AUTH_NO_AUTHCODE - Nickname %s has no authorization code. + Nickname %s has no authentication code. NICK_AUTH_HAS_AUTHCODE - Nickname %s already has an authorization code. + Nickname %s already has an authentication code. PASSWORD_WARNING_FOR_AUTH - Warning: After one more incorrect authorization code you will be disconnected. + Warning: After one more incorrect authentication code you will be disconnected. # Mail text. The last "%s" (before the user@host) in the body text is # replaced by one of the NICK_AUTH_MAIL_TEXT_* messages. NICK_AUTH_MAIL_SUBJECT - Authorization code for %s + Authentication code for %s NICK_AUTH_MAIL_BODY - The authorization code for your nickname (%s) is: %09d + The authentication code for your nickname (%s) is: %09d Please submit this code to %s with the command: /msg %s AUTH %09d @@ -764,7 +764,7 @@ NICK_AUTH_MAIL_TEXT_SENDAUTH a SENDAUTH command from NICK_AUTH_MAIL_BODY_SETAUTH - The authorization code for your nickname (%s) is: %09d + The authentication code for your nickname (%s) is: %09d Please submit this code to %s with the command: /msg %s AUTH %09d @@ -772,15 +772,15 @@ NICK_AUTH_SYNTAX AUTH code NICK_AUTH_DISABLED - Sorry, nickname authorization is temporarily disabled. + Sorry, nickname authentication is temporarily disabled. NICK_AUTH_FAILED - That authorization code is incorrect. + That authentication code is incorrect. NICK_AUTH_SUCCEEDED_REGISTER - Authorization succeeded; your nickname registration is now complete. + Authentication succeeded; your nickname registration is now complete. NICK_AUTH_SUCCEEDED_SET_EMAIL - Authorization succeeded; your E-mail address change is now complete. + Authentication succeeded; your E-mail address change is now complete. NICK_AUTH_SUCCEEDED_SETAUTH - Authorization succeeded; you may now continue using your nickname. + Authentication succeeded; you may now continue using your nickname. # SENDAUTH responses NICK_SENDAUTH_SYNTAX @@ -788,7 +788,7 @@ NICK_SENDAUTH_TOO_SOON Please wait %s before using the SENDAUTH command again. NICK_SENDAUTH_FAILED - Sorry, unable to send authorization code. + Sorry, unable to send authentication code. # SETAUTH responses NICK_SETAUTH_SYNTAX @@ -796,26 +796,26 @@ NICK_SETAUTH_NO_EMAIL Nickname %s has no E-mail address set. NICK_SETAUTH_AUTHCODE_SET - A new authorization code (%09d) has been set for nickname %s. + A new authentication code (%09d) has been set for nickname %s. NICK_SETAUTH_SEND_FAILED Warning: unable to send mail to %s. NICK_SETAUTH_SEND_TEMPFAIL Warning: unable to send mail to %s (insufficient resources). NICK_SETAUTH_USER_NOTICE - You must authorize your nickname before continuing to use it. An authorization code has been sent to your E-mail address: %s + You must authenticate your nickname before continuing to use it. An authentication code has been sent to your E-mail address: %s Type /msg %s HELP AUTH for more information. # GETAUTH responses NICK_GETAUTH_SYNTAX GETAUTH nickname NICK_GETAUTH_AUTHCODE_IS - The authorization code for nickname %s is: %09d + The authentication code for nickname %s is: %09d # CLEARAUTH responses NICK_CLEARAUTH_SYNTAX CLEARAUTH nickname NICK_CLEARAUTH_CLEARED - The authorization code for nickname %s has been cleared. + The authentication code for nickname %s has been cleared. ################ sendpass module messages/responses @@ -836,7 +836,7 @@ NICK_SENDPASS_NO_EMAIL Nickname %s does not have an E-mail address set. NICK_SENDPASS_NOT_AUTHED - The E-mail address for nickname %s has not yet been authorized. + The E-mail address for nickname %s has not yet been authenticated. # parameter is "NNN days/hours/minutes" NICK_SENDPASS_TOO_SOON Please wait %s before using the SENDPASS command again. @@ -2086,8 +2086,16 @@ RAW text # UPDATE responses +OPER_UPDATE_SYNTAX + UPDATE [FORCE] +OPER_UPDATE_FORCE_FAILED + Unable to unlock databases. OPER_UPDATING - Updating databases. + Updating databases... +OPER_UPDATE_COMPLETE + Database update complete. +OPER_UPDATE_FAILED + Database update failed. # REHASH responses OPER_REHASHING @@ -2398,8 +2406,8 @@ REGISTER Register a nickname NICK_HELP_COMMANDS_AUTH - AUTH Authorize a nickname registration - SENDAUTH Send yourself the nickname authorization code + AUTH Authenticate a nickname registration + SENDAUTH Send yourself the nickname authentication code NICK_HELP_COMMANDS_IDENTIFY IDENTIFY Identify yourself with your password NICK_HELP_COMMANDS_SENDPASS @@ -2456,7 +2464,7 @@ You must include a valid E-mail address when registering your nickname; %S will send a message with an - authorization code to this address, which you must use with + authentication code to this address, which you must use with the AUTH command to complete your registration. You can prevent your E-mail address from being shown to other users with the SET HIDE command (type /msg %S HELP SET HIDE for @@ -2475,23 +2483,24 @@ NICK_HELP_AUTH Syntax: AUTH code - Authorizes registration or change of E-mail for a nickname. - To ensure that your E-mail address is correct, %S will - send an message containing an authorization code to the - E-mail address given when you register your nickname or - change your E-mail address with the SET EMAIL command. This - command allows you to confirm that you have received the - message and continue using your nickname normally. Replace - code in the command with the nine-digit authorization code - given in the E-mail message. + Authenticates registration or change of E-mail for a + nickname. To ensure that your E-mail address is correct, + %S will send an message containing an authentication + code to the E-mail address given when you register your + nickname or change your E-mail address with the SET EMAIL + command. This command allows you to confirm that you have + received the message and continue using your nickname + normally. Replace code in the command with the nine-digit + authentication code given in the E-mail message. NICK_HELP_SENDAUTH Syntax: SENDAUTH - Sends you a copy of the authorization code for your nickname - after a REGISTER or SET EMAIL. If you accidentally delete - or otherwise lose the message with the authorization code, - you can use this command to have an extra copy sent to you. + Sends you a copy of the authentication code for your + nickname after a REGISTER or SET EMAIL. If you accidentally + delete or otherwise lose the message with the authorization + code, you can use this command to have an extra copy sent to + you. To prevent abuse, this command may only be used once every 24 hours. @@ -2815,8 +2824,8 @@ online with the same nickname as the user you're trying to recover your nick from, causing the IRC servers to disconnect the other user. This fake user will remain - online for one minute to ensure that the other user does not - immediately reconnect; after that minute, you can reclaim + online for %s to ensure that the other user does not + immediately reconnect; after that time, you can reclaim your nick. Alternatively, use the RELEASE command (/msg %S HELP RELEASE) to get the nick back sooner. @@ -2829,8 +2838,8 @@ Instructs %S to remove any hold on your nickname caused by automatic kill protection or use of the RECOVER - command. By default, such holds last for one minute; - this command gets rid of them sooner. + command. By default, such holds last for %s; this + command gets rid of them sooner. In order to use the RELEASE command for a nickname, you must supply the correct password for the nickname, or you must @@ -2953,9 +2962,9 @@ NICK_OPER_HELP_COMMANDS_LISTLINKS LISTLINKS List nicknames linked to a given nickname NICK_OPER_HELP_COMMANDS_SETAUTH - SETAUTH Set a new authorization code for a nickname - GETAUTH Show the authorization code for a nickname - CLEARAUTH Clear the authorization code for a nickname + SETAUTH Set a new authentication code for a nickname + GETAUTH Show the authentication code for a nickname + CLEARAUTH Clear the authentication code for a nickname NICK_OPER_HELP_COMMANDS_END Services admins can also use the following commands on any @@ -3086,14 +3095,14 @@ only be displayed to Services admins. For Services admins, nicks with the NOEXPIRE option set will have a ! prepended to the nickname, those that are suspended will be prepended - by a *, and those that have not yet been authorized (with + by a *, and those that have not yet been authenticated (with the AUTH command) will be prepended by a ?. If the FORBIDDEN, SUSPENDED, NOEXPIRE, or NOAUTH options are given, only nicks which, respectively, are forbidden, suspended, have the NOEXPIRE option set, or have not yet - been authorized will be displayed. The options can be used - in any order and in any combination. These options are + been authenticated will be displayed. The options can be + used in any order and in any combination. These options are limited to Services admins. Examples: @@ -3150,21 +3159,19 @@ NICK_OPER_HELP_SUSPEND Syntax: SUSPEND [+expiry] nickname reason - Prevents a nickname, and all those nicknames with the - same root nickname, from being used or identified for - by anyone. A nickname can be unsuspended with the - UNSUSPEND command. - - Unlike a forbidden nickname, a suspended one does not - lose its information and will expire! + Prevents a nickname, and all nicknames linked to it, from + being used or identified for by anyone. The nickname can be + unsuspended with the UNSUSPEND command, which will allow it + to be used as before. The expiry parameter is interpreted + in the same manner as for the %s AKILL command. Limited to Services admins. NICK_OPER_HELP_UNSUSPEND Syntax: UNSUSPEND nickname - Allows people to use and identify for a previously - suspended nickname. + Allows people to use and identify for a previously suspended + nickname. Limited to Services admins. @@ -3176,7 +3183,7 @@ NICK_OPER_HELP_SETAUTH Syntax: SETAUTH nickname - Sets a new authorization code for the given nickname. The + Sets a new authentication code for the given nickname. The nickname's owner will have to use the AUTH command for the nickname before being allowed to identify again. If the nickname is currently in use, a notice will be sent to the @@ -3188,7 +3195,7 @@ NICK_OPER_HELP_GETAUTH Syntax: GETAUTH nickname - Retrieves the authorization code associated with nickname, + Retrieves the authentication code associated with nickname, if one exists. Limited to Services admins. @@ -3196,7 +3203,7 @@ NICK_OPER_HELP_CLEARAUTH Syntax: CLEARAUTH nickname - Clears any authorization code associated with nickname, + Clears any authentication code associated with nickname, allowing the nickname to be used normally. Limited to Services admins. @@ -3367,7 +3374,7 @@ SECURE Activate %S security features SECUREOPS Stricter control of chanop status LEAVEOPS Do not de-op users on channel entry - OPNOTICE Send a notice when OP/DEOP commands are used + OPNOTICE Send a notice when OP/VOICE commands are used ENFORCE Enforce auto-op, auto-voice status Type /msg %S HELP option for more information on a @@ -3505,13 +3512,15 @@ channel. When SECURE is set, only users who have registered their nicknames with %s and IDENTIFY'd with their password will be given privileges on the channel as - controlled by the access list. + controlled by the access list. If the RESTRICTED option is + also set, users will not be able to join the channel until + they identify to %s. CHAN_HELP_SET_SECUREOPS Syntax: SET channel SECUREOPS {ON | OFF} Enables or disables the secure ops option for a channel. - When secure ops is set, users who are not on the userlist + When secure ops is set, users who are not on the access list will not be allowed chanop status. CHAN_HELP_SET_LEAVEOPS @@ -3521,7 +3530,7 @@ When leave ops is set, %S will leave server ops (+o for the first person in the channel) in place even if the user would not normally get auto-opped. The SECUREOPS option - and AUTODEOP access level will still be enforced. + will still be enforced. Notice: This can allow users to "steal" ops during a netsplit. @@ -4054,11 +4063,10 @@ Syntax: SUSPEND [+expiry] channel reason Prevents a channel from being used or identified for - by anyone. A channel can be unsuspended with the - UNSUSPEND command. - - Unlike a forbidden channel, a suspended one does not - lose its information and will expire! + by anyone. The channel can be unsuspended with the + UNSUSPEND command, which will allow it to be used as before. + The expiry parameter is interpreted in the same manner as + for the %s AKILL command. Limited to Services admins. @@ -4091,12 +4099,16 @@ Notice: Memos will expire (automatically be deleted) %s after being sent, unless marked non-expiring with the SAVE command. -MEMO_HELP_END +MEMO_HELP_END_LEVELS (*) By default, any user with at least %s access on a channel can read that channel's memos. This can be changed with the %s LEVELS command. +MEMO_HELP_END_XOP + (*) Any users on the SOP list of a channel can read that + channel's memos. + MEMO_HELP_COMMANDS The following commands can be used with %S: @@ -4166,17 +4178,11 @@ Deletes the specified memo or memos. You can supply multiple memo numbers or ranges of numbers instead of a - single number, as in the second example below. - - If ALL is given, deletes all of your memos. - - Examples: + single number, as with the LIST command; you can also give + the word ALL, which causes all of your memos to be + deleted. - DEL 1 - Deletes your first memo. - - DEL 2-5,7-9 - Deletes memos numbered 2 through 5 and 7 through 9. + Warning: Once a memo is deleted, it cannot be recovered! MEMO_HELP_SET Syntax: SET option parameters @@ -4511,7 +4517,7 @@ command. The expiry time precedes the user@host mask, and is specified as an integer followed by one of d (days), h (hours), or m (minutes). Combinations (such as 1h30m) - are not permitted. If a unit specifier is not included, + are also permitted. If a unit specifier is not included, the default is days (so +30 by itself means 30 days). To add an AKILL which does not expire, use +0. If the usermask to be added starts with a +, an expiry time must @@ -4544,7 +4550,7 @@ masks, and still want specific hosts or users that match those masks to be able to connect. - The ADD, DEL, LIST, VIEW, and COUNT subcommands function the + The ADD, DEL, LIST, VIEW, and COUNT subcommands function the same way as the subcommands for the AKILL command; see the AKILL help for more information. @@ -4607,11 +4613,28 @@ SQLINE VIEW [mask] [NOEXPIRE] SQLINE COUNT +OPER_HELP_SQLINE_KILL Allows Services operators to manipulate the SQLINE list. If a user whose nickname matches an SQLINE mask attempts to - connect, Services will issue a KILL for that user and, on - supported server types, will instruct all servers to add a - ban (server Q-line) for the mask which the user matched. + connect, or a user attempts to change to a nickname matching + an SQLINE mask, Services will issue a KILL for that user + and, on supported server types, will instruct all servers to + add a ban (server Q-line) for the mask which the user + matched. +OPER_HELP_SQLINE_NOKILL + Allows Services operators to manipulate the SQLINE list. If + a user whose nickname matches an SQLINE mask attempts to + connect, or a user attempts to change to a nickname matching + an SQLINE mask, Services will change that user's nickname to + a "guest" nickname, and will send the user a message that + will normally cause the user's IRC client to request a new + nickname. On supported server types, Services will also + instruct all servers to add a ban (server Q-line) for the + mask which the user matched. +OPER_HELP_SQLINE_IGNOREOPERS + + Note that IRC operators will not be affected by SQLINE masks. +OPER_HELP_SQLINE_END The ADD, DEL, LIST, and VIEW, and COUNT subcommands can be used to add, delete, view (short or long version), or count @@ -4676,11 +4699,13 @@ mask to be added starts with a +, an expiry time must be given, even if it is the same as the default. - EXCEPTION DEL removes the given mask from the exception list. + EXCEPTION DEL removes the given mask or numbered entry or + entries from the exception list (entry numbers can be found + with VIEW or LIST). EXCEPTION MOVE moves exception num to newnum. If newnum - is already used by another exception, its number will be shifted - upward to make room. + is already used by another exception, its number will be + incremented to make room. EXCEPTION LIST and EXCEPTION VIEW show all current exceptions; if the optional mask is given, the list is @@ -4788,7 +4813,7 @@ Tells Services to jupiter a server--that is, to create a fake "server" connected to Services which prevents the real server of that name from connecting. The jupe - may be removed using a standard SQUIT. If a reason is + may be removed using a standard /SQUIT. If a reason is given, it is placed in the server information field; otherwise, the server information field will contain the text "Jupitered by ", showing the nickname of the @@ -4812,10 +4837,13 @@ Limited to the Services super-user. OPER_HELP_UPDATE - Syntax: UPDATE + Syntax: UPDATE [FORCE] Causes Services to update all database files as soon as you - send the command. + send the command. If the FORCE option is given, Services + will attempt to unlock the databases before performing the + update; this can be used to fix "databases are locked" + errors when updating the databases. Limited to Services admins. @@ -4961,4 +4989,4 @@ # version of the master (English) language file was used to create a # translated file. -# CVS: $Revision: 2.189 $ +# CVS: $Revision: 2.208 $ diff -uNr ircservices-5.0.19/lang/es.l ircservices-5.0.20/lang/es.l --- ircservices-5.0.19/lang/es.l 2003-01-22 23:45:12 +0900 +++ ircservices-5.0.20/lang/es.l 2003-06-09 15:43:59 +0900 @@ -240,7 +240,7 @@ Identificación con su contraseña se requiere para usar ese comando. Vuelva a intentar después de escribir /msg %s IDENTIFY Contraseña. NICK_PLEASE_AUTH - Su apodo no está aún autorizado. Favor de autorizar su apodo usando el código de autorización incluido en el correo electrónico enviado a: %s + Su apodo no está aún autenticado. Favor de autenticar su apodo usando el código de autenticación incluido en el correo electrónico enviado a: %s NICK_X_NOT_ON_CHAN_X El apodo %s no está actualmente en el canal %s. @@ -314,7 +314,7 @@ NICK_CANNOT_BE_REGISTERED El apodo %s no puede ser registrado. NICK_REGISTER_EMAIL_UNAUTHED - La dirección de correo electrónico (E-mail) que usted proveyó no ha sido aún autorizada. Favor de utilizar el comando AUTH para autorizarla antes de registrar nuevos apodos con dicha dirección. + La dirección de correo electrónico (E-mail) que usted proevió no ha sido aún autenticada. Por favor use el comando AUTH para autenticar la dirección antes de registrar un nuevo apodo con ella. NICK_REGISTER_TOO_MANY_NICKS Usted tiene demasiados apodos registrados (%d, máximo de %d). No puede registrarse más a menos que cancele algunos de sus apodos actuales. NICK_REGISTERED @@ -388,7 +388,7 @@ # SET EMAIL responses NICK_SET_EMAIL_UNAUTHED - La direccción de correo electrónico (E-mail) que usted proveyó no ha sido aún autorizada. Favor de utilizar el comando AUTH para autorizar la dirección primeramente. + La dirección de correo electrónico (E-mail) que usted proevió no ha sido aún autenticada. Por favor use el comando AUTH para autenticar la dirección primeramente. NICK_SET_EMAIL_TOO_MANY_NICKS %s ya tiene %d apodos registrados (máximo de %d). El cambio de correo-electrónico falló NICK_SET_EMAIL_CHANGED @@ -733,27 +733,27 @@ # General-purpose messages NICK_AUTH_SENT - Un código de autorización para su apodo ha sido enviado a %s. + Un código de autenticación para su apodo ha sido enviado a %s. NICK_AUTH_FOR_REGISTER - Cuando reciba este mensaje, escriba /msg %s AUTH Código (reemplace Código por el código de autorización incluido en el mensaje) para completar la registración de su apodo. + Cuando reciba este mensaje, escriba /msg %s AUTH Código (reemplace Código por el código de autenticación incluido en el mensaje) para completar la registración de su apodo. NICK_AUTH_FOR_SET_EMAIL - Cuando reciba este mensaje, escriba /msg %s AUTH Código (reemplace Código por el código de autorización incluido en el mensaje) para completar el cambio a su dirección E-mail (Correo-electrónico) + Cuando reciba este mensaje, escriba /msg %s AUTH Código (reemplace Código por el código de autenticación incluido en el mensaje) para completar el cambio a su dirección E-mail (Correo-electrónico) Favor note que usted no podrá continuar usando su apodo a menos que complete el cambio. NICK_AUTH_NOT_NEEDED - No existe nada que necesite autorización en este momento. + No existe nada que necesite autenticación en este momento. NICK_AUTH_NO_AUTHCODE - El apodo %s no tiene código de autorización. + El apodo %s no tiene código de autenticación. NICK_AUTH_HAS_AUTHCODE - El apodo %s ya tiene un código de autorización. + El apodo %s ya tiene un código de autenticación. PASSWORD_WARNING_FOR_AUTH - Advertencia: Despues de otro código de autorización incorrecto usted será desconectado. + Advertensia: Despues de otro código de autenticación incorrecto usted será desconectado. # Mail text. The last "%s" (before the user@host) in the body text is # replaced by one of the NICK_AUTH_MAIL_TEXT_* messages. NICK_AUTH_MAIL_SUBJECT - Código de autorización para %s + Código de autenticación para %s NICK_AUTH_MAIL_BODY - El código de autorización para su apodo (%s) es: %09d + El código de autenticación para su apodo (%s) es: %09d Favor de ingresar este código a %s con el comando: /msg %s AUTH %09d @@ -766,7 +766,7 @@ NICK_AUTH_MAIL_TEXT_SENDAUTH un comando SENDAUTH de NICK_AUTH_MAIL_BODY_SETAUTH - El código de autorización para su apodo (%s) es: %09d + El código de autenticación para su apodo (%s) es: %09d Favor de ingresar este código a %s con el comando: /msg %s AUTH %09d @@ -774,15 +774,15 @@ NICK_AUTH_SYNTAX AUTH Código NICK_AUTH_DISABLED - Lo sentimos, La autorización de apodos está temporaralmente deshabilatada. + Lo sentimos, La autenticación de apodos está temporaralmente deshabilatada. NICK_AUTH_FAILED - Ese código de autorización es incorrecto. + Ese código de autenticación es incorrecto. NICK_AUTH_SUCCEEDED_REGISTER - Autorización exitosa; la registración de su apodo ha sido completada. + Autenticación exitosa; la registración de su apodo ha sido completada. NICK_AUTH_SUCCEEDED_SET_EMAIL - Autorización exitosa; su cambio de E-mail (Correo-Electrónico) ha sido completado. + Autenticación exitosa; su cambio de E-mail (Correo-Electrónico) ha sido completado. NICK_AUTH_SUCCEEDED_SETAUTH - Autorización exitosa; puedes continuar usando tu apodo ahóra. + Autenticación exitosa; puedes continuar usando tu apodo ahóra. # SENDAUTH responses NICK_SENDAUTH_SYNTAX @@ -790,7 +790,7 @@ NICK_SENDAUTH_TOO_SOON Favor de esperar %s antes de usar el comando SENDAUTH nuevamente. NICK_SENDAUTH_FAILED - Lo sentimos, no fue posible enviar el código de autorización. + Lo sentimos, no fue posible enviar el código de autenticación. # SETAUTH responses NICK_SETAUTH_SYNTAX @@ -798,26 +798,26 @@ NICK_SETAUTH_NO_EMAIL El apodo %s no tiene un E-mail (Correo-Electrónico) establecido. NICK_SETAUTH_AUTHCODE_SET - Un nuevo código de autorización (%09d) ha sido fijado para el apodo %s. + Un nuevo código de autenticación (%09d) ha sido fijado para el apodo %s. NICK_SETAUTH_SEND_FAILED Advertencia: no fue posible enviar correo a %s. NICK_SETAUTH_SEND_TEMPFAIL Advertencia: no fue posible enviar correo a %s (insuficientes recursos). NICK_SETAUTH_USER_NOTICE - Usted debe autorizar su apodo antes de continuar usandolo. Un código de autorización ha sido enviado a su E-mail (Correo-Electrónico): %s - Escriba /msg %s HELP AUTH para más información. + Usted debe autorizar su apodo antes de continuar usandolo. Un código de autenticación ha sido enviado a su E-mail (Correo-Electrónico): %s + Escriba: /msg %s HELP AUTH para más información. # GETAUTH responses NICK_GETAUTH_SYNTAX GETAUTH Apodo NICK_GETAUTH_AUTHCODE_IS - El código de autorización para su apodo %s es: %09d + El código de autenticación para el apodo %s es: %09d # CLEARAUTH responses NICK_CLEARAUTH_SYNTAX CLEARAUTH Apodo NICK_CLEARAUTH_CLEARED - El código de autorización para su apodo %s ha sido removido. + El código de autenticación para el apodo %s ha sido removido. ################ sendpass module messages/responses @@ -838,7 +838,7 @@ NICK_SENDPASS_NO_EMAIL El apodo %s no tiene una dirección de correo electrónico (E-mail) establecida. NICK_SENDPASS_NOT_AUTHED - La dirección de correo electrónico (E-mail) para el apodo %s no ha sido aún autorizada. + La dirección de correo electrónico (E-mail) para el apodo %s no ha sido aún autenticada. # parameter is "NNN days/hours/minutes" NICK_SENDPASS_TOO_SOON Favor de esperar %s antes de usar el comando SENDPASS nuevamente. @@ -2088,8 +2088,16 @@ RAW Texto # UPDATE responses +OPER_UPDATE_SYNTAX + UPDATE [FORCE] +OPER_UPDATE_FORCE_FAILED + Fue imposible abrir las bases de datos. OPER_UPDATING - Actualizando las bases de datos. + Actualizando las bases de datos... +OPER_UPDATE_COMPLETE + La actualización de la base de datos ha completado. +OPER_UPDATE_FAILED + La actualización de la base de datos falló. # REHASH responses OPER_REHASHING @@ -2400,8 +2408,8 @@ REGISTER Registre un apodo NICK_HELP_COMMANDS_AUTH - AUTH Autorize el regístro de un apodo - SENDAUTH Envie a sí mismo el código de autorización de un apodo + AUTH Autentica el regístro de un apodo + SENDAUTH Envie a sí mismo el código de autenticación de un apodo NICK_HELP_COMMANDS_IDENTIFY IDENTIFY Identifiquese con su contraseña NICK_HELP_COMMANDS_SENDPASS @@ -2458,7 +2466,7 @@ Usted debe incluír una dirección válida de correo electrónico cuando registre su apodo; %S enviará un mensaje con un código - de autorización a esta dirección, el cual usted deberá usar con + de autenticación a esta dirección, el cual usted deberá usar con el comando AUTH para completar su registración. Usted puede prevenir que su correo electrónico (E-mail) sea mostrado a otros usuarios con el comando SET HIDE (Escriba /msg %S HELP SET HIDE @@ -2478,22 +2486,22 @@ NICK_HELP_AUTH Sintaxis: AUTH Código - Autoriza la registración o cambio de correo para un apodo. + Autentica la registración o cambio de correo para un apodo. Para asegurarse que su correo electrónico es correcto, %S - enviará un mensaje que contendrá un código de autorización + enviará un mensaje que contendrá un código de autenticación a la dirección electrónica dada cuando registre su apodo o cambie su dirección electrónica con el comando SET EMAIL. Este comando le permite a usted confirmar que ha recibido el mensaje y continuar usando su apodo normalmente. Reemplace - Código en el comando con el código de autorización de nueve + Código en el comando con el código de autenticación de nueve dígitos especificado en el mensaje electrónico (E-mail). - + NICK_HELP_SENDAUTH Sintaxis: SENDAUTH - Le envia a usted una copia del código de autorización para + Le envia a usted una copia del código de autenticación para su apodo despues de un REGISTER o SET EMAIL. Si por accidente - usted borra o pierde el mensaje con el código de autorización, + usted borra o pierde el mensaje con el código de autenticación, usted puede utilizar este comando para recibir una copia extra. Para prevenir abuso, este comando solo puede ser usado una vez @@ -2814,15 +2822,15 @@ tomado; esto es lo mismo que %S hace automáticamente si alguien intenta utilizar un apodo protegido con kill. - Cuando usted envía este comando, %S conectará en línea a un - usuario falso con el mismo apodo del usuario del cual usted - desea recuperar su apodo. Esto causará que los servidores - de IRC desconecten al otro usuario. Este usuario falso - permanecerá en línea por un minuto para asegurar que el otro - usuario no se reconecte inmediatamente; después de ese minuto, - usted puede tomar su apodo. Alternativamente, use el comando - RELEASE (/msg %S HELP RELEASE) para obtener su apodo - más rápidamente. + Cuando usted envía este comando, %S conectará en línea + a un usuario falso con el mismo apodo del usuario del cual + usted desea recuperar su apodo. Esto causará que los + servidores de IRC desconecten al otro usuario. Este usuario + falso permanecerá en línea por %s para asegurar que + el otro usuario no se reconecte inmediatamente; después de + ese tiempo, usted puede reclamar su apodo. Alternativamente, + use el comando RELEASE (/msg %S HELP RELEASE) para obtener + su apodo más rápidamente. Para poder usar el comando RECOVER para un apodo, usted debe suplir la contraseña correcta para ese apodo, o usted debe haberse @@ -2831,10 +2839,10 @@ NICK_HELP_RELEASE Sintaxis: RELEASE Apodo [Contraseña] - Instruye a %S que elimine cualquier retención en su apodo - causada por un kill automático de protección o por el uso de - el comando RECOVER. Normalmente, la espera dura un minuto; - este comando lo libera más rápidamente. + Instruye a %S que elimine cualquier retención en su + apodo causada por un kill automático de protección o por el + uso de el comando RECOVER Normalmente, la espera dura + %s; este comando lo libera más rápidamente. Para poder usar el comando RELEASE para un apodo, usted debe suplir la contraseña correcta para ese apodo, o usted debe haberse @@ -2955,9 +2963,9 @@ NICK_OPER_HELP_COMMANDS_LISTLINKS LISTLINKS Lista los apodos ligados a un apodo (ligas) NICK_OPER_HELP_COMMANDS_SETAUTH - SETAUTH Fija un nuevo código de autorización para un apodo - GETAUTH Muestra el código de autorización para un apodo - CLEARAUTH Cancela el código de autorización para un apodo + SETAUTH Fija un nuevo código de autenticación para un apodo + GETAUTH Muestra el código de autenticación para un apodo + CLEARAUTH Cancela el código de autenticación para un apodo NICK_OPER_HELP_COMMANDS_END Administradores de Servicios también pueden usar los siguientes @@ -3085,19 +3093,19 @@ Sintaxis: LIST Patrón [FORBIDDEN] [NOEXPIRE] [SUSPENDED] [NOAUTH] Alista todos los apodos registrados para los cuales o bien el apodo - mismo o la última dirección vista (en el formato Usuario@Proveedor-web) + mismo o la última dirección vista (en el formato Usuario@Proveedor-web) concuerdan con el patrón dado. Apodos con la opción PRIVATE activada serán solamente mostrados a los Administradores de los servicios. Ellos, verán que los apodos con la opción NOEXPIRE activada tendrán un signo ! antes del apodo, los que están suspendidos estarán prefijados con el signo * - antes del apodo, y aquellos que aún no han sido autorizados (con el comando + antes del apodo, y aquellos que aún no han sido autenticados (con el comando AUTH) tendrán un signo ? antes del apodo. Si las opciones FORBIDDEN, SUSPENDED o NOEXPIRE están activadas, entonces solamente los apodos que, respectivamente, están prohibidos, suspendidos, o que tienen la opción NOEXPIRE activada será mostrados. Las opciones pueden ser utilizadas en cualquier orden y en cualquier combinación. Estas - opciones están limitadas a los Administradores de Servicios. + opciones están limitadas a los Administradores De Servicios. Ejemplos: @@ -3154,15 +3162,14 @@ NICK_OPER_HELP_SUSPEND Sintaxis: SUSPEND [+Expiración] Apodo Razón - Previene que un apodo, y todos aquellos apodos con el - mismo apodo raíz, sean utilizados o que alguien se identifique - por ellos. Puede lograrse que un apodo deje de estar suspendido - por medio del comando UNSUSPEND. - - A diferencia de un apodo prohibido (FORBIDDEN), uno suspendido - no pierde su información pero si expirará! + Previene que un apodo, y todos aquellos apodos con el mismo + apodo raíz, sean utilizados o que alguien se identifique por + ellos. Puede lograrse que un apodo deje de estar suspendido + por medio del comando UNSUSPEND, lo cual permitirá que sea + usado como antes. El parámetro Expiración es interpretado + en la misma manera que para el comando %s AKILL. - Limitado a los Administradores de servicios. + Limitado a los Administradores De Servicios. NICK_OPER_HELP_UNSUSPEND Sintaxis: UNSUSPEND Apodo @@ -3180,9 +3187,9 @@ NICK_OPER_HELP_SETAUTH Sintaxis: SETAUTH Apodo - Establece un nuevo código de autorización para el apodo dado. El dueño + Establece un nuevo código de autenticación para el apodo dado. El dueño del apodo tendrá que utilizar el comando AUTH para el apodo antes de - que le sea permitido identificarse nuevamente. Si el apodo está en uso + que le sea permitido identificarse nuevamente. Si el apodo está en uso actualmente, una notificación (notice) le será enviada al usuario del apodo y esta persona no será ya más tratada como si se hubiese identificado previamente por el apodo. @@ -3192,18 +3199,18 @@ NICK_OPER_HELP_GETAUTH Sintaxis: GETAUTH Apodo - Recobra el código de autorización asociado con el Apodo, + Recobra el código de autenticación asociado con el nickname, si es que realmente existe un código para dicho apodo. - Limitado a los Administradores de servicios. + Limitado a los Administradores De Servicios. NICK_OPER_HELP_CLEARAUTH Sintaxis: CLEARAUTH Apodo - Remueve cualquier código de autorización asociado con el Apodo, + Remueve cualquier código de autenticación asociado con el Apodo, permitiendo que el apodo pueda ser usado normalmente. - Limitado a los Administradores de servicios. + Limitado a los Administradores De Servicios. ########################################################################### @@ -3373,7 +3380,7 @@ SECURE Activa las opciones de seguridad de %S SECUREOPS Control más estricto del estatus de operador LEAVEOPS No remover OPs a los usuarios al entrar al canal - OPNOTICE Notifíca cuando los comandos OP/DEOP son usados + OPNOTICE Notifíca cuando los comandos OP/VOICE son usados ENFORCE Impone estatus auto-op y auto-voice de immediato Escriba /msg %S HELP Opción para más información sobre una @@ -3508,28 +3515,31 @@ CHAN_HELP_SET_SECURE Sintaxis: SET Canal SECURE {ON | OFF} - Habilita o deshabilita la seguridad de %S para el - canal. Cuando SECURE está ACTIVO, SOLO los usuarios que - tienen registrados sus apodos con %s y que se han - IDENTIFICADO con sus contraseñas tendrán privilegios en - el canal si es que figuran en la lista de ACCESS (acceso). + Habilita o deshabilita la las opciones de seguridad de + %S en un canal. Cuando SECURE está activo (SET ON), + SOLO los usuarios que tienen registrados sus apodos con + %s y que se han IDENTIFICADO con sus contraseñas + tendrán privilegios en el canal segun lo establecido por la + lita de acceso. Si la opción RESTRICTED está también fijada + (SET ON), será negado a los usuarios el ingreso al canal + hasta que se hayan IDENTIFICADO a %s. CHAN_HELP_SET_SECUREOPS Sintaxis: SET Canal SECUREOPS {ON | OFF} - Habilita o deshabilita la opción de OPs Seguros para - un canal. Cuando SECUREOPS está activada (ON), - usuarios que NO estén en la lista de usuarios del canal NO - podrán obtener estatus de operadores. + Habilita o deshabilita la opción de OPs Seguros para un + canal. Cuando OPs Seguros está activada (ON), usuarios que + NO estén en la lista de acceso del canal NO podrán obtener + estatus de operadores. CHAN_HELP_SET_LEAVEOPS Sintaxis: SET Canal LEAVEOPS {ON | OFF} - Habilita o deshabilita la opción Dejar OPs para un canal. - Cuando LEAVEOPS es activada (ON), %S permite al servidor - dar OPs (+o a la primera persona que entre al canal) inclusíve - cuando la persona normalmente no obtiene Auto-OPs. Opciones - SECUREOPS y de nivel de acceso de AUTODEOP serán aún impuestas. + Habilita o deshabilita la opción leave ops para un canal. + Cuando leave ops está fijado, %S dejará OPs del + servidor (+o para la primera persona en el canal) en efecto + incluso si el usuario normalmente no optendria OPs + automáticamente. La opción SECUREOPS será aún enforzada. Cuidado!: Esto puede permitir que personas no autorizadas "roben" el estatus de Operador durante una ruptura de la red. @@ -4063,12 +4073,11 @@ CHAN_OPER_HELP_SUSPEND Sintaxis: SUSPEND [+Expiración] Canal Razón - Previene el que un canal sea utilizado o el que alguien se - identifique por él. Esta acción puede ser revertida por medio - de usar el comando UNSUSPEND. - - A diferencia de un canal prohibido (forbidden), uno suspendido no - pierde su información y SI expirará! + Previene el que un canal sea utilizado o que alguien se + identifique por él. Se puede lograr que el canal se utilice + nuevamente por medio del comando UNSUSPEND, lo cual + permitirá su uso como antes. El parámetro Expiración es + interpretado en la misma manera que el comando %s AKILL. Limitado a Administradores de Servicios. @@ -4102,12 +4111,16 @@ Nota: Los mensajes expirarán ( automáticamente borrados) %s despues de haber sido enviados, a menos que se hayan marcado como para no expirar con el comando SAVE. -MEMO_HELP_END +MEMO_HELP_END_LEVELS (*) Originalmente, cualquier usuario con al menos nivel %s de acceso en un canal puede leer los mensajes del canal. Esto puede ser cambiado con el comando %s LEVELS. +MEMO_HELP_END_XOP + (*) Cualquier usuario en la lista de SOPs de un canal puede + leer los mensajes para dicho canal. + MEMO_HELP_COMMANDS Los siguientes comandos pueden ser utilizados con %S: @@ -4175,19 +4188,14 @@ MEMO_HELP_DEL Sintaxis: DEL [Canal] {Núm | List | ALL} - Borra los mensajes o mensaje especificados. Usted puede suplir - multiples números o una amalgama de números en lugar de un - simple número, como en el segundo ejemplo abajo. + Borra los mensajes o mensaje especificados. Usted puede + suplir multiples números o un rango de números en lugar de + un simple número, tal como con el comando LIST; también se + pude especificar el parámetro ALL, lo cual causará que + todos sus mensajes sean borrados. - Si ALL se especifica, borra todos tus mensajes. - - Ejemplos: - - DEL 1 - Borra tu primer mensaje. - - DEL 2-5,7-9 - Borra los mensajes numberados del 2 al 5 y del 7 al 9. + Advertensia: Una vez que un mensaje ha sido borrado, no se + puede recuperar! MEMO_HELP_SET Sintaxis: SET Opción Parámetros @@ -4495,10 +4503,10 @@ OPER_HELP_AKILL Sintaxis: AKILL ADD [+Expiración] Máscara Razón - AKILL DEL Máscara - AKILL LIST [Máscara] [NOEXPIRE] - AKILL VIEW [Máscara] [NOEXPIRE] - AKILL COUNT + AKILL DEL Máscara + AKILL LIST [Máscara] [NOEXPIRE] + AKILL VIEW [Máscara] [NOEXPIRE] + AKILL COUNT Permite a los Operadores de servicios manipular la lista AKILL. Si un usuario que figura en dicha lista, intenta conectarse, los @@ -4519,16 +4527,15 @@ Opcionalmente, un tiempo de expiración también puede ser suministrado con el comando AKILL ADD. El tiempo de - expiración PRECEDE a la máscara usuario@host y deberá ser - especificado como un entero (esto es, sin decimales) seguido - de: d para especificar días, h (horas), o m (minutos). - Combinaciones (como 1h30m) no están permitidas. Si un - especificador de unidades no es incluido, originalmente se - asumen DIAS (entonces, poner +30 sin nada, significa 30 - días). Para agregar un AKILL que NO expira, utilice +0. Si - la máscara de usuario comienza con +, un período de - expiración deberá ser indicado, aún si es el mismo período - que el asignado originalmente. + expiración PRECEDE a la máscara usuario@Proveedor y deberá + ser especificado como un entero seguido o bien por d (días), + h (horas), o por m (minutos). Combinaciones (como 1h30m) son + también permitidas. Si un especificador de unidades no es + incluido, originalmente se asumen DIAS (entonces, poner +30 + sin nada, significa 30 días). Para agregar un AKILL que NO + expira, utilice +0. Si la máscara de usuario comienza con + +, un período de expiración deberá ser indicado, aún si es + el mismo período que el asignado originalmente. La Razón debe describir el porqué se agregó la entrada; dependiendo de como han sido configurados los servicios, la @@ -4557,7 +4564,7 @@ muy generales, y aún desea que ciertos dominios especificos o usuarios que conduerdan con esas máscaras le sea posible conectarse a la red. - Los subcomandos ADD, DEL, LIST, VIEW, y COUNT funcionan en la misma manera + Los subcomandos ADD, DEL, LIST, VIEW, y COUNT funcionan en la misma manera en que lo hacen los subcomandos con respecto al comando AKILL; vea la ayuda para AKILL para obtener más información. @@ -4620,11 +4627,32 @@ SQLINE VIEW [Máscara] [NOEXPIRE] SQLINE COUNT - Permite a los Operadores de Servicios el manipular la lista SQLINE. Si un usuario - cuyo apodo concuerda con una máscara SQLINE trata de conectarse, los servicios - impondrán un KILL para aquel usuario y, en servidores en los que esto este disponible, - instruirán a todos los servidores que agregen un bloqueo (G-line en el servidor) - para la máscara con la que el usuario concuerda. +OPER_HELP_SQLINE_KILL + Permite a los Operadores de Servicios manipular la lista + SQLINE. Si un usuario cuyo apodo concuerda con una máscara + SQLINE trata de conectarse, o si un usuario trata de cambiar + su apodo a uno que concuerda con una máscara SQLINE, Los + Servicios impondrán un KILL para dicho usuario y, en los + tipos de servidores donde esto este disponible, instruirán a + todos los servidores que agregen un bloqueo (G-line en el + servidor) para la máscara con la que el usuario concuerda. +OPER_HELP_SQLINE_NOKILL + Permite a los Operadores de Servicios manipular la lista + SQLINE. Si un usuario cuyo apodo concuerda con una máscara + SQLINE trata de conectarse, o si un usuario trata de cambiar + su apodo a uno que concuerda con una máscara SQLINE, Los + Servicios cambiarán el apodo de dicho usuario a un apodo + "guest" (Huésped), y enviará un mensaje al usuario que + normalmente causará que el programa cliente de IRC del + usuario pida un nuevo apodo. En tipos de servidores donde + esté disponible, Los Servicios también instruirán a todos + los servidores que agregen un bloqueo (Q-line en el + servidor) para la máscara con la que el usuario concuerda. +OPER_HELP_SQLINE_IGNOREOPERS + + Note que los Operadores de IRC no serán afectados por + máscaras SQLINE. +OPER_HELP_SQLINE_END Los subcomandos ADD, DEL, LIST, y VIEW, asi como COUNT pueden ser utilizados para agregar, borrar, ver (versión corta o larga), o cuenta el número @@ -4688,11 +4716,13 @@ entonces un tiempo de expiración debe ser específicado, incluso si es el mismo que lo fijado como lo normal en la configuración. - EXCEPTION DEL remueve la máscara dada de la lista de excepción. + EXCEPTION DEL remueve la máscara dada o entrada enumerada o entradas + del la lista de excepción (números de entrada pueden ser localizados con + los parámetros VIEW o LIST). EXCEPTION MOVE mueve el Número de excepción al NuevoNúmero. Si - NuevoNúmero está ya siendo usado por otra excepción, su número será - cambiado un un número mayor para hacer espacio. + NuevoNúmero está ya siendo usado por otra excepción, entonces su + número será aumentado para hacer espacio. EXCEPTION LIST y EXCEPTION VIEW muestran cada excepción actual; si la máscara opcional es dada, la lista está limitada a aquellas @@ -4801,7 +4831,7 @@ Ordena a Servicios que ejecuten el comando jupiter en un servidor --eso es, crear un "servidor" falso conectado a los servicios que evita que el servidor real con ese nombre se conecte. Esta - opción puede ser removida usando un SQUIT estandar. Si se da + opción puede ser removida usando un /SQUIT estandar. Si se da una razón, esta es colocada en el area de información del servidor; de otra manera, el area de información sobre el servidor contendrá el texto "Jupitered by ", mostrando el apodo de la persona @@ -4822,12 +4852,16 @@ Limitado al Super-Usuario de Servicios. OPER_HELP_UPDATE - Sintaxis: UPDATE + Sintaxis: UPDATE [FORCE] Causa que los Servicios actualicen las bases de datos tan - pronto como usted envía el comando. + pronto como usted envía el comando. Si la opción FORCE es + dada, los servicios procurarán abrir (liberar) las bases de + datos antes de realizar la actualización; esto puede usarse + para corregir los errores "databases are locked" cuando se + actualizan las bases de datos. - Limitado a Administradores de Servicios. + Limitado a los Administradores De Servicios. OPER_HELP_QUIT Sintaxis: QUIT diff -uNr ircservices-5.0.19/lang/fr.l ircservices-5.0.20/lang/fr.l --- ircservices-5.0.19/lang/fr.l 2003-01-22 23:45:13 +0900 +++ ircservices-5.0.20/lang/fr.l 2003-06-03 15:20:20 +0900 @@ -2092,6 +2092,8 @@ RAW texte # UPDATE responses +OPER_UPDATE_SYNTAX + UPDATE [FORCE] OPER_UPDATING Mise à jour de la banque de données. @@ -2850,41 +2852,41 @@ Vous permet d'effacer l'URL (URL) ou le texte d'information (INFO) associé à votre surnom. -NICK_HELP_RECOVER - Syntaxe: RECOVER surnom [mot-de-passe] - - Vous permet de reprendre votre surnom si quelqu'un d'autre - l'a prit; ceci a le même effet que la protection "kill" - automatique de %S sur un surnom protégé. - - Lorsque vous donnez cette commande, %S emmênera un - faux usager en-ligne avec le même surnom que l'usager duquel - vous désirez reprendre le surnom, forçant ainsi le server - IRC à débrancher l'autre usager. Ce faux usager restera en - ligne pendant une minute pour s'assurer que l'autre usager - ne se reconnectera pas automatiquement; après une minute, - vous pourrez reprendre votre surnom. Vous pouvez aussi - utiliser la commande RELEASE (/msg %S HELP RELEASE) - pour reprendre le surnom plus rapidement. - - Dans le but d'utiliser la commande RECOVER pour un surnom, - vous devez fournir le bon mot de passe pour le surnom, ou - vous devez déjà être identifié sur un surnom lié au surnom - donné. - -NICK_HELP_RELEASE - Syntaxe: RELEASE surnom [mot-de-passe] - - Ordonne à %S de retirer toute suspension sur votre - surnom provoquée par une protection "kill" automatique ou - par l'utilisation de la commande RECOVER. Par défaut, - toutes ces suspensions durent une minute; cette commande - permet d'écourcir ce délais. - - Afin d'utiliser la commande RELEASE pour un surnom, vous - devez fournir le bon mot de passe pour ce surnom, ou vous - devez être déjà identifié à un surnom qui est lié au surnom - donné. +#NICK_HELP_RECOVER +# Syntaxe: RECOVER surnom [mot-de-passe] +# +# Vous permet de reprendre votre surnom si quelqu'un d'autre +# l'a prit; ceci a le même effet que la protection "kill" +# automatique de %S sur un surnom protégé. +# +# Lorsque vous donnez cette commande, %S emmênera un +# faux usager en-ligne avec le même surnom que l'usager duquel +# vous désirez reprendre le surnom, forçant ainsi le server +# IRC à débrancher l'autre usager. Ce faux usager restera en +# ligne pendant une minute pour s'assurer que l'autre usager +# ne se reconnectera pas automatiquement; après une minute, +# vous pourrez reprendre votre surnom. Vous pouvez aussi +# utiliser la commande RELEASE (/msg %S HELP RELEASE) +# pour reprendre le surnom plus rapidement. +# +# Dans le but d'utiliser la commande RECOVER pour un surnom, +# vous devez fournir le bon mot de passe pour le surnom, ou +# vous devez déjà être identifié sur un surnom lié au surnom +# donné. + +#NICK_HELP_RELEASE +# Syntaxe: RELEASE surnom [mot-de-passe] +# +# Ordonne à %S de retirer toute suspension sur votre +# surnom provoquée par une protection "kill" automatique ou +# par l'utilisation de la commande RECOVER. Par défaut, +# toutes ces suspensions durent une minute; cette commande +# permet d'écourcir ce délais. +# +# Afin d'utiliser la commande RELEASE pour un surnom, vous +# devez fournir le bon mot de passe pour ce surnom, ou vous +# devez être déjà identifié à un surnom qui est lié au surnom +# donné. NICK_HELP_GHOST Syntaxe: GHOST surnom [mot-de-passe] @@ -3228,18 +3230,18 @@ Limité à l'usage des Administrateurs des Services. -NICK_OPER_HELP_SUSPEND - Syntaxe: SUSPEND [+expiration] surnom raison - - Empêche un surnom, ainsi que tous les surnoms comprenant - ledit surnom à l'intérieur, d'être utilisés ou qu'on ne s'y - identifie. Un surnom peut être dé-suspendu avec la commande - UNSUSPEND. - - Contrairement à un surnom interdit, un surnom suspendu ne - perd pas son information et finira par expirer! - - Limité à l'usage des Administrateurs des Services. +#NICK_OPER_HELP_SUSPEND +# Syntaxe: SUSPEND [+expiration] surnom raison +# +# Empêche un surnom, ainsi que tous les surnoms comprenant +# ledit surnom à l'intérieur, d'être utilisés ou qu'on ne s'y +# identifie. Un surnom peut être dé-suspendu avec la commande +# UNSUSPEND. +# +# Contrairement à un surnom interdit, un surnom suspendu ne +# perd pas son information et finira par expirer! +# +# Limité à l'usage des Administrateurs des Services. NICK_OPER_HELP_UNSUSPEND Syntaxe: UNSUSPEND surnom @@ -3473,7 +3475,7 @@ LEAVEOPS Ne pas retirer les privilèges d'opérateur à l'entrée sur le canal OPNOTICE Expédier une notification lorsque les - commandes OP/DEOP sont utilisées + commandes OP/VOICE sont utilisées ENFORCE Régulation des status auto-op et auto-voice Tapez /msg %S HELP option pour plus d'information sur une @@ -3608,35 +3610,35 @@ normalement ne disposeraient pas des privilèges d'opérateur seront expulsés et bannis du canal. -CHAN_HELP_SET_SECURE - Syntaxe: SET canal SECURE {ON | OFF} - - Active ou désactive les dispositifs de sécurité de %S - pour un canal. Lorsque SECURE est sélectionné, seuls les - usagers qui ont enregistrés leurs surnoms avec %s et qui se - sont identifiés avec leur mot-de-passe pourront recevoir les - privilèges sur le canal tel que contrôlé par la liste - d'accès. - -CHAN_HELP_SET_SECUREOPS - Syntaxe: SET canal SECUREOPS {ON | OFF} - - Active ou désactive l'option secure ops pour un canal. - Lorsque secure ops est sélectionné, les usagers qui - n'apparaissent pas sur la liste d'opérateurs ne pourront pas - recevoir ce privilège. - -CHAN_HELP_SET_LEAVEOPS - Syntaxe: SET canal LEAVEOPS {ON | OFF} - - Active ou désactive l'option leave ops pour un canal. - Lorsque leave ops est sélectionné, %S laissera le - status d'opérateur (+o) à la première personne qui entrera - sur le canal, même si cet usager ne serait normalement pas - auto-opé. L'option SECUREOPS et le niveau d'accès AUTODEOP - seront renforcées. Remarque: Ceci permet à un usager de - "voler" les privilèges d'opérateur pendant une rupture de - réseau (netsplit). +#CHAN_HELP_SET_SECURE +# Syntaxe: SET canal SECURE {ON | OFF} +# +# Active ou désactive les dispositifs de sécurité de %S +# pour un canal. Lorsque SECURE est sélectionné, seuls les +# usagers qui ont enregistrés leurs surnoms avec %s et qui se +# sont identifiés avec leur mot-de-passe pourront recevoir les +# privilèges sur le canal tel que contrôlé par la liste +# d'accès. + +#CHAN_HELP_SET_SECUREOPS +# Syntaxe: SET canal SECUREOPS {ON | OFF} +# +# Active ou désactive l'option secure ops pour un canal. +# Lorsque secure ops est sélectionné, les usagers qui +# n'apparaissent pas sur la liste d'opérateurs ne pourront pas +# recevoir ce privilège. + +#CHAN_HELP_SET_LEAVEOPS +# Syntaxe: SET canal LEAVEOPS {ON | OFF} +# +# Active ou désactive l'option leave ops pour un canal. +# Lorsque leave ops est sélectionné, %S laissera le +# status d'opérateur (+o) à la première personne qui entrera +# sur le canal, même si cet usager ne serait normalement pas +# auto-opé. L'option SECUREOPS et le niveau d'accès AUTODEOP +# seront renforcées. Remarque: Ceci permet à un usager de +# "voler" les privilèges d'opérateur pendant une rupture de +# réseau (netsplit). CHAN_HELP_SET_OPNOTICE Syntaxe: SET canal OPNOTICE {ON | OFF} @@ -4213,17 +4215,17 @@ Limité à l'usage des Administrateurs des Services. -CHAN_OPER_HELP_SUSPEND - Syntaxe: SUSPEND [+expiration] canal raison - - Interdit l'utilisation et l'identification à un canal par - quiconque. Un canal suspendu peut être dé-suspendu avec la - commande UNSUSPEND. - - Contrairement à un canal interdit, un canal suspendu ne perd - pas ses information et fini par expirer! - - Limité à l'usage des Administrateurs des Services. +#CHAN_OPER_HELP_SUSPEND +# Syntaxe: SUSPEND [+expiration] canal raison +# +# Interdit l'utilisation et l'identification à un canal par +# quiconque. Un canal suspendu peut être dé-suspendu avec la +# commande UNSUSPEND. +# +# Contrairement à un canal interdit, un canal suspendu ne perd +# pas ses information et fini par expirer! +# +# Limité à l'usage des Administrateurs des Services. CHAN_OPER_HELP_UNSUSPEND Syntaxe: UNSUSPEND canal @@ -4256,7 +4258,7 @@ Remarque: Les messages expireront (seront automatiquement effacés) %s après avoir été expédiés, s'ils ne sont pas spécifiés n'expirant-pas avec la commande SAVE. -MEMO_HELP_END +MEMO_HELP_END_LEVELS (*) Par défaut, chaque usager avec un accès minimum de %s sur un canal peut lire les messages adressés au @@ -4335,23 +4337,23 @@ comme dans la commande LIST, une liste de numéros de messages. -MEMO_HELP_DEL - Syntaxe: DEL [canal] {num | liste | ALL} - - Efface le(s) message(s) spécifié(S). Vous pouvez également - fournir plusieurs numéros de messages ou un gamme de numéros - au lieu d'un simple numéro, tel que dans le second exemple - ci-bas. - - Si vous donnez ALL, efface tous vos messages. - - Exemples: - - DEL 1 - Efface votre premier message. - - DEL 2-5,7-9 - Efface les messages numérotés 2 à 5 et 7 à 9. +#MEMO_HELP_DEL +# Syntaxe: DEL [canal] {num | liste | ALL} +# +# Efface le(s) message(s) spécifié(S). Vous pouvez également +# fournir plusieurs numéros de messages ou un gamme de numéros +# au lieu d'un simple numéro, tel que dans le second exemple +# ci-bas. +# +# Si vous donnez ALL, efface tous vos messages. +# +# Exemples: +# +# DEL 1 +# Efface votre premier message. +# +# DEL 2-5,7-9 +# Efface les messages numérotés 2 à 5 et 7 à 9. MEMO_HELP_SET Syntaxe: SET option paramêtres @@ -4738,8 +4740,8 @@ la commande AKILL ADD. Le moment d'expiration précède le masque usager@hôte, et est spécifié comme un entier suivi par un d (jours), h (heures), ou m (minutes). Les - combinaisons (telles que 1h30m) ne sont pas autorisées. Si - une l'unité n'est pas spécifiée, par défaut il s'agira de + combinaisons (telles que 1h30m) sont également autorisées. + Si une l'unité n'est pas spécifiée, par défaut il s'agira de jours (donc +30 en soit signifie 30 jours). Pour ajouter un AKILL qui n'expirera pas, utilisez +0. Si le masque d'usager à être ajouté commence par un +, un moment @@ -4777,7 +4779,7 @@ permettre l'accès à un hôte ou un usager lequel correspond au masque inscrit à la liste d'autokill. - Les sous-commandes ADD, DEL, LIST, VIEW et COUNT + Les sous-commandes ADD, DEL, LIST, VIEW et COUNT fonctionnent de la même manière que les sous-commandes de la commande AKILL; voir l'assistance (HELP) pour la commande AKILL afin d'avoir plus d'information. @@ -4826,7 +4828,7 @@ d (jours), h (heures), ou m (minutes). Les combinaisons (telles que 1h30m) sont également autorisées. Si aucune unité n'est spécifiée, celle par défaut est en jours (donc - +3 en soit signifie 30 jours). Pour ajouter une entrée qui + +30 en soit signifie 30 jours). Pour ajouter une entrée qui n'expirera pas, utilisez +0. Si le masque à être ajouté commence par un + et qu'aucun moment d'expiration n'est donné, le masque doit être inclus dans un double-extrait, @@ -4846,12 +4848,14 @@ SQLINE VIEW [masque] [NOEXPIRE] SQLINE COUNT - Permet aux Opérateurs des Services de manipuler la liste - SQLINE. Si un usager dont le surnom correspond à un masque - SQLINE tente de se connecter, les Services émettront un KILL - pour cet usager, et sur les types de serveurs le supportant, - donneront l'instruction à tous les serveurs d'ajouter un ban - (Q-line du serveur) pour le masque auquel l'usager correspond. +#OPER_HELP_SQLINE_KILL +# Permet aux Opérateurs des Services de manipuler la liste +# SQLINE. Si un usager dont le surnom correspond à un masque +# SQLINE tente de se connecter, les Services émettront un KILL +# pour cet usager, et sur les types de serveurs le supportant, +# donneront l'instruction à tous les serveurs d'ajouter un ban +# (Q-line du serveur) pour le masque auquel l'usager correspond. +OPER_HELP_SQLINE_END Les sous-commandes ADD, DEL, LIST, VIEW, et COUNT peuvent être utilisées pour ajouter, suprimer, visualiser (version @@ -4884,71 +4888,71 @@ Limité aux Opérateurs des Services. -OPER_HELP_EXCEPTION - Syntaxe: EXCEPTION ADD [+expiration] masque limite raison - EXCEPTION DEL {masque | liste} - EXCEPTION MOVE num nouveau-num - EXCEPTION LIST [masque | liste] - EXCEPTION VIEW [masque | liste] - - Permet aux Administrateurs des Services de manipuler la - liste des hôtes qui ont une limitation de session - spécifique, permettant certains appareils, tels que les - serveurs coquilles (shell), de transporter plus de clients - que le nombre par défaut à la fois. Une fois qu'un hôte à - atteint sa limitation de sessions, tous les clients qui - tenteront de se connecter à partir de cet hôte seront - débranchés. Avant que l'usager soit débranché, il sera - notifié, via /NOTICE de %S, d'une source d'aide - concernant la limitation de session. Le contenu de cette - notice est un ajustement de configuration. - - EXCEPTION ADD ajoute le masque d'hôte donné à la liste - d'exception. Remarquez que les masques surnom!usager@hôte - et usager@hôte sont invalides! Seuls les véritables masques - d'hôte, tels que boîte.hôte.dom et *.hôte.dom, sont - autorisés parce que la limitation de session ne tient pas - compte des surnoms ou noms d'usager dans ses compter. - limite doit être un nombre suppérieur ou égal à zéro; ceci - détermine combien de session cet hôte peut transporter à la - fois (une valeur de zéro signifie que l'hôte n'a aucune - limitation de session). - - Optionnellement, un moment d'expiration peut être donné avec - la commande EXCEPTION ADD. Le moment d'expiration précède - le masque d'hôte, et est spécifié comme un entier suivi par - un d (jours), h (heures), ou m (minutes). Les combinaisons - (telles que 1h30m) sont également autorisées. Si aucune - unité n'est spécifiée, celle par défaut est en jours (donc - +3 en soit signifie 30 jours). Pour ajouter une entrée qui - n'expirera pas, utilisez +0. Si le masque à être ajouté - commence par un +, un moment d'expiration doit être donné, - même s'il s'agit de la même valeur que celle par défaut. - - EXCEPTION DEL retire le masque donné de la liste - d'exception. - - EXCEPTION MOVE déplace l'exception num à nouveau-num. Si - nouveau-num est déjà utilisé par une autre exception, son - numéro sera augmenté afin de créer de l'espace. - - EXCEPTION LIST et EXCEPTION VIEW présente toutes les - exceptions actuelles; si le masque optionnel est donné, - cette liste est limitée aux exceptions correspondant audit - masque. La différence entre les deux commandes est que - EXCEPTION VIEW en dit plus long, présentant le nom de la - personne qui a ajoutée l'exception, sa limitation de - session, la raison, le masque d'hôte et le jout et moment - d'expiration, de même que le moment de la dernière - utilisation de l'exception, i.c. la dernière fois qu'un - usager correspondant au masque d'exception s'est connecté. - - Remarquez qu'un client se connectant "utilisera" la première - exception correspondant à son hôte. Les exceptions trop - larges ou correspondant à trop de masques dégradent quelque - peu les performances des Services. - - Limité aux Opérateurs des Services. +#OPER_HELP_EXCEPTION +# Syntaxe: EXCEPTION ADD [+expiration] masque limite raison +# EXCEPTION DEL {masque | liste} +# EXCEPTION MOVE num nouveau-num +# EXCEPTION LIST [masque | liste] +# EXCEPTION VIEW [masque | liste] +# +# Permet aux Administrateurs des Services de manipuler la +# liste des hôtes qui ont une limitation de session +# spécifique, permettant certains appareils, tels que les +# serveurs coquilles (shell), de transporter plus de clients +# que le nombre par défaut à la fois. Une fois qu'un hôte à +# atteint sa limitation de sessions, tous les clients qui +# tenteront de se connecter à partir de cet hôte seront +# débranchés. Avant que l'usager soit débranché, il sera +# notifié, via /NOTICE de %S, d'une source d'aide +# concernant la limitation de session. Le contenu de cette +# notice est un ajustement de configuration. +# +# EXCEPTION ADD ajoute le masque d'hôte donné à la liste +# d'exception. Remarquez que les masques surnom!usager@hôte +# et usager@hôte sont invalides! Seuls les véritables masques +# d'hôte, tels que boîte.hôte.dom et *.hôte.dom, sont +# autorisés parce que la limitation de session ne tient pas +# compte des surnoms ou noms d'usager dans ses compter. +# limite doit être un nombre suppérieur ou égal à zéro; ceci +# détermine combien de session cet hôte peut transporter à la +# fois (une valeur de zéro signifie que l'hôte n'a aucune +# limitation de session). +# +# Optionnellement, un moment d'expiration peut être donné avec +# la commande EXCEPTION ADD. Le moment d'expiration précède +# le masque d'hôte, et est spécifié comme un entier suivi par +# un d (jours), h (heures), ou m (minutes). Les combinaisons +# (telles que 1h30m) sont également autorisées. Si aucune +# unité n'est spécifiée, celle par défaut est en jours (donc +# +30 en soit signifie 30 jours). Pour ajouter une entrée qui +# n'expirera pas, utilisez +0. Si le masque à être ajouté +# commence par un +, un moment d'expiration doit être donné, +# même s'il s'agit de la même valeur que celle par défaut. +# +# EXCEPTION DEL retire le masque donné de la liste +# d'exception. +# +# EXCEPTION MOVE déplace l'exception num à nouveau-num. Si +# nouveau-num est déjà utilisé par une autre exception, son +# numéro sera augmenté afin de créer de l'espace. +# +# EXCEPTION LIST et EXCEPTION VIEW présente toutes les +# exceptions actuelles; si le masque optionnel est donné, +# cette liste est limitée aux exceptions correspondant audit +# masque. La différence entre les deux commandes est que +# EXCEPTION VIEW en dit plus long, présentant le nom de la +# personne qui a ajoutée l'exception, sa limitation de +# session, la raison, le masque d'hôte et le jout et moment +# d'expiration, de même que le moment de la dernière +# utilisation de l'exception, i.c. la dernière fois qu'un +# usager correspondant au masque d'exception s'est connecté. +# +# Remarquez qu'un client se connectant "utilisera" la première +# exception correspondant à son hôte. Les exceptions trop +# larges ou correspondant à trop de masques dégradent quelque +# peu les performances des Services. +# +# Limité aux Opérateurs des Services. OPER_HELP_SESSION Syntaxe: SESSION LIST seuil (threshold) @@ -5056,7 +5060,7 @@ de créer un faux "serveur" connecté aux Services afin de prévenir que le serveur réel du même nom ne se connecte. Ce "faux serveur" peut être retiré en utilisant la commande - SQUIT ordinaire. Si une raison est donnée, elle sera + /SQUIT ordinaire. Si une raison est donnée, elle sera inscrite dans le champ d'information du serveur; autrement, le champ d'information du serveur contiendra le texte "Jupitered by ", indiquant ainsi le surnom de la @@ -5076,13 +5080,13 @@ Limité à l'usage des Super-usagers des Services. -OPER_HELP_UPDATE - Syntaxe : UPDATE - - Force les Services à mettre à jour toutes les banques de - données dès que vou entrez la commande. - - Limité aux Administrateurs des Services. +#OPER_HELP_UPDATE +# Syntaxe : UPDATE +# +# Force les Services à mettre à jour toutes les banques de +# données dès que vou entrez la commande. +# +# Limité aux Administrateurs des Services. OPER_HELP_QUIT Syntaxe : QUIT diff -uNr ircservices-5.0.19/lang/hu.l ircservices-5.0.20/lang/hu.l --- ircservices-5.0.19/lang/hu.l 2003-01-22 23:45:13 +0900 +++ ircservices-5.0.20/lang/hu.l 2003-06-11 12:59:24 +0900 @@ -2097,8 +2097,16 @@ RAW szöveg # UPDATE válaszok +OPER_UPDATE_SYNTAX + UPDATE [FORCE] +OPER_UPDATE_FORCE_FAILED + Nem sikerült az adatbázist újranyitni. OPER_UPDATING - Adatbázis frissítése... + Menti az adatbázisokat... +OPER_UPDATE_COMPLETE + Adatbázis mentése kész. +OPER_UPDATE_FAILED + Adatbázis mentése sikertelen. # REHASH válaszok OPER_REHASHING @@ -2779,12 +2787,16 @@ NICK_HELP_RECOVER Syntax: RECOVER nicknév [jelszó] - Engedélyezi hogy killeld azt a usert aki megszerezte a nicked; - ez ugyanazt csinálja mint amit a %S automatikusan csinál amikor valaki - megpróbál használni egy kill-protect alatt álló nicket. - - Ezután,egy perced van hogy használd a RELEASE parancsot: - (/msg %S HELP RELEASE). + Amikor engedélyezed ezt az opciót, a %S fel fog hozni egy + ál felhasználót ugyanazzal a névvel, amit vissza + akarsz venni a másik névtol. Ennek következtében + az IRC szerver megbontja a másik felhasználó kapcsolatát. + A %S ál felhasználója online marad %s hogy + a másik felhasználó ne tudjon automatikusa újracsatlakozni; + ezután az idõ letelte után, te felveheted + a nevedet.Alternatív megoldás, + a RELEASE parancs használata (/msg %S HELP RELEASE) + ezzel hamarabb is visszakaphatod a neved. Abban az esetben ha használod a RECOVER parancsot, akkor tudnod kell a pontos jelszót a nickhez vagy be kell azonosítanod @@ -2794,8 +2806,11 @@ NICK_HELP_RELEASE Syntax: RELEASE nicknév [jelszó] - A %S RECOVER parancsát használva visszafoglalhatod a nicked - ha valaki már használja.Egy perced van a parancs használatára. + Utasítja a %S -et, hogy ne tartsa tovább az + automatikus kill védelem vagy a RECOVER + parancs használatából kifolyólag felvett neved. + Alapbeállítás szerint csak %s; tartja, de + ezzel a paranccsal hamarabb átveheto újra a neved. Ha a RELEASE parancsot akarod használni, tudnod kell a pontos jelszót a nickhez vagy be kell azonosítanod "identify"-zned @@ -3101,15 +3116,14 @@ NICK_OPER_HELP_SUSPEND Syntax: SUSPEND [+elévülés] nicknév indok - Felfüggeszti egy nicknév használatát, és minden nicknévét, amelyik azonos - szótõvü nicknév, nem lehet használni vagy beazonositani rá. - A nicknév unsuspendelhetõ az - UNSUSPEND paranccsal. - - Nem olyan mint a forbidolt nicknév, egy suspendelt nick nem veszti el az infóit - és a suspend elévül!! + Megelõzi, hogy egy nicknevet, és minden hozzá linkelt nicknevet + használjanak, beazonosítsanak rá. A nicknév unsuspendelhetõ + az UNSUSPEND paranccsal, ami lehetõvé teszi, hogy + továbbra is használják, mint korábban. + Az elévülés paraméter ugyanolyan, mint az + %s AKILL parancs esetében. - Limitálva Services adminoknak. + Limitálva: Services adminoknak. NICK_OPER_HELP_UNSUSPEND Syntax: UNSUSPEND nicknév @@ -3320,7 +3334,7 @@ SECURE Aktiválja a %S biztonsági lehetõségeit SECUREOPS A csatornán opadás szigoru kezelése(csak accesses user kaphat) LEAVEOPS Nem veszi el az op-ot a szobanyitótól - OPNOTICE Üzenetet küld az OP/DEOP parancsok használtáról + OPNOTICE Üzenetet küld az OP/VOICE parancsok használtáról ENFORCE Megvédi az auto-op, auto-voice státuszt (nincs deop,devoice) További információért egy adott opcióról írd be: @@ -3446,25 +3460,31 @@ CHAN_HELP_SET_SECURE Syntax: SET csatorna SECURE {ON | OFF} - Be/kikapcsolja a %S védelmi lehetõségeit a csatornán - Amikor a SECURE be van kapcsolva, csak a %s regisztrált - userek akik azonositották magukat az IDENTIFY paranccsal kaphatnak - hozzáférési jogot egy csatornán, amit az access lista tesz lehetõvé. + Engedélyezi vagy letitlja a %S biztonsági lehetõségeit + a szobában. Ha a SECURE be van kapcsolva, csak azok a felhasználók + akik regisztrált névvel rendelkeznek és beazonosítottak a + %s jelszavukkal használták a IDENTIFY'd parancsot csak azok + kaphatnak a szobában privilégiumokat, a hozzáférési listán. + Ha a RESTRICTED opció be van állítva akkor a felhasználók, + akik szerepelnek a hozzáférési listán azok sem tudnak belépni, + amíg nem azonosítottak be a %s -be. CHAN_HELP_SET_SECUREOPS - Syntax: SET csatorna SECUREOPS {ON | OFF} + Syntax: SET szoba SECUREOPS {ON | OFF} - Be/kikapcsolaja a secure ops opciót a csatornán. - Amikor a secure ops be van kapcsolva, azok a userek akik nem - szerepelnek az accessen nem kaphat csatorna operátori státuszt. + Bekapcsolja vagy letiltja a secure ops opciót a szobában. + Amikor a secure ops be van kapcsolva, akkor azok akik nem + szerepelnek a hozzáférési listán nem kaphatnak szoba + operátori státust. CHAN_HELP_SET_LEAVEOPS Syntax: SET csatorna LEAVEOPS {ON | OFF} - Be/kikapcsolja a leave ops opciót a csatornán. - Amikor a leave ops be van kapcsolva, %S nem veszi ela szobnyitó - jogoait, még akkor sem ha nem szerepel az access listán. A SECUREOPS opció - és az AUTODEOP access level azonnal végrehajtódik. + Engedélyezi vagy letiltje a leave ops opciót a szobában. + Ha a leave ops be van állítva, %S meghagyja a szerver opot + (+o az elsõ belépõnek a szobába) azokon a helyeken, ahol a felhasználó + nem lenne normálisan auto-opolva. A SECUREOPS opció + továbbra is végre lesz hajtva. Megjegyzés: Így lehetõséget adsz az op "lopásra" egy netsplit esetén. CHAN_HELP_SET_OPNOTICE @@ -3974,16 +3994,14 @@ Limitálva Services adminoknak. CHAN_OPER_HELP_SUSPEND - Syntax: SUSPEND [+elévülés] csatorna indok + Syntax: SUSPEND [+elévülés] szoba indok - Felfüggeszti egy csatorna használatát. - A csatorna unsuspendelhetõ az - UNSUSPEND parancs használatával. + Megelõzi, hogy egy szobát használjanak vagy beazonosítsanak rá. + A szoba unsuspendelhetõ az UNSUSPEND paranccsal, amely után + minden marad a régiek szerint. + Az elévülés paraméter ugyanazt jelenti, mint az %s AKILL parancs esetében. - Nem olyan, mint a forbidolt csatorna, a suspendelt csatorna nem - veszti el az információit és a suspend elévül! - - Limitálva Services adminoknak. + Limitálva: Services adminoknak. CHAN_OPER_HELP_UNSUSPEND Syntax: UNSUSPEND csatorna @@ -4010,19 +4028,21 @@ listáját; ha használni akarsz egy parancsot, írd be: /msg %S parancs, vagy a paranccsal kapcsolatos további információért írd be: /msg %S HELP parancs. - MEMO_HELP_EXPIRES Megjegyzés: Az üzenetek lejárnak (automatikusan törlõdnek) %s után, kivéve, ha a SAVE paranccsal megjelölöd, hogy soha ne járjon le. - -MEMO_HELP_END +MEMO_HELP_END_LEVELS (*) Alapértelmezés szerint bármilyen felhasználó, akinek a szintje legalább %s, olvashatják a csatornára érkezõ üzeneteket. Ez a beállítás megváltoztatható a %s LEVELS parancsával. +MEMO_HELP_END_XOP + + (*) Minden felhasználó, aki szerepel a szoba sop listáján + elolvashatja a szoba memoit. MEMO_HELP_COMMANDS %S az alábbi parancsokat nyújtja neked: @@ -4092,20 +4112,15 @@ parancsnál, számok listáját is. MEMO_HELP_DEL - Syntax: DEL [csatorna] {szám | lista | ALL} + Syntax: DEL [szoba] {szám | list | ALL} - Törli a megadott üzenete(ke)t. Megadhatsz egyedül egy - számot, vagy ahogyan a LIST parancsnál, számlistát - is. Az ALL opció esetén minden üzeneted törlésre kerül. - - Példák: + Törli a megjelölt memot vagy memokat. + Deletes the specified memo or memos. Megadhatsz + sok memo számot vagy intervallumot ami tartalmaz egy + egyszerû számot, mint a LIST parancsnál; megadhatod az + ALL szavacskát is, aminek következtében az összes memod törlödni fog. - DEL 1 - Törli az elsõ üzeneted. - - DEL 2-5,7-9 - Törli az üzeneteket 2 és 5, illetve 7 és 9 között. - + Figyelem: Ha egy memot már töröltél, az nem állítható vissza! MEMO_HELP_SET Syntax: SET opció paraméterek @@ -4448,12 +4463,12 @@ amelyek nem járnak le, és ráillenek a felhasználó@gazdanév maszkra. AKILL COUNT csak visszaküldi az AKILL-ek számát az AKILL listán. - Nem kötelezõ, de megadható egy lejárati idõ az AKILL ADD - parancshoz. A lejáratid idõ megelõzi a felhasználó@gazdanév - maszkot, egy egész számként határozzuk meg, és követi - egy d (nap), h (óra) vagy m (perc) betû. Kombinációk - (mint például 1h30m) is megengedettek. Ha nincs idõegység, - az alapértelmezés a nap (vagyis +30 önmagában azt jelenti, 30 nap). + Opcionális, egy elévülési idõ megadható az AKILL ADD + paranccsal. Az elévülési idõ megelõzi a user@host maszkot, és + meghatározható mint egy egész szám amit egy követ ezek közül d (nap), + h (óra), vagy m (perc). Kombinációk (mint az 1h30m) + most már megengedettek. Ha nincs idõegység, az alapértelmezés + a nap (vagyis +30 önmagában azt jelenti, 30 nap). Soha le nem járó AKILL hozzáadásához használj +0-át. Ha a hozzáadandó usermaszk + jellel kezdõdik, a lejárati idõt meg kell adni, akkor is, ha ugyanaz, mint az alapértelmezés. @@ -4485,7 +4500,7 @@ maszkjaid vannak, és még mindig akarsz gazdaneveket vagy felhasználókat, hogy egy ilyen maszkkal tudjanak csatlakozni. - Az ADD, DEL, LIST, VIEW és COUNT alparancsok ugyanúgy mûködnek, + Az ADD, DEL, LIST, VIEW és COUNT alparancsok ugyanúgy mûködnek, mint az AKILL parancs alparancsai; nézd meg az AKILL helpjét további információért. @@ -4529,8 +4544,8 @@ parancshoz. A lejárati idõ megelõzi a flehasználó@gazdanév maszkot, egész számként határozzuk meg, és követi egy d (nap), h (óra) vagy m (perc) betû. Kombinációk (mint pl. 1h30m) - is megengedettek. Ha nincs idõegység, az alapértelmezés a nap - (vagyis +30 önmagában azt jelenti, 30 nap). Ha szeretnél + most már megengedettek. Ha nincs idõegység, az alapértelmezés + a nap (vagyis +30 önmagában azt jelenti, 30 nap). Ha szeretnél egy olyan bejegyzést, ami soha nem jár le, használj +0-át. Ha a maszk + jellel kezdõdik, és nincs megadva lejárati idõ, a maszkot idézõjelek közé kell tenni, ahogy fent le van írva. @@ -4548,12 +4563,28 @@ SQLINE VIEW [maszk] [NOEXPIRE] SQLINE COUNT - Lehetõséget nyújt a Services operátoroknak, hogy karbantartsák - az SQLINE listát. Ha egy felhasználó, akinek a nickneve ráillik - egy SQLINE maszkra, és megpróbál csatlakozni, a Services kiad - egy KILL parancsot arra a felhasználóra, és a támogatott - szervertípusokon arra utasít minden szervert, hogy adjon - egy bant (Q-line) a felhasználóra illõ maszkra. +OPER_HELP_SQLINE_KILL + Megengedi a Services operátoroknak, hogy módosítsák az SQLINE listát. + Ha egy felhasználó, akinek a neve szerepel egy SQLINE maszkban megpróbál + csatlakozni, vagy a felhasználó megpróbálja átváltoztatni a + nevét egy olyanra amely szerepel egy SQLINE maszkban, a Services ki fog osztani + egy KILL-t ennek a felhasználónak,a támogatott szerver típusok utasítják + az összes szervert, hogy adjanak egy tiltást (szerver Q-line) a maszknak + amivel a felhasználó megegyezett. +OPER_HELP_SQLINE_NOKILL + Megengedi a Services operátoroknak, hogy módosítsák az SQLINE listát. + Ha egy felhasználó, akinek a neve szerepel egy SQLINE maszkban megpróbál + csatlakozni, vagy a felhasználó megpróbálja átváltoztatni a + nevét egy olyanra amely szerepel egy SQLINE maszkban, a Services megváltoztatja a + nicknevét "guest" nicknévre és küld egy üzenetet a felhasználó + IRC kliensének, hogy válasszon egy másik nicknevet. + A támogatott szerver típusok utasítják az összes szervert, + hogy adjanak egy tiltást (szerver Q-line) a maszknak amivel a + felhasználó megegyezett. +OPER_HELP_SQLINE_IGNOREOPERS + + Megjegyzés az IRC operátorokra nem hatnak az SQLINE maszkok. +OPER_HELP_SQLINE_END Az ADD, DEL, LIST és VIEW és COUNT alparancsok hozzáadásra, törlése, megtekintésre (rövid vagy hosszú verzió), @@ -4621,11 +4652,12 @@ a hozzáadandó maszk + jellel kezdõdik, egy lejárati idõt is meg kell adni, még akkor is, ha ugyanaz, mint ami az alapértelmezés. - EXCEPTION DEL elvátolítja a megadott maszkot a kivétellistáról. + EXCEPTION DEL eltávolítja a megadott maszkot vagy a megjelölt sorszámú + szereplõt a kivétel listáról (sorszám megtalálható: VIEW vagy LIST). - EXCEPTION MOVE megváltoztatja a kivétel szám-át újszám-ra. - Ha az újszám-ot már használja egy másik kivétel, a száma eggyel - lejjebb kerül, hogy helyet takarítson. + EXCEPTION MOVE megváltoztatja a kivételt szám ról új szám ra. + Ha az újszám már használva van egy másik kivételnél, akkor a + szám meg lesz növelve, hogy legyen helye. EXCEPTION LIST és EXCEPTION VIEW kijelez minden kivételt; ha megadsz egy tetszõleges maszkot, a listát korlátozza @@ -4732,7 +4764,7 @@ Elmondja a Servicesnek, hogy jupitereljen egy szervert--vagyis, hogy készítsen egy "álszervert", ami a Serviceshez csatlakozik, és megvédi annak a névnek a valós szerverét a csatlakozástól. - A jupe etávolítható egy szabványos SQUIT paranccsal. Ha megadsz + A jupe etávolítható egy szabványos /SQUIT paranccsal. Ha megadsz indokot, bekerül a szerver információs mezõjébe; egyébként a szerver információs mezõje a "Jupitered by " szöveget fogja tartalmazni, mutatva a szervert jupiterelõ felhasználó nicknevét. @@ -4752,13 +4784,16 @@ Korlátozva Services super-usereknek. OPER_HELP_UPDATE - Syntax: UPDATE + Syntax: UPDATE [FORCE] - Arra készteti a Servicest, hogy amint kiadod ezt a - parancsot, frissítsen minden információt az adatbázis- - fájlokban. + Utasítja a Services, hogy mentsen el minden adatbázis fájlt + olyan, hamar, ahogy lehet a parancs kiadásától számítva. Ha a + FORCE opció is meg van adva a Services megpróbálja kinyitni + az adatbázisokat mielõtt végrehajtaná a mentést; ezzel + kiküszöbölhetõ a "databases are locked" hibaüzenet, az + adatbázis mentésekor. - Korlátozva Services adminisztrátoroknak. + Limitálva Services adminoknak. OPER_HELP_QUIT Syntax: QUIT diff -uNr ircservices-5.0.19/lang/index ircservices-5.0.20/lang/index --- ircservices-5.0.19/lang/index 2003-05-28 15:16:47 +0900 +++ ircservices-5.0.20/lang/index 2003-06-05 10:55:22 +0900 @@ -806,7 +806,11 @@ OPER_JUPE_INVALID_NAME OPER_JUPE_ALREADY_JUPED OPER_RAW_SYNTAX +OPER_UPDATE_SYNTAX +OPER_UPDATE_FORCE_FAILED OPER_UPDATING +OPER_UPDATE_COMPLETE +OPER_UPDATE_FAILED OPER_REHASHING OPER_REHASHED OPER_REHASH_ERROR @@ -1103,7 +1107,8 @@ CHAN_OPER_HELP_UNSUSPEND MEMO_HELP MEMO_HELP_EXPIRES -MEMO_HELP_END +MEMO_HELP_END_LEVELS +MEMO_HELP_END_XOP MEMO_HELP_COMMANDS MEMO_HELP_COMMANDS_FORWARD MEMO_HELP_COMMANDS_SAVE @@ -1153,6 +1158,10 @@ OPER_HELP_EXCLUDE OPER_HELP_SGLINE OPER_HELP_SQLINE +OPER_HELP_SQLINE_KILL +OPER_HELP_SQLINE_NOKILL +OPER_HELP_SQLINE_IGNOREOPERS +OPER_HELP_SQLINE_END OPER_HELP_SZLINE OPER_HELP_EXCEPTION OPER_HELP_SESSION diff -uNr ircservices-5.0.19/lang/it.l ircservices-5.0.20/lang/it.l --- ircservices-5.0.19/lang/it.l 2003-01-22 23:45:13 +0900 +++ ircservices-5.0.20/lang/it.l 2003-06-03 12:21:48 +0900 @@ -1248,8 +1248,10 @@ RAW testo # UPDATE responses -OPER_UPDATING - Database aggiornato. +OPER_UPDATE_SYNTAX + UPDATE [FORCE] +#OPER_UPDATING +# Database aggiornato. # LISTIGNORE responses OPER_IGNORE_LIST @@ -1815,7 +1817,7 @@ # SECURE Attiva le opzioni di sicurezza di %S # SECUREOPS Alto controllo per gli operatori # LEAVEOPS Non deoppare mai gli user -# OPNOTICE Manda un notice agli OP +# OPNOTICE Manda un notice agli OP # # Scrivi /msg %S HELP opzione per maggiori informazioni. @@ -1930,20 +1932,20 @@ # che normalmente non sarebbero OP saranno kikkati e bannati # dal canale immediatamente. -CHAN_HELP_SET_SECURE - Sintassi: SET canale SECURE {ON | OFF} - - Abilita le opzioni di sicurezza di %S per un canale. - Quando SECURE e' settato, solo gli utenti che hanno - un nick registrato con %s e si sono identificati con la - loro password potranno entrare nel canale. - -CHAN_HELP_SET_SECUREOPS - Sintassi: SET canale SECUREOPS {ON | OFF} - - Abilita o disabilita l'opzione op sicuri per un canale. - Con l'opzione op sicuri settata, gli user che non sono - nella userlist non avranno l'OP nel canale. +#CHAN_HELP_SET_SECURE +# Sintassi: SET canale SECURE {ON | OFF} +# +# Abilita le opzioni di sicurezza di %S per un canale. +# Quando SECURE e' settato, solo gli utenti che hanno +# un nick registrato con %s e si sono identificati con la +# loro password potranno entrare nel canale. + +#CHAN_HELP_SET_SECUREOPS +# Sintassi: SET canale SECUREOPS {ON | OFF} +# +# Abilita o disabilita l'opzione op sicuri per un canale. +# Con l'opzione op sicuri settata, gli user che non sono +# nella userlist non avranno l'OP nel canale. #CHAN_HELP_SET_LEAVEOPS # Sintassi: SET canale LEAVEOPS {ON | OFF} @@ -2230,21 +2232,21 @@ # READ 2-5,7-9 # Ti fa vedere i memo dal 2 al 5 e dal 7 al 9 -MEMO_HELP_DEL - Sintassi: DEL [canale] {num | list | ALL} - - Cancella il specifico memo. Puoi dare una lista di numeri - al posto di un numero solo, come nel secondo esempio qua - sotto. - Se ALL e' dato, cancella tutti i tuoi memo. - - Esempi: - - DEL 1 - Cancella la tua prima memo. - - DEL 2-5,7-9 - Cancella i memo dal 2 al 5 e dal 7 al 9. +#MEMO_HELP_DEL +# Sintassi: DEL [canale] {num | list | ALL} +# +# Cancella il specifico memo. Puoi dare una lista di numeri +# al posto di un numero solo, come nel secondo esempio qua +# sotto. +# Se ALL e' dato, cancella tutti i tuoi memo. +# +# Esempi: +# +# DEL 1 +# Cancella la tua prima memo. +# +# DEL 2-5,7-9 +# Cancella i memo dal 2 al 5 e dal 7 al 9. MEMO_HELP_SET Sintassi: SET opzione parametri @@ -2512,7 +2514,7 @@ Dice ai servizi di jupiterare un server, ovvero di creare un fake-server e linkarlo, impedendo al vero server di linkarsi a sua volta. Il jupe puo' essere rimosso usando - il comando SQUIT. Se viene data una ragione e' messa + il comando /SQUIT. Se viene data una ragione e' messa nella descrizione del server, al posto dello standard "Jupitered by ". @@ -2529,13 +2531,13 @@ # # Limitato agli AOP. -OPER_HELP_UPDATE - Sintassi: UPDATE - - Fa in modo che i servizi scrivano immediatamente il loro - database sul server. - - Limitato agli AOP. +#OPER_HELP_UPDATE +# Sintassi: UPDATE +# +# Fa in modo che i servizi scrivano immediatamente il loro +# database sul server. +# +# Limitato agli AOP. OPER_HELP_QUIT Sintassi: QUIT diff -uNr ircservices-5.0.19/lang/ja_euc.l ircservices-5.0.20/lang/ja_euc.l --- ircservices-5.0.19/lang/ja_euc.l 2003-04-30 14:20:25 +0900 +++ ircservices-5.0.20/lang/ja_euc.l 2003-06-02 16:50:30 +0900 @@ -2054,8 +2054,16 @@ RAW ¥Æ¥­¥¹¥È # UPDATE±şÅú +OPER_UPDATE_SYNTAX + UPDATE [FORCE] +OPER_UPDATE_FORCE_FAILED + ¥Ç¡¼¥¿¥Ù¡¼¥¹¤Î¥í¥Ã¥¯¤ò²ò½ü¤Ç¤­¤Ş¤»¤ó¤Ç¤·¤¿¡£ OPER_UPDATING ¥Ç¡¼¥¿¥Ù¡¼¥¹¤òÊݸ¤·¤Æ¤¤¤Ş¤¹¡£ +OPER_UPDATE_COMPLETE + ¥Ç¡¼¥¿¥Ù¡¼¥¹¤ÎÊݸ¤¬´°Î»¤·¤Ş¤·¤¿¡£ +OPER_UPDATE_FAILED + ¥Ç¡¼¥¿¥Ù¡¼¥¹¤òÊݸ¤Ç¤­¤Ş¤»¤ó¤Ç¤·¤¿¡£ # REHASH±şÅú OPER_REHASHING @@ -2703,8 +2711,8 @@ ¤Ë¼è¤êÌᤷ¤Ş¤¹¡£¼«Æ°ÀÚÃÇÀßÄ꤬ͭ¸ú¤Ê¥Ë¥Ã¥¯¤ò»È¤Ã¤¿¾ì¹ç¤ÈƱÍÍ ¤Ë¡¢¥æ¡¼¥¶¤¬IRC¤«¤éÀÚÃǤµ¤ì¤Ş¤¹¡£¤Ê¤ª¥æ¡¼¥¶¤¬ÀÚÃǤµ¤ì¤¿¸å¤Ï¡¢ Ʊ¤¸¥Ë¥Ã¥¯¤Ç¤ÎºÆÀܳ¤òËɤ°¤¿¤á¤Ë¡¢Services¤Ï¡Öµ¿»÷¥æ¡¼¥¶¡×¤Ç - £±Ê¬´Ö¡¢¤½¤Î¥Ë¥Ã¥¯¤òÊİα¤·¤Ş¤¹¡££±Ê¬´Ö¤¬·Ğ¤ÄÁ°¤Ë¥Ë¥Ã¥¯¤òÍøÍÑ - ¤·¤¿¤¤¾ì¹ç¤ÏRELEASE¥³¥Ş¥ó¥É¤ÈÊİα¤ò²ò½ü¤Ç¤­¤Ş¤¹¡£ + %s´Ö¡¢¤½¤Î¥Ë¥Ã¥¯¤òÊİα¤·¤Ş¤¹¡£Êİα»ş´Ö¤¬²á¤®¤ëÁ°¤Ë¥Ë¥Ã¥¯¤ò + ÍøÍѤ·¤¿¤¤¾ì¹ç¤ÏRELEASE¥³¥Ş¥ó¥É¤ÇÊİα¤ò²ò½ü¤Ç¤­¤Ş¤¹¡£ ¤³¤Î¥³¥Ş¥ó¥É¤ò»È¤¦¤Ë¤Ï¡¢¥Ë¥Ã¥¯¤Îǧ¾ÚÍѥѥ¹¥ï¡¼¥É¤òÆşÎϤ¹¤ë¤«¡¢ ¥Ë¥Ã¥¯¤Ë¥ê¥ó¥¯¤µ¤ì¤Æ¤¤¤ëÊ̤Υ˥寤ËÂФ·¤Æǧ¾Ú¤ò¹Ô¤¦É¬Íפ¬¤¢ @@ -2715,7 +2723,7 @@ RECOVER¥³¥Ş¥ó¥É¡Ê¤Ş¤¿¤Ï¼«Æ°ÀÚÃǡˤˤè¤Ã¤Æ¥Ë¥Ã¥¯¤¬Services¤Ë Êİᤵ¤ì¤Æ¤¤¤ë¾ì¹ç¡¢Êİα¤ò²ò½ü¤·¤Ş¤¹¡£RELEASE¤ò»È¤ï¤Ê¤¤¾ì¹ç¡¢ - Êİα¤Ï£±Ê¬¸å¤Ë¼«Æ°²ò½ü¤µ¤ì¤Ş¤¹¡£ + Êİα¤Ï%s¸å¤Ë¼«Æ°²ò½ü¤µ¤ì¤Ş¤¹¡£ ¤³¤Î¥³¥Ş¥ó¥É¤ò»È¤¦¤Ë¤Ï¡¢¥Ë¥Ã¥¯¤Îǧ¾ÚÍѥѥ¹¥ï¡¼¥É¤òÆşÎϤ¹¤ë¤«¡¢ ¥Ë¥Ã¥¯¤Ë¥ê¥ó¥¯¤µ¤ì¤Æ¤¤¤ëÊ̤Υ˥寤ËÂФ·¤Æǧ¾Ú¤ò¹Ô¤¦É¬Íפ¬¤¢ @@ -2993,6 +3001,7 @@ »ØÄꤵ¤ì¤¿¥Ë¥Ã¥¯¤È¤½¤ì¤Ë¥ê¥ó¥¯¤µ¤ì¤Æ¤¤¤ë¥Ë¥Ã¥¯¤ò»ÈÍÑÄä»ß¤Ë¤· ¤Ş¤¹¡£»ÈÍÑÄä»ßÃæ¤Ï¡¢¥Ë¥Ã¥¯¤ÎÀßÄê¤ÏÊݸ¤µ¤ì¤Ş¤¹¤¬¡¢»ÈÍѤ¹¤ë¤³ ¤È¤Ï¤Ç¤­¤Ş¤»¤ó¡£»ÈÍÑÄä»ß¤ÏUNSUSPEND¥³¥Ş¥ó¥É¤Ç²ò½ü¤Ç¤­¤Ş¤¹¡£ + ´ü¸Â¤Ï%s¤ÎAKILL¥³¥Ş¥ó¥É¤ÈƱÍͤ˲ò¼á¤µ¤ì¤Ş¤¹¡£ ¤³¤Î¥³¥Ş¥ó¥É¤Î»ÈÍѤÏServices¥¢¥É¥ß¥ó¤ËÀ©¸Â¤µ¤ì¤Æ¤¤¤Ş¤¹¡£ @@ -3191,7 +3200,7 @@ SECURE ¥»¥­¥å¥¢ÀßÄê¤òÊѹ¹¤¹¤ë SECUREOPS ¥ª¥Ú¥ì¡¼¥¿¸¢¤Î´ÉÍı¥ì¥Ù¥ë¤òÀßÄꤹ¤ë LEAVEOPS ºÇ½é»²²Ã¥æ¡¼¥¶¤Î¥ª¥Ú¥ì¡¼¥¿¸¢¤ò²ò½ü¤·¤Ê¤¤ - OPNOTICE OP/DEOPÅù¤Î¥³¥Ş¥ó¥É»ÈÍÑ»ş¤Ë¼şÃΤ¹¤ë + OPNOTICE OP/VOICEÅù¤Î¥³¥Ş¥ó¥É»ÈÍѤò¥Á¥ã¥ó¥Í¥ë¤Ë¼şÃΤ¹¤ë ENFORCE ¼«Æ°¥ª¥Ú¥ì¡¼¥¿¸¢¡¦¼«Æ°È¯¸À¸¢´ÉÍıÀßÄê¤òÊѹ¹¤¹¤ë ¤³¤Î¥³¥Ş¥ó¥É¤Î»ÈÍѤϥǥե©¥ë¥È¤Ç¥Á¥ã¥ó¥Í¥ë¤ÎÁÏÀ߼Ԥ˸¤é¤ì¤Æ @@ -3317,8 +3326,8 @@ ¥»¥­¥å¥¢ÀßÄê¤òÊѹ¹¤·¤Ş¤¹¡£ON¤Ë¤¹¤ë¤È¡¢%s¤ËÂФ·¤Æ¥Ë¥Ã¥¯Ç§¾Ú¤ò ¹Ô¤Ã¤Æ¤¤¤Ê¤¤¥æ¡¼¥¶¤Ï¼«Æ°¥ª¥Ú¥ì¡¼¥¿¸¢¤Ê¤É¤Î¸¢¸Â¤òÍ¿¤¨¤é¤ì¤º¡¢ - ¥¢¥¯¥»¥¹À©¸ÂÀßÄ꤬ͭ¸ú¤Ë¤Ê¤Ã¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢¥Á¥ã¥ó¥Í¥ë¤Ë»²²Ã¤¹ - ¤ë¤³¤È¤â½ĞÍè¤Ê¤¯¤Ê¤ê¤Ş¤¹¡£ + ¥¢¥¯¥»¥¹À©¸Â¡ÊRESTRICTED¡ËÀßÄ꤬ͭ¸ú¤Ë¤Ê¤Ã¤Æ¤¤¤ë¾ì¹ç¤Ï¡¢¥Á¥ã + ¥ó¥Í¥ë¤Ë»²²Ã¤¹¤ë¤³¤È¤â½ĞÍè¤Ê¤¯¤Ê¤ê¤Ş¤¹¡£ CHAN_HELP_SET_SECUREOPS ÍÑË¡¡§SET ¥Á¥ã¥ó¥Í¥ë SECUREOPS {ON | OFF} @@ -3335,7 +3344,7 @@ ¡¼¥¶¤¬¼«Æ°Åª¤Ë¥ª¥Ú¥ì¡¼¥¿¸¢¤òÍ¿¤¨¤é¤ì¤Ş¤¹¤¬¡¢Services¤Î¥Á¥ã¥ó ¥Í¥ë´ÉÍı¤òÀµ¤·¤¯¹Ô¤¦¤¿¤á¡¢¤³¤Î¥ª¥Ú¥ì¡¼¥¿¸¢¤òÄ̾%S¤¬ ²ò½ü¤·¤Ş¤¹¡£¤³¤ÎÀßÄê¤òON¤Ë¤¹¤ë¤È¡¢¥ª¥Ú¥ì¡¼¥¿¸¢¤ò¤½¤Î¤Ş¤ŞÊüÃÖ - ¤·¤Ş¤¹¡£ + ¤·¤Ş¤¹¡Ê¤¿¤À¤·SECUREOPSÀßÄê¤ÏÍ¥À褵¤ì¤Ş¤¹¡Ë¡£ CHAN_HELP_SET_OPNOTICE ÍÑË¡¡§SET ¥Á¥ã¥ó¥Í¥ë OPNOTICE {ON | OFF} @@ -3840,10 +3849,11 @@ ¤³¤Î¥³¥Ş¥ó¥É¤Î»ÈÍѤÏServices¥¢¥É¥ß¥ó¤ËÀ©¸Â¤µ¤ì¤Æ¤¤¤Ş¤¹¡£ CHAN_OPER_HELP_SUSPEND - ÍÑË¡¡§SUSPEND [+Í­¸ú´ü¸Â] ¥Á¥ã¥ó¥Í¥ë Íıͳ + ÍÑË¡¡§SUSPEND [+´ü¸Â] ¥Á¥ã¥ó¥Í¥ë Íıͳ ¥Á¥ã¥ó¥Í¥ë¤ò»ÈÍÑÄä»ß¤Ë¤·¤Ş¤¹¡£¥æ¡¼¥¶¤¬ÍøÍѤǤ­¤Ê¤¯¤Ê¤ë¤Û¤«¡¢ ¥Ñ¥¹¥ï¡¼¥Éǧ¾Ú¤âÄä»ß¤µ¤ì¤Ş¤¹¡£²ò½ü¤Ë¤ÏUNSUSPEND¤ò»È¤¤¤Ş¤¹¡£ + ´ü¸Â¤Ï%s¤ÎAKILL¥³¥Ş¥ó¥É¤ÈƱÍͤ˲ò¼á¤µ¤ì¤Ş¤¹¡£ ¤³¤Î¥³¥Ş¥ó¥É¤Î»ÈÍѤÏServices¥¢¥É¥ß¥ó¤ËÀ©¸Â¤µ¤ì¤Æ¤¤¤Ş¤¹¡£ @@ -3878,10 +3888,14 @@ Ãí°Õ¡§¥á¥â¤Ï¡¢SAVE¥³¥Ş¥ó¥É¤ÇÊݸ¤·¤¿¤â¤Î¤ò½ü¤­¡¢Á÷¿®¸å%s¤¬ ¡¡¡¡¡¡·Ğ¤Ä¤È¼«Æ°Åª¤Ëºï½ü¤µ¤ì¤Ş¤¹¡£ -MEMO_HELP_END +MEMO_HELP_END_LEVELS ¢¨¥Á¥ã¥ó¥Í¥ë¤Ø¤Î¥á¥â¤Ï¡¢%s°Ê¾å¤Î¥¢¥¯¥»¥¹¤ò»ı¤Ä¥æ¡¼¥¶ ¡¡¤¬Æɤᤪ¤¹¡£ +MEMO_HELP_END_XOP + + ¢¨¥Á¥ã¥ó¥Í¥ë¤Ø¤Î¥á¥â¤Ï¡¢SOP¥ê¥¹¥È¤ËÅĞÏ¿¤µ¤ì¤Æ¤¤¤ë¥æ¡¼¥¶¤¬ÆÉ + ¡¡¤á¤Ş¤¹¡£ MEMO_HELP_COMMANDS %S¤Ç¤Ï¡¢²¼µ­¥³¥Ş¥ó¥É¤¬»È¤¨¤Ş¤¹¡£ @@ -4311,10 +4325,23 @@ ¡¡¡¡¡¡SQLINE VIEW [¥Ñ¥¿¡¼¥ó] [NOEXPIRE] SQLINE COUNT +OPER_HELP_SQLINE_KILL SQLINE¥ê¥¹¥È¤òÊÔ½¸¤Ş¤¿¤Ïɽ¼¨¤·¤Ş¤¹¡£¤³¤Î¥ê¥¹¥È¤ËÅĞÏ¿¤µ¤ì¤¿¥Ş - ¥¹¥¯¤Ë¥Ë¥Ã¥¯¤¬°ìÃפ¹¤ë¥æ¡¼¥¶¤¬IRC¤ËÀܳ¤·¤¿¾ì¹ç¤Ï¡¢¤½¤Î¥æ¡¼ - ¥¶¤òÀÚÃǤ·¡¢IRC¥µ¡¼¥Ğ¤Îµ¡Ç½¤Ë¤è¤Ã¤Æ¤ÏSQLINEÄÉÊü¥Ş¥¹¥¯¤ò³Æ¥µ - ¡¼¥Ğ¤ËÄɲ䵤»¤Ş¤¹¡£ + ¥¹¥¯¤Ë¥Ë¥Ã¥¯¤¬°ìÃפ¹¤ë¥æ¡¼¥¶¤¬IRC¤ËÀܳ¤·¤¿¾ì¹ç¡¢¤Ş¤¿¤ÏÀܳ + ¤·¤Æ¤¤¤ë¥æ¡¼¥¶¤¬¤½¤Î¤è¤¦¤Ê¥Ë¥Ã¥¯¤ËÊѹ¹¤·¤è¤¦¤È¤·¤¿¾ì¹ç¤Ï¡¢¤½ + ¤Î¥æ¡¼¥¶¤òÀÚÃǤ·¡¢IRC¥µ¡¼¥Ğ¤Îµ¡Ç½¤Ë¤è¤Ã¤Æ¤ÏSQLINEÄÉÊü¥Ş¥¹¥¯ + ¤ò³Æ¥µ¡¼¥Ğ¤ËÄɲ䵤»¤Ş¤¹¡£ +OPER_HELP_SQLINE_NOKILL + SQLINE¥ê¥¹¥È¤òÊÔ½¸¤Ş¤¿¤Ïɽ¼¨¤·¤Ş¤¹¡£¤³¤Î¥ê¥¹¥È¤ËÅĞÏ¿¤µ¤ì¤¿¥Ş + ¥¹¥¯¤Ë¥Ë¥Ã¥¯¤¬°ìÃפ¹¤ë¥æ¡¼¥¶¤¬IRC¤ËÀܳ¤·¤¿¾ì¹ç¡¢¤Ş¤¿¤ÏÀܳ + ¤·¤Æ¤¤¤ë¥æ¡¼¥¶¤¬¤½¤Î¤è¤¦¤Ê¥Ë¥Ã¥¯¤ËÊѹ¹¤·¤è¤¦¤È¤·¤¿¾ì¹ç¤Ï¡¢¤½ + ¤Î¥æ¡¼¥¶¤Î¥Ë¥Ã¥¯¤ò¼«Æ°À¸À®¤µ¤ì¤¿¡Ö°ì»ş¥Ë¥Ã¥¯¡×¤ËÊѹ¹¤·¡¢¥Ë¥Ã + ¥¯¤ÎÊѹ¹¤òÂ¥¤¹¥á¥Ã¥»¡¼¥¸¤ò¥æ¡¼¥¶¤ËÁ÷¤ê¤Ş¤¹¡£¤Ş¤¿¡¢IRC¥µ¡¼¥Ğ + ¤Îµ¡Ç½¤Ë¤è¤Ã¤Æ¤ÏSQLINEÄÉÊü¥Ş¥¹¥¯¤ò³Æ¥µ¡¼¥Ğ¤ËÄɲ䵤»¤Ş¤¹¡£ +OPER_HELP_SQLINE_IGNOREOPERS + + IRC¥ª¥Ú¥ì¡¼¥¿¤Ï¡¢SQLINE¤ÎÀ©¸Â¤ò¼õ¤±¤Ş¤»¤ó¡£ +OPER_HELP_SQLINE_END ³Æ¥µ¥Ö¥³¥Ş¥ó¥É¤ÏSGLINE¥³¥Ş¥ó¥É¤ÈƱÍͤËÆ°ºî¤·¤Ş¤¹¡£¾Ü¤·¤¯¤Ï SGLINE¥³¥Ş¥ó¥É¤Î¥Ø¥ë¥×¤ò¤´Í÷¤¯¤À¤µ¤¤¡£ @@ -4496,9 +4523,12 @@ ¤³¤Î¥³¥Ş¥ó¥É¤Î»ÈÍѤÏServices¥¹¡¼¥Ñ¡¼¥æ¡¼¥¶¤ËÀ©¸Â¤µ¤ì¤Æ¤¤¤Ş¤¹¡£ OPER_HELP_UPDATE - ÍÑË¡¡§UPDATE + ÍÑË¡¡§UPDATE [FORCE] - Services¤Ë¥Ç¡¼¥¿¥Ù¡¼¥¹¤ò¤¹¤°¤Ë¥Ç¥£¥¹¥¯¤Ë½ñ¤­¹ş¤Ş¤»¤Ş¤¹¡£ + ¥Ç¡¼¥¿¥Ù¡¼¥¹¥Õ¥¡¥¤¥ë¤Î¹¹¿·´Ö³Ö¤Ë¤«¤«¤ï¤é¤º¡¢¥Ç¡¼¥¿¥Ù¡¼¥¹¤ò¤¹ + ¤°¤Ë¥Ç¥£¥¹¥¯¤Ë½ñ¤­¹ş¤ß¤Ş¤¹¡£¡ÖDatabases are locked (¥Ç¡¼¥¿¥Ù + ¡¼¥¹¤¬¥í¥Ã¥¯¤µ¤ì¤Æ¤¤¤Ş¤¹)¡×¥¨¥é¡¼¤¬È¯À¸¤·¤¿¾ì¹ç¡¢FORCE¥ª¥×¥· + ¥ç¥ó¤ò»ØÄꤹ¤ë¤³¤È¤Ç¥í¥Ã¥¯¤ò²ò½ü¤¹¤ë¤³¤È¤¬¤Ç¤­¤Ş¤¹¡£ ¤³¤Î¥³¥Ş¥ó¥É¤Î»ÈÍѤÏServices¥¢¥É¥ß¥ó¤ËÀ©¸Â¤µ¤ì¤Æ¤¤¤Ş¤¹¡£ diff -uNr ircservices-5.0.19/lang/ja_sjis.l ircservices-5.0.20/lang/ja_sjis.l --- ircservices-5.0.19/lang/ja_sjis.l 2003-05-28 15:16:44 +0900 +++ ircservices-5.0.20/lang/ja_sjis.l 2003-06-02 16:56:14 +0900 @@ -2054,8 +2054,16 @@ RAW ƒeƒLƒXƒg # UPDATE‰“š +OPER_UPDATE_SYNTAX + UPDATE [FORCE] +OPER_UPDATE_FORCE_FAILED + ƒf[ƒ^ƒx[ƒX‚̃ƒbƒN‚ğ‰ğœ‚Å‚«‚Ü‚¹‚ñ‚Å‚µ‚½B OPER_UPDATING ƒf[ƒ^ƒx[ƒX‚ğ•Û‘¶‚µ‚Ä‚¢‚Ü‚·B +OPER_UPDATE_COMPLETE + ƒf[ƒ^ƒx[ƒX‚Ì•Û‘¶‚ªŠ®—¹‚µ‚Ü‚µ‚½B +OPER_UPDATE_FAILED + ƒf[ƒ^ƒx[ƒX‚ğ•Û‘¶‚Å‚«‚Ü‚¹‚ñ‚Å‚µ‚½B # REHASH‰“š OPER_REHASHING @@ -2703,8 +2711,8 @@ ‚Éæ‚è–ß‚µ‚Ü‚·B©“®Ø’fݒ肪—LŒø‚ȃjƒbƒN‚ğg‚Á‚½ê‡‚Æ“¯—l ‚ÉAƒ†[ƒU‚ªIRC‚©‚çØ’f‚³‚ê‚Ü‚·B‚È‚¨ƒ†[ƒU‚ªØ’f‚³‚ꂽŒã‚ÍA “¯‚¶ƒjƒbƒN‚Å‚ÌÄÚ‘±‚ğ–h‚®‚½‚ß‚ÉAServices‚Íu‹^—ƒ†[ƒUv‚Å - ‚P•ªŠÔA‚»‚̃jƒbƒN‚ğ•Û—¯‚µ‚Ü‚·B‚P•ªŠÔ‚ªŒo‚‘O‚ɃjƒbƒN‚ğ—˜—p - ‚µ‚½‚¢ê‡‚ÍRELEASEƒRƒ}ƒ“ƒh‚Æ•Û—¯‚ğ‰ğœ‚Å‚«‚Ü‚·B + %sŠÔA‚»‚̃jƒbƒN‚ğ•Û—¯‚µ‚Ü‚·B•Û—¯ŠÔ‚ª‰ß‚¬‚é‘O‚ɃjƒbƒN‚ğ + —˜—p‚µ‚½‚¢ê‡‚ÍRELEASEƒRƒ}ƒ“ƒh‚Å•Û—¯‚ğ‰ğœ‚Å‚«‚Ü‚·B ‚±‚̃Rƒ}ƒ“ƒh‚ğg‚¤‚É‚ÍAƒjƒbƒN‚Ì”FØ—pƒpƒXƒ[ƒh‚ğ“ü—Í‚·‚é‚©A ƒjƒbƒN‚ɃŠƒ“ƒN‚³‚ê‚Ä‚¢‚é•Ê‚̃jƒbƒN‚ɑ΂µ‚Ä”FØ‚ğs‚¤•K—v‚ª‚  @@ -2715,7 +2723,7 @@ RECOVERƒRƒ}ƒ“ƒhi‚Ü‚½‚Í©“®Ø’fj‚É‚æ‚Á‚ăjƒbƒN‚ªServices‚É •Û—¯‚³‚ê‚Ä‚¢‚éê‡A•Û—¯‚ğ‰ğœ‚µ‚Ü‚·BRELEASE‚ğg‚í‚È‚¢ê‡A - •Û—¯‚Í‚P•ªŒã‚É©“®‰ğœ‚³‚ê‚Ü‚·B + •Û—¯‚Í%sŒã‚É©“®‰ğœ‚³‚ê‚Ü‚·B ‚±‚̃Rƒ}ƒ“ƒh‚ğg‚¤‚É‚ÍAƒjƒbƒN‚Ì”FØ—pƒpƒXƒ[ƒh‚ğ“ü—Í‚·‚é‚©A ƒjƒbƒN‚ɃŠƒ“ƒN‚³‚ê‚Ä‚¢‚é•Ê‚̃jƒbƒN‚ɑ΂µ‚Ä”FØ‚ğs‚¤•K—v‚ª‚  @@ -2993,6 +3001,7 @@ w’肳‚ꂽƒjƒbƒN‚Æ‚»‚ê‚ɃŠƒ“ƒN‚³‚ê‚Ä‚¢‚éƒjƒbƒN‚ğg—p’â~‚É‚µ ‚Ü‚·Bg—p’â~’†‚ÍAƒjƒbƒN‚Ìİ’è‚Í•Û‘¶‚³‚ê‚Ü‚·‚ªAg—p‚·‚邱 ‚Æ‚Í‚Å‚«‚Ü‚¹‚ñBg—p’â~‚ÍUNSUSPENDƒRƒ}ƒ“ƒh‚ʼnğœ‚Å‚«‚Ü‚·B + ŠúŒÀ‚Í%s‚ÌAKILLƒRƒ}ƒ“ƒh‚Æ“¯—l‚ɉğß‚³‚ê‚Ü‚·B ‚±‚̃Rƒ}ƒ“ƒh‚Ìg—p‚ÍServicesƒAƒhƒ~ƒ“‚ɧŒÀ‚³‚ê‚Ä‚¢‚Ü‚·B @@ -3191,7 +3200,7 @@ SECURE ƒZƒLƒ…ƒAİ’è‚ğ•ÏX‚·‚é SECUREOPS ƒIƒyƒŒ[ƒ^Œ ‚ÌŠÇ—ƒŒƒxƒ‹‚ğİ’è‚·‚é LEAVEOPS ʼnQ‰Áƒ†[ƒU‚̃IƒyƒŒ[ƒ^Œ ‚ğ‰ğœ‚µ‚È‚¢ - OPNOTICE OP/DEOP“™‚̃Rƒ}ƒ“ƒhg—p‚Éü’m‚·‚é + OPNOTICE OP/VOICE“™‚̃Rƒ}ƒ“ƒhg—p‚ğƒ`ƒƒƒ“ƒlƒ‹‚Éü’m‚·‚é ENFORCE ©“®ƒIƒyƒŒ[ƒ^Œ E©“®”­Œ¾Œ ŠÇ—İ’è‚ğ•ÏX‚·‚é ‚±‚̃Rƒ}ƒ“ƒh‚Ìg—p‚̓fƒtƒHƒ‹ƒg‚Ń`ƒƒƒ“ƒlƒ‹‚Ì‘nİÒ‚ÉŒÀ‚ç‚ê‚Ä @@ -3317,8 +3326,8 @@ ƒZƒLƒ…ƒAİ’è‚ğ•ÏX‚µ‚Ü‚·BON‚É‚·‚é‚ÆA%s‚ɑ΂µ‚ăjƒbƒN”FØ‚ğ s‚Á‚Ä‚¢‚È‚¢ƒ†[ƒU‚Í©“®ƒIƒyƒŒ[ƒ^Œ ‚È‚Ç‚ÌŒ ŒÀ‚ğ—^‚¦‚ç‚ꂸA - ƒAƒNƒZƒX§ŒÀݒ肪—LŒø‚É‚È‚Á‚Ä‚¢‚éꇂÍAƒ`ƒƒƒ“ƒlƒ‹‚ÉQ‰Á‚· - ‚邱‚Æ‚ào—ˆ‚È‚­‚È‚è‚Ü‚·B + ƒAƒNƒZƒX§ŒÀiRESTRICTEDjݒ肪—LŒø‚É‚È‚Á‚Ä‚¢‚éꇂÍAƒ`ƒƒ + ƒ“ƒlƒ‹‚ÉQ‰Á‚·‚邱‚Æ‚ào—ˆ‚È‚­‚È‚è‚Ü‚·B CHAN_HELP_SET_SECUREOPS —p–@FSET ƒ`ƒƒƒ“ƒlƒ‹ SECUREOPS {ON | OFF} @@ -3335,7 +3344,7 @@ [ƒU‚ª©“®“I‚ɃIƒyƒŒ[ƒ^Œ ‚ğ—^‚¦‚ç‚ê‚Ü‚·‚ªAServices‚̃`ƒƒƒ“ ƒlƒ‹ŠÇ—‚𳂵‚­s‚¤‚½‚ßA‚±‚̃IƒyƒŒ[ƒ^Œ ‚ğ’ÊíA%S‚ª ‰ğœ‚µ‚Ü‚·B‚±‚Ìİ’è‚ğON‚É‚·‚é‚ÆAƒIƒyƒŒ[ƒ^Œ ‚ğ‚»‚Ì‚Ü‚Ü•ú’u - ‚µ‚Ü‚·B + ‚µ‚Ü‚·i‚½‚¾‚µSECUREOPSİ’è‚Í—D悳‚ê‚Ü‚·jB CHAN_HELP_SET_OPNOTICE —p–@FSET ƒ`ƒƒƒ“ƒlƒ‹ OPNOTICE {ON | OFF} @@ -3840,10 +3849,11 @@ ‚±‚̃Rƒ}ƒ“ƒh‚Ìg—p‚ÍServicesƒAƒhƒ~ƒ“‚ɧŒÀ‚³‚ê‚Ä‚¢‚Ü‚·B CHAN_OPER_HELP_SUSPEND - —p–@FSUSPEND [+—LŒøŠúŒÀ] ƒ`ƒƒƒ“ƒlƒ‹ ——R + —p–@FSUSPEND [+ŠúŒÀ] ƒ`ƒƒƒ“ƒlƒ‹ ——R ƒ`ƒƒƒ“ƒlƒ‹‚ğg—p’â~‚É‚µ‚Ü‚·Bƒ†[ƒU‚ª—˜—p‚Å‚«‚È‚­‚È‚é‚Ù‚©A ƒpƒXƒ[ƒh”FØ‚à’â~‚³‚ê‚Ü‚·B‰ğœ‚É‚ÍUNSUSPEND‚ğg‚¢‚Ü‚·B + ŠúŒÀ‚Í%s‚ÌAKILLƒRƒ}ƒ“ƒh‚Æ“¯—l‚ɉğß‚³‚ê‚Ü‚·B ‚±‚̃Rƒ}ƒ“ƒh‚Ìg—p‚ÍServicesƒAƒhƒ~ƒ“‚ɧŒÀ‚³‚ê‚Ä‚¢‚Ü‚·B @@ -3878,10 +3888,14 @@ ’ˆÓFƒƒ‚‚ÍASAVEƒRƒ}ƒ“ƒh‚Å•Û‘¶‚µ‚½‚à‚̂𜂫A‘—MŒã%s‚ª @@@Œo‚‚Ʃ“®“I‚É휂³‚ê‚Ü‚·B -MEMO_HELP_END +MEMO_HELP_END_LEVELS ¦ƒ`ƒƒƒ“ƒlƒ‹‚ւ̃ƒ‚‚ÍA%sˆÈã‚̃AƒNƒZƒX‚ğ‚ƒ†[ƒU @‚ª“Ç‚ß‚Ü‚·B +MEMO_HELP_END_XOP + + ¦ƒ`ƒƒƒ“ƒlƒ‹‚ւ̃ƒ‚‚ÍASOPƒŠƒXƒg‚É“o˜^‚³‚ê‚Ä‚¢‚郆[ƒU‚ª“Ç + @‚ß‚Ü‚·B MEMO_HELP_COMMANDS %S‚Å‚ÍA‰º‹LƒRƒ}ƒ“ƒh‚ªg‚¦‚Ü‚·B @@ -4311,10 +4325,23 @@ @@@SQLINE VIEW [ƒpƒ^[ƒ“] [NOEXPIRE] SQLINE COUNT +OPER_HELP_SQLINE_KILL SQLINEƒŠƒXƒg‚ğ•ÒW‚Ü‚½‚Í•\¦‚µ‚Ü‚·B‚±‚̃ŠƒXƒg‚É“o˜^‚³‚ꂽƒ} - ƒXƒN‚ɃjƒbƒN‚ªˆê’v‚·‚郆[ƒU‚ªIRC‚ÉÚ‘±‚µ‚½ê‡‚ÍA‚»‚̃†[ - ƒU‚ğØ’f‚µAIRCƒT[ƒo‚Ì‹@”\‚É‚æ‚Á‚Ä‚ÍSQLINE’Ç•úƒ}ƒXƒN‚ğŠeƒT - [ƒo‚ɒljÁ‚³‚¹‚Ü‚·B + ƒXƒN‚ɃjƒbƒN‚ªˆê’v‚·‚郆[ƒU‚ªIRC‚ÉÚ‘±‚µ‚½ê‡A‚Ü‚½‚ÍÚ‘± + ‚µ‚Ä‚¢‚郆[ƒU‚ª‚»‚̂悤‚ȃjƒbƒN‚É•ÏX‚µ‚悤‚Æ‚µ‚½ê‡‚ÍA‚» + ‚̃†[ƒU‚ğØ’f‚µAIRCƒT[ƒo‚Ì‹@”\‚É‚æ‚Á‚Ä‚ÍSQLINE’Ç•úƒ}ƒXƒN + ‚ğŠeƒT[ƒo‚ɒljÁ‚³‚¹‚Ü‚·B +OPER_HELP_SQLINE_NOKILL + SQLINEƒŠƒXƒg‚ğ•ÒW‚Ü‚½‚Í•\¦‚µ‚Ü‚·B‚±‚̃ŠƒXƒg‚É“o˜^‚³‚ꂽƒ} + ƒXƒN‚ɃjƒbƒN‚ªˆê’v‚·‚郆[ƒU‚ªIRC‚ÉÚ‘±‚µ‚½ê‡A‚Ü‚½‚ÍÚ‘± + ‚µ‚Ä‚¢‚郆[ƒU‚ª‚»‚̂悤‚ȃjƒbƒN‚É•ÏX‚µ‚悤‚Æ‚µ‚½ê‡‚ÍA‚» + ‚̃†[ƒU‚̃jƒbƒN‚ğ©“®¶¬‚³‚ꂽuˆêƒjƒbƒNv‚É•ÏX‚µAƒjƒb + ƒN‚Ì•ÏX‚𑣂·ƒƒbƒZ[ƒW‚ğƒ†[ƒU‚É‘—‚è‚Ü‚·B‚Ü‚½AIRCƒT[ƒo + ‚Ì‹@”\‚É‚æ‚Á‚Ä‚ÍSQLINE’Ç•úƒ}ƒXƒN‚ğŠeƒT[ƒo‚ɒljÁ‚³‚¹‚Ü‚·B +OPER_HELP_SQLINE_IGNOREOPERS + + IRCƒIƒyƒŒ[ƒ^‚ÍASQLINE‚̧ŒÀ‚ğ󂯂܂¹‚ñB +OPER_HELP_SQLINE_END ŠeƒTƒuƒRƒ}ƒ“ƒh‚ÍSGLINEƒRƒ}ƒ“ƒh‚Æ“¯—l‚É“®ì‚µ‚Ü‚·BÚ‚µ‚­‚Í SGLINEƒRƒ}ƒ“ƒh‚̃wƒ‹ƒv‚ğ‚²——‚­‚¾‚³‚¢B @@ -4496,9 +4523,12 @@ ‚±‚̃Rƒ}ƒ“ƒh‚Ìg—p‚ÍServicesƒX[ƒp[ƒ†[ƒU‚ɧŒÀ‚³‚ê‚Ä‚¢‚Ü‚·B OPER_HELP_UPDATE - —p–@FUPDATE + —p–@FUPDATE [FORCE] - Services‚Ƀf[ƒ^ƒx[ƒX‚ğ‚·‚®‚ɃfƒBƒXƒN‚É‘‚«‚Ü‚¹‚Ü‚·B + ƒf[ƒ^ƒx[ƒXƒtƒ@ƒCƒ‹‚ÌXVŠÔŠu‚É‚©‚©‚í‚炸Aƒf[ƒ^ƒx[ƒX‚ğ‚· + ‚®‚ɃfƒBƒXƒN‚É‘‚«‚İ‚Ü‚·BuDatabases are locked (ƒf[ƒ^ƒx + [ƒX‚ªƒƒbƒN‚³‚ê‚Ä‚¢‚Ü‚·)vƒGƒ‰[‚ª”­¶‚µ‚½ê‡AFORCEƒIƒvƒV + ƒ‡ƒ“‚ğw’è‚·‚邱‚ƂŃƒbƒN‚ğ‰ğœ‚·‚邱‚Æ‚ª‚Å‚«‚Ü‚·B ‚±‚̃Rƒ}ƒ“ƒh‚Ìg—p‚ÍServicesƒAƒhƒ~ƒ“‚ɧŒÀ‚³‚ê‚Ä‚¢‚Ü‚·B diff -uNr ircservices-5.0.19/lang/langstrs.h ircservices-5.0.20/lang/langstrs.h --- ircservices-5.0.19/lang/langstrs.h 2003-05-28 15:19:27 +0900 +++ ircservices-5.0.20/lang/langstrs.h 2003-06-25 03:03:13 +0900 @@ -806,373 +806,382 @@ #define OPER_JUPE_INVALID_NAME 805 #define OPER_JUPE_ALREADY_JUPED 806 #define OPER_RAW_SYNTAX 807 -#define OPER_UPDATING 808 -#define OPER_REHASHING 809 -#define OPER_REHASHED 810 -#define OPER_REHASH_ERROR 811 -#define OPER_IGNORE_LIST 812 -#define OPER_IGNORE_LIST_EMPTY 813 -#define OPER_KILLCLONES_SYNTAX 814 -#define OPER_KILLCLONES_UNKNOWN_NICK 815 -#define OPER_KILLCLONES_KILLED 816 -#define OPER_KILLCLONES_KILLED_AKILL 817 -#define OPER_EXCEPTION_SYNTAX 818 -#define OPER_EXCEPTION_ADD_SYNTAX 819 -#define OPER_EXCEPTION_DEL_SYNTAX 820 -#define OPER_EXCEPTION_MOVE_SYNTAX 821 -#define OPER_EXCEPTION_ALREADY_PRESENT 822 -#define OPER_EXCEPTION_TOO_MANY 823 -#define OPER_EXCEPTION_ADDED 824 -#define OPER_EXCEPTION_MOVED 825 -#define OPER_EXCEPTION_NO_SUCH_ENTRY 826 -#define OPER_EXCEPTION_NOT_FOUND 827 -#define OPER_EXCEPTION_NO_MATCH 828 -#define OPER_EXCEPTION_EMPTY 829 -#define OPER_EXCEPTION_DELETED 830 -#define OPER_EXCEPTION_DELETED_ONE 831 -#define OPER_EXCEPTION_DELETED_SEVERAL 832 -#define OPER_EXCEPTION_LIST_HEADER 833 -#define OPER_EXCEPTION_LIST_COLHEAD 834 -#define OPER_EXCEPTION_LIST_FORMAT 835 -#define OPER_EXCEPTION_VIEW_FORMAT 836 -#define OPER_EXCEPTION_INVALID_LIMIT 837 -#define OPER_EXCEPTION_INVALID_HOSTMASK 838 -#define OPER_SESSION_SYNTAX 839 -#define OPER_SESSION_LIST_SYNTAX 840 -#define OPER_SESSION_VIEW_SYNTAX 841 -#define OPER_SESSION_INVALID_THRESHOLD 842 -#define OPER_SESSION_NOT_FOUND 843 -#define OPER_SESSION_LIST_HEADER 844 -#define OPER_SESSION_LIST_COLHEAD 845 -#define OPER_SESSION_LIST_FORMAT 846 -#define OPER_SESSION_VIEW_FORMAT 847 -#define NEWS_LOGON_TEXT 848 -#define NEWS_OPER_TEXT 849 -#define NEWS_LOGON_SYNTAX 850 -#define NEWS_LOGON_LIST_HEADER 851 -#define NEWS_LOGON_LIST_ENTRY 852 -#define NEWS_LOGON_LIST_NONE 853 -#define NEWS_LOGON_ADD_SYNTAX 854 -#define NEWS_LOGON_ADD_FULL 855 -#define NEWS_LOGON_ADDED 856 -#define NEWS_LOGON_DEL_SYNTAX 857 -#define NEWS_LOGON_DEL_NOT_FOUND 858 -#define NEWS_LOGON_DELETED 859 -#define NEWS_LOGON_DEL_NONE 860 -#define NEWS_LOGON_DELETED_ALL 861 -#define NEWS_OPER_SYNTAX 862 -#define NEWS_OPER_LIST_HEADER 863 -#define NEWS_OPER_LIST_ENTRY 864 -#define NEWS_OPER_LIST_NONE 865 -#define NEWS_OPER_ADD_SYNTAX 866 -#define NEWS_OPER_ADD_FULL 867 -#define NEWS_OPER_ADDED 868 -#define NEWS_OPER_DEL_SYNTAX 869 -#define NEWS_OPER_DEL_NOT_FOUND 870 -#define NEWS_OPER_DELETED 871 -#define NEWS_OPER_DEL_NONE 872 -#define NEWS_OPER_DELETED_ALL 873 -#define NEWS_HELP_LOGON 874 -#define NEWS_HELP_OPER 875 -#define STAT_SERVERS_REMOVE_SERV_FIRST 876 -#define STAT_SERVERS_SERVER_EXISTS 877 -#define STAT_SERVERS_SYNTAX 878 -#define STAT_SERVERS_STATS_TOTAL 879 -#define STAT_SERVERS_STATS_ON_OFFLINE 880 -#define STAT_SERVERS_LASTQUIT_WAS 881 -#define STAT_SERVERS_LIST_HEADER 882 -#define STAT_SERVERS_LIST_FORMAT 883 -#define STAT_SERVERS_LIST_RESULTS 884 -#define STAT_SERVERS_VIEW_HEADER_ONLINE 885 -#define STAT_SERVERS_VIEW_HEADER_OFFLINE 886 -#define STAT_SERVERS_VIEW_LASTJOIN 887 -#define STAT_SERVERS_VIEW_LASTQUIT 888 -#define STAT_SERVERS_VIEW_QUITMSG 889 -#define STAT_SERVERS_VIEW_USERS_OPERS 890 -#define STAT_SERVERS_VIEW_RESULTS 891 -#define STAT_SERVERS_DELETE_SYNTAX 892 -#define STAT_SERVERS_DELETE_DONE 893 -#define STAT_SERVERS_COPY_SYNTAX 894 -#define STAT_SERVERS_COPY_DONE 895 -#define STAT_SERVERS_RENAME_SYNTAX 896 -#define STAT_SERVERS_RENAME_DONE 897 -#define STAT_USERS_SYNTAX 898 -#define STAT_USERS_TOTUSERS 899 -#define STAT_USERS_TOTOPERS 900 -#define STAT_USERS_SERVUSERS 901 -#define STAT_USERS_SERVOPERS 902 -#define NICK_HELP 903 -#define NICK_HELP_EXPIRES 904 -#define NICK_HELP_WARNING 905 -#define NICK_HELP_COMMANDS 906 -#define NICK_HELP_COMMANDS_AUTH 907 -#define NICK_HELP_COMMANDS_IDENTIFY 908 -#define NICK_HELP_COMMANDS_SENDPASS 909 -#define NICK_HELP_COMMANDS_DROP 910 -#define NICK_HELP_COMMANDS_LINK 911 -#define NICK_HELP_COMMANDS_OLDLINK 912 -#define NICK_HELP_COMMANDS_ACCESS 913 -#define NICK_HELP_COMMANDS_AJOIN 914 -#define NICK_HELP_COMMANDS_SET 915 -#define NICK_HELP_COMMANDS_LIST 916 -#define NICK_HELP_COMMANDS_LISTCHANS 917 -#define NICK_HELP_REGISTER 918 -#define NICK_HELP_REGISTER_EMAIL 919 -#define NICK_HELP_REGISTER_EMAIL_REQ 920 -#define NICK_HELP_REGISTER_EMAIL_AUTH 921 -#define NICK_HELP_REGISTER_END 922 -#define NICK_HELP_AUTH 923 -#define NICK_HELP_SENDAUTH 924 -#define NICK_HELP_SENDPASS 925 -#define NICK_HELP_IDENTIFY 926 -#define NICK_HELP_DROP 927 -#define NICK_HELP_DROP_LINK 928 -#define NICK_HELP_DROP_END 929 -#define NICK_HELP_OLD_LINK 930 -#define NICK_HELP_LINK 931 -#define NICK_HELP_OLD_UNLINK 932 -#define NICK_HELP_UNLINK 933 -#define NICK_HELP_LISTLINKS 934 -#define NICK_HELP_ACCESS 935 -#define NICK_HELP_SET 936 -#define NICK_HELP_SET_OPTION_MAINNICK 937 -#define NICK_HELP_SET_END 938 -#define NICK_HELP_SET_PASSWORD 939 -#define NICK_HELP_SET_LANGUAGE 940 -#define NICK_HELP_SET_URL 941 -#define NICK_HELP_SET_EMAIL 942 -#define NICK_HELP_SET_INFO 943 -#define NICK_HELP_SET_KILL 944 -#define NICK_HELP_SET_SECURE 945 -#define NICK_HELP_SET_PRIVATE 946 -#define NICK_HELP_SET_HIDE 947 -#define NICK_HELP_SET_TIMEZONE 948 -#define NICK_HELP_SET_MAINNICK 949 -#define NICK_HELP_UNSET 950 -#define NICK_HELP_UNSET_REQ_EMAIL 951 -#define NICK_HELP_RECOVER 952 -#define NICK_HELP_RELEASE 953 -#define NICK_HELP_GHOST 954 -#define NICK_HELP_INFO 955 -#define NICK_HELP_INFO_AUTH 956 -#define NICK_HELP_LISTCHANS 957 -#define NICK_HELP_LIST 958 -#define NICK_HELP_LIST_OPERSONLY 959 -#define NICK_HELP_LISTEMAIL 960 -#define NICK_HELP_STATUS 961 -#define NICK_HELP_AJOIN 962 -#define NICK_OPER_HELP_COMMANDS 963 -#define NICK_OPER_HELP_COMMANDS_GETPASS 964 -#define NICK_OPER_HELP_COMMANDS_FORBID 965 -#define NICK_OPER_HELP_COMMANDS_LISTLINKS 966 -#define NICK_OPER_HELP_COMMANDS_SETAUTH 967 -#define NICK_OPER_HELP_COMMANDS_END 968 -#define NICK_OPER_HELP_DROPNICK 969 -#define NICK_OPER_HELP_SET 970 -#define NICK_OPER_HELP_SET_NOEXPIRE 971 -#define NICK_OPER_HELP_UNSET 972 -#define NICK_OPER_HELP_OLD_UNLINK 973 -#define NICK_OPER_HELP_UNLINK 974 -#define NICK_OPER_HELP_OLD_LISTLINKS 975 -#define NICK_OPER_HELP_LISTLINKS 976 -#define NICK_OPER_HELP_ACCESS 977 -#define NICK_OPER_HELP_INFO 978 -#define NICK_OPER_HELP_LISTCHANS 979 -#define NICK_OPER_HELP_LIST 980 -#define NICK_OPER_HELP_LIST_AUTH 981 -#define NICK_OPER_HELP_LISTEMAIL 982 -#define NICK_OPER_HELP_LISTEMAIL_AUTH 983 -#define NICK_OPER_HELP_GETPASS 984 -#define NICK_OPER_HELP_FORBID 985 -#define NICK_OPER_HELP_SUSPEND 986 -#define NICK_OPER_HELP_UNSUSPEND 987 -#define NICK_OPER_HELP_AJOIN 988 -#define NICK_OPER_HELP_SETAUTH 989 -#define NICK_OPER_HELP_GETAUTH 990 -#define NICK_OPER_HELP_CLEARAUTH 991 -#define CHAN_HELP_REQSOP_LEVXOP 992 -#define CHAN_HELP_REQSOP_LEV 993 -#define CHAN_HELP_REQSOP_XOP 994 -#define CHAN_HELP_REQAOP_LEVXOP 995 -#define CHAN_HELP_REQAOP_LEV 996 -#define CHAN_HELP_REQAOP_XOP 997 -#define CHAN_HELP_REQHOP_LEVXOP 998 -#define CHAN_HELP_REQHOP_LEV 999 -#define CHAN_HELP_REQHOP_XOP 1000 -#define CHAN_HELP_REQVOP_LEVXOP 1001 -#define CHAN_HELP_REQVOP_LEV 1002 -#define CHAN_HELP_REQVOP_XOP 1003 -#define CHAN_HELP 1004 -#define CHAN_HELP_EXPIRES 1005 -#define CHAN_HELP_COMMANDS 1006 -#define CHAN_HELP_COMMANDS_SENDPASS 1007 -#define CHAN_HELP_COMMANDS_DROP 1008 -#define CHAN_HELP_COMMANDS_LIST 1009 -#define CHAN_HELP_COMMANDS_AKICK 1010 -#define CHAN_HELP_COMMANDS_LEVELS 1011 -#define CHAN_HELP_COMMANDS_XOP 1012 -#define CHAN_HELP_COMMANDS_HOP 1013 -#define CHAN_HELP_COMMANDS_OPVOICE 1014 -#define CHAN_HELP_COMMANDS_HALFOP 1015 -#define CHAN_HELP_COMMANDS_PROTECT 1016 -#define CHAN_HELP_COMMANDS_INVITE 1017 -#define CHAN_HELP_REGISTER 1018 -#define CHAN_HELP_REGISTER_ADMINONLY 1019 -#define CHAN_HELP_SENDPASS 1020 -#define CHAN_HELP_IDENTIFY 1021 -#define CHAN_HELP_DROP 1022 -#define CHAN_HELP_SET 1023 -#define CHAN_HELP_SET_FOUNDER 1024 -#define CHAN_HELP_SET_SUCCESSOR 1025 -#define CHAN_HELP_SET_PASSWORD 1026 -#define CHAN_HELP_SET_DESC 1027 -#define CHAN_HELP_SET_URL 1028 -#define CHAN_HELP_SET_EMAIL 1029 -#define CHAN_HELP_SET_ENTRYMSG 1030 -#define CHAN_HELP_SET_KEEPTOPIC 1031 -#define CHAN_HELP_SET_TOPICLOCK 1032 -#define CHAN_HELP_SET_MLOCK 1033 -#define CHAN_HELP_SET_HIDE 1034 -#define CHAN_HELP_SET_PRIVATE 1035 -#define CHAN_HELP_SET_RESTRICTED 1036 -#define CHAN_HELP_SET_SECURE 1037 -#define CHAN_HELP_SET_SECUREOPS 1038 -#define CHAN_HELP_SET_LEAVEOPS 1039 -#define CHAN_HELP_SET_OPNOTICE 1040 -#define CHAN_HELP_SET_ENFORCE 1041 -#define CHAN_HELP_UNSET 1042 -#define CHAN_HELP_SOP 1043 -#define CHAN_HELP_SOP_MID1 1044 -#define CHAN_HELP_SOP_MID1_CHANPROT 1045 -#define CHAN_HELP_SOP_MID2 1046 -#define CHAN_HELP_SOP_MID2_HALFOP 1047 -#define CHAN_HELP_SOP_END 1048 -#define CHAN_HELP_AOP 1049 -#define CHAN_HELP_AOP_MID 1050 -#define CHAN_HELP_AOP_MID_HALFOP 1051 -#define CHAN_HELP_AOP_END 1052 -#define CHAN_HELP_HOP 1053 -#define CHAN_HELP_VOP 1054 -#define CHAN_HELP_ACCESS 1055 -#define CHAN_HELP_ACCESS_XOP 1056 -#define CHAN_HELP_ACCESS_XOP_HALFOP 1057 -#define CHAN_HELP_ACCESS_LEVELS 1058 -#define CHAN_HELP_ACCESS_LEVELS_HALFOP 1059 -#define CHAN_HELP_ACCESS_LEVELS_END 1060 -#define CHAN_HELP_LEVELS 1061 -#define CHAN_HELP_LEVELS_XOP 1062 -#define CHAN_HELP_LEVELS_XOP_HOP 1063 -#define CHAN_HELP_LEVELS_END 1064 -#define CHAN_HELP_LEVELS_DESC 1065 -#define CHAN_HELP_AKICK 1066 -#define CHAN_HELP_INFO 1067 -#define CHAN_HELP_LIST 1068 -#define CHAN_HELP_LIST_OPERSONLY 1069 -#define CHAN_HELP_OP 1070 -#define CHAN_HELP_DEOP 1071 -#define CHAN_HELP_VOICE 1072 -#define CHAN_HELP_DEVOICE 1073 -#define CHAN_HELP_HALFOP 1074 -#define CHAN_HELP_DEHALFOP 1075 -#define CHAN_HELP_PROTECT 1076 -#define CHAN_HELP_DEPROTECT 1077 -#define CHAN_HELP_INVITE 1078 -#define CHAN_HELP_UNBAN 1079 -#define CHAN_HELP_KICK 1080 -#define CHAN_HELP_KICK_PROTECTED 1081 -#define CHAN_HELP_TOPIC 1082 -#define CHAN_HELP_CLEAR 1083 -#define CHAN_HELP_CLEAR_EXCEPTIONS 1084 -#define CHAN_HELP_CLEAR_MID 1085 -#define CHAN_HELP_CLEAR_HALFOPS 1086 -#define CHAN_HELP_CLEAR_END 1087 -#define CHAN_HELP_STATUS 1088 -#define CHAN_OPER_HELP_COMMANDS 1089 -#define CHAN_OPER_HELP_COMMANDS_GETPASS 1090 -#define CHAN_OPER_HELP_COMMANDS_FORBID 1091 -#define CHAN_OPER_HELP_COMMANDS_END 1092 -#define CHAN_OPER_HELP_DROP 1093 -#define CHAN_OPER_HELP_SET 1094 -#define CHAN_OPER_HELP_SET_NOEXPIRE 1095 -#define CHAN_OPER_HELP_UNSET 1096 -#define CHAN_OPER_HELP_INFO 1097 -#define CHAN_OPER_HELP_LIST 1098 -#define CHAN_OPER_HELP_GETPASS 1099 -#define CHAN_OPER_HELP_FORBID 1100 -#define CHAN_OPER_HELP_SUSPEND 1101 -#define CHAN_OPER_HELP_UNSUSPEND 1102 -#define MEMO_HELP 1103 -#define MEMO_HELP_EXPIRES 1104 -#define MEMO_HELP_END 1105 -#define MEMO_HELP_COMMANDS 1106 -#define MEMO_HELP_COMMANDS_FORWARD 1107 -#define MEMO_HELP_COMMANDS_SAVE 1108 -#define MEMO_HELP_COMMANDS_DEL 1109 -#define MEMO_HELP_COMMANDS_IGNORE 1110 -#define MEMO_HELP_SEND 1111 -#define MEMO_HELP_LIST 1112 -#define MEMO_HELP_LIST_EXPIRE 1113 -#define MEMO_HELP_READ 1114 -#define MEMO_HELP_SAVE 1115 -#define MEMO_HELP_DEL 1116 -#define MEMO_HELP_SET 1117 -#define MEMO_HELP_SET_OPTION_FORWARD 1118 -#define MEMO_HELP_SET_END 1119 -#define MEMO_HELP_SET_NOTIFY 1120 -#define MEMO_HELP_SET_LIMIT 1121 -#define MEMO_HELP_INFO 1122 -#define MEMO_OPER_HELP_COMMANDS 1123 -#define MEMO_OPER_HELP_SET_LIMIT 1124 -#define MEMO_OPER_HELP_INFO 1125 -#define MEMO_HELP_FORWARD 1126 -#define MEMO_HELP_SET_FORWARD 1127 -#define MEMO_HELP_IGNORE 1128 -#define OPER_HELP 1129 -#define OPER_HELP_COMMANDS 1130 -#define OPER_HELP_COMMANDS_SERVOPER 1131 -#define OPER_HELP_COMMANDS_AKILL 1132 -#define OPER_HELP_COMMANDS_EXCLUDE 1133 -#define OPER_HELP_COMMANDS_SLINE 1134 -#define OPER_HELP_COMMANDS_SESSION 1135 -#define OPER_HELP_COMMANDS_NEWS 1136 -#define OPER_HELP_COMMANDS_SERVADMIN 1137 -#define OPER_HELP_COMMANDS_SERVROOT 1138 -#define OPER_HELP_COMMANDS_RAW 1139 -#define OPER_HELP_GLOBAL 1140 -#define OPER_HELP_STATS 1141 -#define OPER_HELP_SERVERMAP 1142 -#define OPER_HELP_OPER 1143 -#define OPER_HELP_ADMIN 1144 -#define OPER_HELP_MODE 1145 -#define OPER_HELP_CLEARMODES 1146 -#define OPER_HELP_CLEARCHAN 1147 -#define OPER_HELP_KICK 1148 -#define OPER_HELP_AKILL 1149 -#define OPER_HELP_AKILL_OPERMAXEXPIRY 1150 -#define OPER_HELP_AKILL_END 1151 -#define OPER_HELP_EXCLUDE 1152 -#define OPER_HELP_SGLINE 1153 -#define OPER_HELP_SQLINE 1154 -#define OPER_HELP_SZLINE 1155 -#define OPER_HELP_EXCEPTION 1156 -#define OPER_HELP_SESSION 1157 -#define OPER_HELP_SU 1158 -#define OPER_HELP_SET 1159 -#define OPER_HELP_SET_READONLY 1160 -#define OPER_HELP_SET_DEBUG 1161 -#define OPER_HELP_SET_SUPASS 1162 -#define OPER_HELP_JUPE 1163 -#define OPER_HELP_RAW 1164 -#define OPER_HELP_UPDATE 1165 -#define OPER_HELP_QUIT 1166 -#define OPER_HELP_SHUTDOWN 1167 -#define OPER_HELP_RESTART 1168 -#define OPER_HELP_REHASH 1169 -#define OPER_HELP_KILLCLONES 1170 -#define STAT_HELP 1171 -#define STAT_HELP_COMMANDS 1172 -#define STAT_HELP_SERVERS 1173 -#define STAT_HELP_USERS 1174 -#define STAT_OPER_HELP_SERVERS 1175 +#define OPER_UPDATE_SYNTAX 808 +#define OPER_UPDATE_FORCE_FAILED 809 +#define OPER_UPDATING 810 +#define OPER_UPDATE_COMPLETE 811 +#define OPER_UPDATE_FAILED 812 +#define OPER_REHASHING 813 +#define OPER_REHASHED 814 +#define OPER_REHASH_ERROR 815 +#define OPER_IGNORE_LIST 816 +#define OPER_IGNORE_LIST_EMPTY 817 +#define OPER_KILLCLONES_SYNTAX 818 +#define OPER_KILLCLONES_UNKNOWN_NICK 819 +#define OPER_KILLCLONES_KILLED 820 +#define OPER_KILLCLONES_KILLED_AKILL 821 +#define OPER_EXCEPTION_SYNTAX 822 +#define OPER_EXCEPTION_ADD_SYNTAX 823 +#define OPER_EXCEPTION_DEL_SYNTAX 824 +#define OPER_EXCEPTION_MOVE_SYNTAX 825 +#define OPER_EXCEPTION_ALREADY_PRESENT 826 +#define OPER_EXCEPTION_TOO_MANY 827 +#define OPER_EXCEPTION_ADDED 828 +#define OPER_EXCEPTION_MOVED 829 +#define OPER_EXCEPTION_NO_SUCH_ENTRY 830 +#define OPER_EXCEPTION_NOT_FOUND 831 +#define OPER_EXCEPTION_NO_MATCH 832 +#define OPER_EXCEPTION_EMPTY 833 +#define OPER_EXCEPTION_DELETED 834 +#define OPER_EXCEPTION_DELETED_ONE 835 +#define OPER_EXCEPTION_DELETED_SEVERAL 836 +#define OPER_EXCEPTION_LIST_HEADER 837 +#define OPER_EXCEPTION_LIST_COLHEAD 838 +#define OPER_EXCEPTION_LIST_FORMAT 839 +#define OPER_EXCEPTION_VIEW_FORMAT 840 +#define OPER_EXCEPTION_INVALID_LIMIT 841 +#define OPER_EXCEPTION_INVALID_HOSTMASK 842 +#define OPER_SESSION_SYNTAX 843 +#define OPER_SESSION_LIST_SYNTAX 844 +#define OPER_SESSION_VIEW_SYNTAX 845 +#define OPER_SESSION_INVALID_THRESHOLD 846 +#define OPER_SESSION_NOT_FOUND 847 +#define OPER_SESSION_LIST_HEADER 848 +#define OPER_SESSION_LIST_COLHEAD 849 +#define OPER_SESSION_LIST_FORMAT 850 +#define OPER_SESSION_VIEW_FORMAT 851 +#define NEWS_LOGON_TEXT 852 +#define NEWS_OPER_TEXT 853 +#define NEWS_LOGON_SYNTAX 854 +#define NEWS_LOGON_LIST_HEADER 855 +#define NEWS_LOGON_LIST_ENTRY 856 +#define NEWS_LOGON_LIST_NONE 857 +#define NEWS_LOGON_ADD_SYNTAX 858 +#define NEWS_LOGON_ADD_FULL 859 +#define NEWS_LOGON_ADDED 860 +#define NEWS_LOGON_DEL_SYNTAX 861 +#define NEWS_LOGON_DEL_NOT_FOUND 862 +#define NEWS_LOGON_DELETED 863 +#define NEWS_LOGON_DEL_NONE 864 +#define NEWS_LOGON_DELETED_ALL 865 +#define NEWS_OPER_SYNTAX 866 +#define NEWS_OPER_LIST_HEADER 867 +#define NEWS_OPER_LIST_ENTRY 868 +#define NEWS_OPER_LIST_NONE 869 +#define NEWS_OPER_ADD_SYNTAX 870 +#define NEWS_OPER_ADD_FULL 871 +#define NEWS_OPER_ADDED 872 +#define NEWS_OPER_DEL_SYNTAX 873 +#define NEWS_OPER_DEL_NOT_FOUND 874 +#define NEWS_OPER_DELETED 875 +#define NEWS_OPER_DEL_NONE 876 +#define NEWS_OPER_DELETED_ALL 877 +#define NEWS_HELP_LOGON 878 +#define NEWS_HELP_OPER 879 +#define STAT_SERVERS_REMOVE_SERV_FIRST 880 +#define STAT_SERVERS_SERVER_EXISTS 881 +#define STAT_SERVERS_SYNTAX 882 +#define STAT_SERVERS_STATS_TOTAL 883 +#define STAT_SERVERS_STATS_ON_OFFLINE 884 +#define STAT_SERVERS_LASTQUIT_WAS 885 +#define STAT_SERVERS_LIST_HEADER 886 +#define STAT_SERVERS_LIST_FORMAT 887 +#define STAT_SERVERS_LIST_RESULTS 888 +#define STAT_SERVERS_VIEW_HEADER_ONLINE 889 +#define STAT_SERVERS_VIEW_HEADER_OFFLINE 890 +#define STAT_SERVERS_VIEW_LASTJOIN 891 +#define STAT_SERVERS_VIEW_LASTQUIT 892 +#define STAT_SERVERS_VIEW_QUITMSG 893 +#define STAT_SERVERS_VIEW_USERS_OPERS 894 +#define STAT_SERVERS_VIEW_RESULTS 895 +#define STAT_SERVERS_DELETE_SYNTAX 896 +#define STAT_SERVERS_DELETE_DONE 897 +#define STAT_SERVERS_COPY_SYNTAX 898 +#define STAT_SERVERS_COPY_DONE 899 +#define STAT_SERVERS_RENAME_SYNTAX 900 +#define STAT_SERVERS_RENAME_DONE 901 +#define STAT_USERS_SYNTAX 902 +#define STAT_USERS_TOTUSERS 903 +#define STAT_USERS_TOTOPERS 904 +#define STAT_USERS_SERVUSERS 905 +#define STAT_USERS_SERVOPERS 906 +#define NICK_HELP 907 +#define NICK_HELP_EXPIRES 908 +#define NICK_HELP_WARNING 909 +#define NICK_HELP_COMMANDS 910 +#define NICK_HELP_COMMANDS_AUTH 911 +#define NICK_HELP_COMMANDS_IDENTIFY 912 +#define NICK_HELP_COMMANDS_SENDPASS 913 +#define NICK_HELP_COMMANDS_DROP 914 +#define NICK_HELP_COMMANDS_LINK 915 +#define NICK_HELP_COMMANDS_OLDLINK 916 +#define NICK_HELP_COMMANDS_ACCESS 917 +#define NICK_HELP_COMMANDS_AJOIN 918 +#define NICK_HELP_COMMANDS_SET 919 +#define NICK_HELP_COMMANDS_LIST 920 +#define NICK_HELP_COMMANDS_LISTCHANS 921 +#define NICK_HELP_REGISTER 922 +#define NICK_HELP_REGISTER_EMAIL 923 +#define NICK_HELP_REGISTER_EMAIL_REQ 924 +#define NICK_HELP_REGISTER_EMAIL_AUTH 925 +#define NICK_HELP_REGISTER_END 926 +#define NICK_HELP_AUTH 927 +#define NICK_HELP_SENDAUTH 928 +#define NICK_HELP_SENDPASS 929 +#define NICK_HELP_IDENTIFY 930 +#define NICK_HELP_DROP 931 +#define NICK_HELP_DROP_LINK 932 +#define NICK_HELP_DROP_END 933 +#define NICK_HELP_OLD_LINK 934 +#define NICK_HELP_LINK 935 +#define NICK_HELP_OLD_UNLINK 936 +#define NICK_HELP_UNLINK 937 +#define NICK_HELP_LISTLINKS 938 +#define NICK_HELP_ACCESS 939 +#define NICK_HELP_SET 940 +#define NICK_HELP_SET_OPTION_MAINNICK 941 +#define NICK_HELP_SET_END 942 +#define NICK_HELP_SET_PASSWORD 943 +#define NICK_HELP_SET_LANGUAGE 944 +#define NICK_HELP_SET_URL 945 +#define NICK_HELP_SET_EMAIL 946 +#define NICK_HELP_SET_INFO 947 +#define NICK_HELP_SET_KILL 948 +#define NICK_HELP_SET_SECURE 949 +#define NICK_HELP_SET_PRIVATE 950 +#define NICK_HELP_SET_HIDE 951 +#define NICK_HELP_SET_TIMEZONE 952 +#define NICK_HELP_SET_MAINNICK 953 +#define NICK_HELP_UNSET 954 +#define NICK_HELP_UNSET_REQ_EMAIL 955 +#define NICK_HELP_RECOVER 956 +#define NICK_HELP_RELEASE 957 +#define NICK_HELP_GHOST 958 +#define NICK_HELP_INFO 959 +#define NICK_HELP_INFO_AUTH 960 +#define NICK_HELP_LISTCHANS 961 +#define NICK_HELP_LIST 962 +#define NICK_HELP_LIST_OPERSONLY 963 +#define NICK_HELP_LISTEMAIL 964 +#define NICK_HELP_STATUS 965 +#define NICK_HELP_AJOIN 966 +#define NICK_OPER_HELP_COMMANDS 967 +#define NICK_OPER_HELP_COMMANDS_GETPASS 968 +#define NICK_OPER_HELP_COMMANDS_FORBID 969 +#define NICK_OPER_HELP_COMMANDS_LISTLINKS 970 +#define NICK_OPER_HELP_COMMANDS_SETAUTH 971 +#define NICK_OPER_HELP_COMMANDS_END 972 +#define NICK_OPER_HELP_DROPNICK 973 +#define NICK_OPER_HELP_SET 974 +#define NICK_OPER_HELP_SET_NOEXPIRE 975 +#define NICK_OPER_HELP_UNSET 976 +#define NICK_OPER_HELP_OLD_UNLINK 977 +#define NICK_OPER_HELP_UNLINK 978 +#define NICK_OPER_HELP_OLD_LISTLINKS 979 +#define NICK_OPER_HELP_LISTLINKS 980 +#define NICK_OPER_HELP_ACCESS 981 +#define NICK_OPER_HELP_INFO 982 +#define NICK_OPER_HELP_LISTCHANS 983 +#define NICK_OPER_HELP_LIST 984 +#define NICK_OPER_HELP_LIST_AUTH 985 +#define NICK_OPER_HELP_LISTEMAIL 986 +#define NICK_OPER_HELP_LISTEMAIL_AUTH 987 +#define NICK_OPER_HELP_GETPASS 988 +#define NICK_OPER_HELP_FORBID 989 +#define NICK_OPER_HELP_SUSPEND 990 +#define NICK_OPER_HELP_UNSUSPEND 991 +#define NICK_OPER_HELP_AJOIN 992 +#define NICK_OPER_HELP_SETAUTH 993 +#define NICK_OPER_HELP_GETAUTH 994 +#define NICK_OPER_HELP_CLEARAUTH 995 +#define CHAN_HELP_REQSOP_LEVXOP 996 +#define CHAN_HELP_REQSOP_LEV 997 +#define CHAN_HELP_REQSOP_XOP 998 +#define CHAN_HELP_REQAOP_LEVXOP 999 +#define CHAN_HELP_REQAOP_LEV 1000 +#define CHAN_HELP_REQAOP_XOP 1001 +#define CHAN_HELP_REQHOP_LEVXOP 1002 +#define CHAN_HELP_REQHOP_LEV 1003 +#define CHAN_HELP_REQHOP_XOP 1004 +#define CHAN_HELP_REQVOP_LEVXOP 1005 +#define CHAN_HELP_REQVOP_LEV 1006 +#define CHAN_HELP_REQVOP_XOP 1007 +#define CHAN_HELP 1008 +#define CHAN_HELP_EXPIRES 1009 +#define CHAN_HELP_COMMANDS 1010 +#define CHAN_HELP_COMMANDS_SENDPASS 1011 +#define CHAN_HELP_COMMANDS_DROP 1012 +#define CHAN_HELP_COMMANDS_LIST 1013 +#define CHAN_HELP_COMMANDS_AKICK 1014 +#define CHAN_HELP_COMMANDS_LEVELS 1015 +#define CHAN_HELP_COMMANDS_XOP 1016 +#define CHAN_HELP_COMMANDS_HOP 1017 +#define CHAN_HELP_COMMANDS_OPVOICE 1018 +#define CHAN_HELP_COMMANDS_HALFOP 1019 +#define CHAN_HELP_COMMANDS_PROTECT 1020 +#define CHAN_HELP_COMMANDS_INVITE 1021 +#define CHAN_HELP_REGISTER 1022 +#define CHAN_HELP_REGISTER_ADMINONLY 1023 +#define CHAN_HELP_SENDPASS 1024 +#define CHAN_HELP_IDENTIFY 1025 +#define CHAN_HELP_DROP 1026 +#define CHAN_HELP_SET 1027 +#define CHAN_HELP_SET_FOUNDER 1028 +#define CHAN_HELP_SET_SUCCESSOR 1029 +#define CHAN_HELP_SET_PASSWORD 1030 +#define CHAN_HELP_SET_DESC 1031 +#define CHAN_HELP_SET_URL 1032 +#define CHAN_HELP_SET_EMAIL 1033 +#define CHAN_HELP_SET_ENTRYMSG 1034 +#define CHAN_HELP_SET_KEEPTOPIC 1035 +#define CHAN_HELP_SET_TOPICLOCK 1036 +#define CHAN_HELP_SET_MLOCK 1037 +#define CHAN_HELP_SET_HIDE 1038 +#define CHAN_HELP_SET_PRIVATE 1039 +#define CHAN_HELP_SET_RESTRICTED 1040 +#define CHAN_HELP_SET_SECURE 1041 +#define CHAN_HELP_SET_SECUREOPS 1042 +#define CHAN_HELP_SET_LEAVEOPS 1043 +#define CHAN_HELP_SET_OPNOTICE 1044 +#define CHAN_HELP_SET_ENFORCE 1045 +#define CHAN_HELP_UNSET 1046 +#define CHAN_HELP_SOP 1047 +#define CHAN_HELP_SOP_MID1 1048 +#define CHAN_HELP_SOP_MID1_CHANPROT 1049 +#define CHAN_HELP_SOP_MID2 1050 +#define CHAN_HELP_SOP_MID2_HALFOP 1051 +#define CHAN_HELP_SOP_END 1052 +#define CHAN_HELP_AOP 1053 +#define CHAN_HELP_AOP_MID 1054 +#define CHAN_HELP_AOP_MID_HALFOP 1055 +#define CHAN_HELP_AOP_END 1056 +#define CHAN_HELP_HOP 1057 +#define CHAN_HELP_VOP 1058 +#define CHAN_HELP_ACCESS 1059 +#define CHAN_HELP_ACCESS_XOP 1060 +#define CHAN_HELP_ACCESS_XOP_HALFOP 1061 +#define CHAN_HELP_ACCESS_LEVELS 1062 +#define CHAN_HELP_ACCESS_LEVELS_HALFOP 1063 +#define CHAN_HELP_ACCESS_LEVELS_END 1064 +#define CHAN_HELP_LEVELS 1065 +#define CHAN_HELP_LEVELS_XOP 1066 +#define CHAN_HELP_LEVELS_XOP_HOP 1067 +#define CHAN_HELP_LEVELS_END 1068 +#define CHAN_HELP_LEVELS_DESC 1069 +#define CHAN_HELP_AKICK 1070 +#define CHAN_HELP_INFO 1071 +#define CHAN_HELP_LIST 1072 +#define CHAN_HELP_LIST_OPERSONLY 1073 +#define CHAN_HELP_OP 1074 +#define CHAN_HELP_DEOP 1075 +#define CHAN_HELP_VOICE 1076 +#define CHAN_HELP_DEVOICE 1077 +#define CHAN_HELP_HALFOP 1078 +#define CHAN_HELP_DEHALFOP 1079 +#define CHAN_HELP_PROTECT 1080 +#define CHAN_HELP_DEPROTECT 1081 +#define CHAN_HELP_INVITE 1082 +#define CHAN_HELP_UNBAN 1083 +#define CHAN_HELP_KICK 1084 +#define CHAN_HELP_KICK_PROTECTED 1085 +#define CHAN_HELP_TOPIC 1086 +#define CHAN_HELP_CLEAR 1087 +#define CHAN_HELP_CLEAR_EXCEPTIONS 1088 +#define CHAN_HELP_CLEAR_MID 1089 +#define CHAN_HELP_CLEAR_HALFOPS 1090 +#define CHAN_HELP_CLEAR_END 1091 +#define CHAN_HELP_STATUS 1092 +#define CHAN_OPER_HELP_COMMANDS 1093 +#define CHAN_OPER_HELP_COMMANDS_GETPASS 1094 +#define CHAN_OPER_HELP_COMMANDS_FORBID 1095 +#define CHAN_OPER_HELP_COMMANDS_END 1096 +#define CHAN_OPER_HELP_DROP 1097 +#define CHAN_OPER_HELP_SET 1098 +#define CHAN_OPER_HELP_SET_NOEXPIRE 1099 +#define CHAN_OPER_HELP_UNSET 1100 +#define CHAN_OPER_HELP_INFO 1101 +#define CHAN_OPER_HELP_LIST 1102 +#define CHAN_OPER_HELP_GETPASS 1103 +#define CHAN_OPER_HELP_FORBID 1104 +#define CHAN_OPER_HELP_SUSPEND 1105 +#define CHAN_OPER_HELP_UNSUSPEND 1106 +#define MEMO_HELP 1107 +#define MEMO_HELP_EXPIRES 1108 +#define MEMO_HELP_END_LEVELS 1109 +#define MEMO_HELP_END_XOP 1110 +#define MEMO_HELP_COMMANDS 1111 +#define MEMO_HELP_COMMANDS_FORWARD 1112 +#define MEMO_HELP_COMMANDS_SAVE 1113 +#define MEMO_HELP_COMMANDS_DEL 1114 +#define MEMO_HELP_COMMANDS_IGNORE 1115 +#define MEMO_HELP_SEND 1116 +#define MEMO_HELP_LIST 1117 +#define MEMO_HELP_LIST_EXPIRE 1118 +#define MEMO_HELP_READ 1119 +#define MEMO_HELP_SAVE 1120 +#define MEMO_HELP_DEL 1121 +#define MEMO_HELP_SET 1122 +#define MEMO_HELP_SET_OPTION_FORWARD 1123 +#define MEMO_HELP_SET_END 1124 +#define MEMO_HELP_SET_NOTIFY 1125 +#define MEMO_HELP_SET_LIMIT 1126 +#define MEMO_HELP_INFO 1127 +#define MEMO_OPER_HELP_COMMANDS 1128 +#define MEMO_OPER_HELP_SET_LIMIT 1129 +#define MEMO_OPER_HELP_INFO 1130 +#define MEMO_HELP_FORWARD 1131 +#define MEMO_HELP_SET_FORWARD 1132 +#define MEMO_HELP_IGNORE 1133 +#define OPER_HELP 1134 +#define OPER_HELP_COMMANDS 1135 +#define OPER_HELP_COMMANDS_SERVOPER 1136 +#define OPER_HELP_COMMANDS_AKILL 1137 +#define OPER_HELP_COMMANDS_EXCLUDE 1138 +#define OPER_HELP_COMMANDS_SLINE 1139 +#define OPER_HELP_COMMANDS_SESSION 1140 +#define OPER_HELP_COMMANDS_NEWS 1141 +#define OPER_HELP_COMMANDS_SERVADMIN 1142 +#define OPER_HELP_COMMANDS_SERVROOT 1143 +#define OPER_HELP_COMMANDS_RAW 1144 +#define OPER_HELP_GLOBAL 1145 +#define OPER_HELP_STATS 1146 +#define OPER_HELP_SERVERMAP 1147 +#define OPER_HELP_OPER 1148 +#define OPER_HELP_ADMIN 1149 +#define OPER_HELP_MODE 1150 +#define OPER_HELP_CLEARMODES 1151 +#define OPER_HELP_CLEARCHAN 1152 +#define OPER_HELP_KICK 1153 +#define OPER_HELP_AKILL 1154 +#define OPER_HELP_AKILL_OPERMAXEXPIRY 1155 +#define OPER_HELP_AKILL_END 1156 +#define OPER_HELP_EXCLUDE 1157 +#define OPER_HELP_SGLINE 1158 +#define OPER_HELP_SQLINE 1159 +#define OPER_HELP_SQLINE_KILL 1160 +#define OPER_HELP_SQLINE_NOKILL 1161 +#define OPER_HELP_SQLINE_IGNOREOPERS 1162 +#define OPER_HELP_SQLINE_END 1163 +#define OPER_HELP_SZLINE 1164 +#define OPER_HELP_EXCEPTION 1165 +#define OPER_HELP_SESSION 1166 +#define OPER_HELP_SU 1167 +#define OPER_HELP_SET 1168 +#define OPER_HELP_SET_READONLY 1169 +#define OPER_HELP_SET_DEBUG 1170 +#define OPER_HELP_SET_SUPASS 1171 +#define OPER_HELP_JUPE 1172 +#define OPER_HELP_RAW 1173 +#define OPER_HELP_UPDATE 1174 +#define OPER_HELP_QUIT 1175 +#define OPER_HELP_SHUTDOWN 1176 +#define OPER_HELP_RESTART 1177 +#define OPER_HELP_REHASH 1178 +#define OPER_HELP_KILLCLONES 1179 +#define STAT_HELP 1180 +#define STAT_HELP_COMMANDS 1181 +#define STAT_HELP_SERVERS 1182 +#define STAT_HELP_USERS 1183 +#define STAT_OPER_HELP_SERVERS 1184 -#define NUM_STRINGS 1176 +#define NUM_STRINGS 1185 diff -uNr ircservices-5.0.19/lang/nl.l ircservices-5.0.20/lang/nl.l --- ircservices-5.0.19/lang/nl.l 2003-01-22 23:45:13 +0900 +++ ircservices-5.0.20/lang/nl.l 2003-06-06 05:01:14 +0900 @@ -243,7 +243,7 @@ NICK_IDENTIFY_REQUIRED Wachtwoord verificatie vereist voor dit commando. Probeer het nogmaals na het typen van /msg %s IDENTIFY wachtwoord. NICK_PLEASE_AUTH - Uw bijnaam is nog niet geautoriseerd. Autoriseer uw bijnaam d.m.v. de autorisatie-code in de E-mail gestuurd naar : %s + Uw bijnaam is nog niet geauthenticeerd. Authenticeer uw bijnaam d.m.v. de authenticatie-code in de E-mail gestuurd naar : %s NICK_X_NOT_ON_CHAN_X Bijnaam %s is momenteel niet in kamer %s. @@ -313,12 +313,11 @@ NICK_REGISTRATION_FAILED Sorry, registratie mislukt. NICK_REG_PLEASE_WAIT - Wacht a.u.b. %s voordat u het REGISTER commando - opnieuw gebruikt. + Wacht a.u.b. %s voordat u het REGISTER commando opnieuw gebruikt. NICK_CANNOT_BE_REGISTERED Bijnaam %s mag niet geregistreerd worden. NICK_REGISTER_EMAIL_UNAUTHED - Het gegeven E-mail adres is nog niet geautoriseerd. Gebruik het AUTH commando om het adres te autoriseren voordat u er nieuwe bijnamen mee registreerd. + Het gegeven E-mail adres is nog niet geauthenticeerd. Gebruik het AUTH commando om het adres te authenticeren voordat u er nieuwe bijnamen mee registreerd. NICK_REGISTER_TOO_MANY_NICKS U heeft teveel bijnamen geregistreerd (%d, maximum van %d). U kunt geen nieuwe bijnamen registreren totdat u enkele van uw oude bijnamen verwijderd. NICK_REGISTERED @@ -392,7 +391,7 @@ # SET EMAIL responses NICK_SET_EMAIL_UNAUTHED - Het gegeven E-mail adres is nog niet geautoriseerd. Gebruik het AUTH commando om het adres te autoriseren. + Het gegeven E-mail adres is nog niet geauthenticeerd. Gebruik het AUTH commando om het adres te authenticeren. NICK_SET_EMAIL_TOO_MANY_NICKS %s heeft al %d bijnamen geregistreerd (maximum is %d). E-mail adres wijziging mislukt. NICK_SET_EMAIL_CHANGED @@ -741,27 +740,27 @@ # General-purpose messages NICK_AUTH_SENT - Een autorisatie code voor uw bijnaam is gestuurd naar %s. + Een authenticatie code voor uw bijnaam is gestuurd naar %s. NICK_AUTH_FOR_REGISTER - Wanneer u dit bericht ontvangt, typ /msg %s AUTH code (vervang code door de autorisatie code in het bericht) om uw bijnaam registratie te voltooien. + Wanneer u dit bericht ontvangt, typ /msg %s AUTH code (vervang code door de authenticatie code in het bericht) om uw bijnaam registratie te voltooien. NICK_AUTH_FOR_SET_EMAIL - Wanneer u dit bericht ontvangt, typ /msg %s AUTH code (vervang code door de autorisatie code in het bericht) om uw E-mail wijziging te voltooien. + Wanneer u dit bericht ontvangt, typ /msg %s AUTH code (vervang code door de authenticatie code in het bericht) om uw E-mail wijziging te voltooien. Let op dat u uw bijnaam niet kan gebruiken tot de wijziging voltooid is. NICK_AUTH_NOT_NEEDED - Er is momenteel niets dat autorisatie nodig heeft. + Er is momenteel niets dat authenticatie vereist. NICK_AUTH_NO_AUTHCODE - Bijnaam %s heeft geen autorisatie code. + Bijnaam %s heeft geen authenticatie code. NICK_AUTH_HAS_AUTHCODE - Bijnaam %s heeft al een autorisatie code. + Bijnaam %s heeft al een authenticatie code. PASSWORD_WARNING_FOR_AUTH - Waarschuwing: Bij een volgende foute autorisatie code wordt u verwijderd. + Waarschuwing: Bij een volgende foute authenticatie code wordt u verwijderd. # Mail text. The last "%s" (before the user@host) in the body text is # replaced by one of the NICK_AUTH_MAIL_TEXT_* messages. NICK_AUTH_MAIL_SUBJECT - Autorisatie code van %s + Authenticatie code van %s NICK_AUTH_MAIL_BODY - De autorisatie code van uw bijnaam (%s) is: %09d + De authenticatie code van uw bijnaam (%s) is: %09d Geef deze code aan %s met het commando: /msg %s AUTH %09d @@ -774,7 +773,7 @@ NICK_AUTH_MAIL_TEXT_SENDAUTH een SENDAUTH commando van NICK_AUTH_MAIL_BODY_SETAUTH - De autorisatie code van uw bijnaam (%s) is: %09d + De authenticatie code van uw bijnaam (%s) is: %09d Geef deze code aan %s met het commando: /msg %s AUTH %09d @@ -782,15 +781,15 @@ NICK_AUTH_SYNTAX AUTH code NICK_AUTH_DISABLED - Sorry, bijnaam autorisatie is tijdelijk uitgeschakeld. + Sorry, bijnaam authenticatie is tijdelijk uitgeschakeld. NICK_AUTH_FAILED - Deze autorisatie code is onjuist. + Deze authenticatie code is onjuist. NICK_AUTH_SUCCEEDED_REGISTER - Autorisatie geslaagd; uw bijnaam registratie is voltooid. + Authenticatie geslaagd; uw bijnaam registratie is voltooid. NICK_AUTH_SUCCEEDED_SET_EMAIL - Autorisatie geslaagd; uw E-mail wijziging is voltooid. + Authenticatie geslaagd; uw E-mail wijziging is voltooid. NICK_AUTH_SUCCEEDED_SETAUTH - Autorisatie geslaagd; u kunt uw bijnaam verder gebruiken. + Authenticatie geslaagd; u kunt uw bijnaam verder gebruiken. # SENDAUTH responses NICK_SENDAUTH_SYNTAX @@ -798,7 +797,7 @@ NICK_SENDAUTH_TOO_SOON Wacht %s voordat u het SENDAUTH commando weer gebruikt. NICK_SENDAUTH_FAILED - Sorry, kon autorisatie code niet verzenden. + Sorry, kon authenticatie code niet verzenden. # SETAUTH responses NICK_SETAUTH_SYNTAX @@ -806,26 +805,26 @@ NICK_SETAUTH_NO_EMAIL Bijnaam %s heeft geen E-mail adres ingesteld. NICK_SETAUTH_AUTHCODE_SET - Een nieuwe autorisatie code (%09d) is ingesteld voor bijnaam %s. + Een nieuwe authenticatie code (%09d) is ingesteld voor bijnaam %s. NICK_SETAUTH_SEND_FAILED Waarschuwing: kon geen E-mail versturen aan %s. NICK_SETAUTH_SEND_TEMPFAIL Waarschuwing: kon geen E-mail versturen aan %s (onvoldoende systeembronnen). NICK_SETAUTH_USER_NOTICE - U dient zich te autoriseren voor uw bijnaam om deze verder te kunnen gebruiken. Een autorisatie code is verstuurd naar uw E-mail adres: %s + U dient zich te authenticeren voor uw bijnaam om deze verder te kunnen gebruiken. Een authenticatie code is verstuurd naar uw E-mail adres: %s Typ /msg %s HELP AUTH voor meer informatie. # GETAUTH responses NICK_GETAUTH_SYNTAX GETAUTH bijnaam NICK_GETAUTH_AUTHCODE_IS - De autorisatie code voor bijnaam %s is: %09d + De authenticatie code voor bijnaam %s is: %09d # CLEARAUTH responses NICK_CLEARAUTH_SYNTAX CLEARAUTH bijnaam NICK_CLEARAUTH_CLEARED - De autorisatie code van bijnaam %s is verwijderd. + De authenticatie code van bijnaam %s is verwijderd. ################ sendpass module messages/responses @@ -846,7 +845,7 @@ NICK_SENDPASS_NO_EMAIL U heeft geen E-mail adres ingesteld. NICK_SENDPASS_NOT_AUTHED - Het E-mail adres van bijnaam %s is nog niet geautoriseerd. + Het E-mail adres van bijnaam %s is nog niet geauthenticeerd. # parameter is "NNN days/hours/minutes" NICK_SENDPASS_TOO_SOON Wacht %s voor u het SENDPASS commando opnieuw gebruikt. @@ -943,7 +942,7 @@ CHAN_REGISTERED Kamer %s geregistreerd onder bijnaam: %s CHAN_PASSWORD_IS - Uw kamer wachtwoord is %s - Onthou dit voor later gebruik. + Uw kamer wachtwoord is %s - Onthoud dit voor later gebruik. # IDENTIFY responses CHAN_IDENTIFY_SYNTAX @@ -2143,8 +2142,16 @@ RAW tekst # UPDATE responses +OPER_UPDATE_SYNTAX + UPDATE [FORCE] +OPER_UPDATE_FORCE_FAILED + Kon databases niet vrijgeven. OPER_UPDATING - Database wordt geupdate. + Database wordt geupdate... +OPER_UPDATE_COMPLETE + Database update voltooid. +OPER_UPDATE_FAILED + Database update mislukt. # REHASH responses OPER_REHASHING @@ -2464,8 +2471,8 @@ REGISTER Registreer een bijnaam NICK_HELP_COMMANDS_AUTH - AUTH Autoriseer een bijnaam registratie - SENDAUTH Stuur uzelf de bijnaam autorisatie code + AUTH Authenticeer een bijnaam registratie + SENDAUTH Stuur uzelf de bijnaam authenticatie code NICK_HELP_COMMANDS_IDENTIFY IDENTIFY Identificeer uzelf met uw wachtwoord NICK_HELP_COMMANDS_SENDPASS @@ -2524,7 +2531,7 @@ U moet een geldig e-mail adres invoeren bij het registreren van uw bijnaam; %S stuurt een bericht met een - autorisatie code naar dit adres, welke u moet gebruiken met + authenticatie code naar dit adres, welke u moet gebruiken met het AUTH om uw registratie te voltooien. U kunt uw e-mail adres verbergen voor andere gebruikers met het SET HIDE commando (typ /msg %S HELP SET HIDE voor meer informatie). @@ -2542,22 +2549,22 @@ NICK_HELP_AUTH Syntax: AUTH code - Autoriseert registratie of verandering van E-mail van een + Authenticeert registratie of verandering van E-mail van een bijnaam. Om er zeker van te zijn dat uw E-mail adres correct - is stuurt %S een bericht met een autorisatie code naar het + is stuurt %S een bericht met een authenticatie code naar het E-mail adres gegeven wanneer u uw bijnaam registreert of uw E-mail adres verandert met het SET EMAIL commando. Dit commando geeft u de mogelijkheid te bevestigen dat u het bericht heeft ontvangen en uw bijnaam verder normaal te gebruiken. Vervang code in het commando met de 9 karakters - lange autorisatie code, gegeven in het E-mail bericht. - + lange authenticatie code, gegeven in het E-mail bericht. + NICK_HELP_SENDAUTH Syntax: SENDAUTH - Stuurt u een kopie van de autorisatie code voor uw bijnaam + Stuurt u een kopie van de authenticatie code voor uw bijnaam na gebruik van REGISTER of SET EMAIL. Wanneer u per ongeluk - het bericht met de autorisatie code verwijdert of verliest + het bericht met de authenticatie code verwijdert of verliest kunt u dit commando gebruiken om een nieuwe kopie naar u te verzenden. @@ -2885,10 +2892,9 @@ Wanneer het commando gegeven wordt brengt %S een nep gebruiker online met de bijnaam die heroverd wordt. Dit zorgt ervoor dat de IRC server de andere gebruiker - verwijdert van het netwerk. De nep gebruiker blijft 1 - minuut online om te zorgen dat de andere gebruiker niet - meteen weer terugkomt; na die minuut kunt u uw bijnaam weer - gebruiken. + verwijdert van het netwerk. De nep gebruiker blijft %s + online om te zorgen dat de andere gebruiker niet meteen weer + terugkomt; daarna kunt u uw bijnaam weer gebruiken. Als u de bijnaam eerder wilt gebruiken kan dat met het RELEASE commando (/msg %S HELP RELEASE). @@ -2902,13 +2908,13 @@ Geeft %S opdracht om een bijnaam die vastgehouden wordt door kill protectie of gebruik van RECOVER los te laten. - Normaal wordt een bijnaam 1 minuut vastgehouden; dit + Normaal wordt een bijnaam %s vastgehouden; dit commando zorgt dat dit korter duurt. Om het RELEASE commando te gebruiken dient uw huidige - adres (zoals - vermeld in /WHOIS) in de toegangslijst van de bijnaam te - staan of dient u het wachtwoord van de bijnaam te geven. + adres (zoals vermeld in /WHOIS) in de toegangslijst van de + bijnaam te staan of dient u het wachtwoord van de bijnaam te + geven. NICK_HELP_GHOST Syntax: GHOST nickname [password] @@ -3023,9 +3029,9 @@ LISTLINKS Geef een lijst van bijnamen gekoppeld aan de gegeven bijnaam NICK_OPER_HELP_COMMANDS_SETAUTH - SETAUTH Stelt een nieuwe autorisatie code in voor een bijnaam - GETAUTH Toont de autorisatiecode van een bijnaam - CLEARAUTH Verwijderd de autorisatiecode van een bijnaam + SETAUTH Stelt een nieuwe authenticatie code in voor een bijnaam + GETAUTH Toont de authenticatie code van een bijnaam + CLEARAUTH Verwijderd de authenticatie code van een bijnaam NICK_OPER_HELP_COMMANDS_END Services admins kunnen ook de volgende commando's voor een @@ -3156,13 +3162,14 @@ Bijnamen met de PRIVATE optie aan worden alleen getoond aan Services Admins. Voor Services Admins worden bijnamen die op NOEXPIRE staan aangeduidt met een ! en bijnamen die buiten - gebruik zijn met een *, en bijnamen die nog niet geautoriseerd + gebruik zijn met een *, en bijnamen die nog niet geauthenticeerd zijn (met het AUTH commando) worden aangeduid met een ?. Als de optie FORBIDDEN, SUSPENDED, NOEXPIRE of NOAUTH gegeven - is, worden alleen corresponderende bijnamen getoond. De - opties kunnen gebruikt worden in elke volgorde of combinatie en zijn alleen - beschikbaar voor Services admins. + is, worden alleen bijnamen getoond die respectievelijk verboden zijn, + buiten gebruik zijn, NOEXPIRE aan hebben, of nog niet geauthenticeerd zijn. + De opties kunnen gebruikt worden in elke volgorde of combinatie en zijn + alleen beschikbaar voor Services admins. Voorbeelden: @@ -3218,14 +3225,11 @@ NICK_OPER_HELP_SUSPEND Syntax: SUSPEND [+vervaltijd] bijnaam rede - Stelt een bijnaam, en alle bijnamen met dezelfde hoofd - bijnaam tijdelijk buiten werking. - Dit kan ongedaan worden gemaakt met het %S - UNSUSPEND commando. - - Anders dan bij een verboden bijnaam verliest een buiten - werking gestelde bijnaam zijn informatie niet en kan hij - vervallen! + Voorkomt gebruik van, of identificatie voor een bijnaam, + en alle hieraan gelinkte bijnamen. Dit kan ongedaan worden + gemaakt met het UNSUSPEND commando, waardoor de bijnaam + weer gewoon gebruikt kan worden. De vervaltijd parameter + werkt hetzelfde als bij het %s AKILL commando. Beperkt tot Services Admins. @@ -3244,7 +3248,7 @@ NICK_OPER_HELP_SETAUTH Syntax: SETAUTH bijnaam - Stelt een nieuwe autorisatie code in voor de gegeven + Stelt een nieuwe authenticatie code in voor de gegeven bijnaam. De eigenaar van de bijnaam dient het AUTH commando te gebruiken voor de bijnaam om zich weer voor deze te kunnen identificeren. Wanneer de bijnaam in gebruik is, @@ -3257,7 +3261,7 @@ NICK_OPER_HELP_GETAUTH Syntax: GETAUTH bijnaam - Verkrijgt de autorisatie code behorend bij bijnaam, wanneer + Verkrijgt de authenticatie code behorend bij bijnaam, wanneer deze bestaat. Beperkt tot Services Admins. @@ -3265,7 +3269,7 @@ NICK_OPER_HELP_CLEARAUTH Syntax: CLEARAUTH bijnaam - Verwijdert elke autorisatie code behorend bij bijnaam, + Verwijdert elke authenticatie code behorend bij bijnaam, waardoor de bijnaam normaal gebruikt kan worden. Beperkt tot Services Admins. @@ -3442,7 +3446,7 @@ SECUREOPS Strengere controle op operator status LEAVEOPS Operator status wordt niet afgenomen bij binnenkomst - OPNOTICE Geeft een waarschuwing wanneer OP/DEOP + OPNOTICE Geeft een waarschuwing wanneer OP/VOICE commando's gebruikt worden ENFORCE Behoudt auto-op en auto-voice in de kamer. @@ -3580,17 +3584,19 @@ CHAN_HELP_SET_SECURE Syntax: SET kamer SECURE {ON | OFF} - Zet de beveiligings optie van een kamer aan of uit. + Zet %S's beveiligings optie van een kamer aan of uit. Wanneer SECURE aanstaat krijgen alleen gebruikers met geregistreerde bijnamen waarvoor ze zich geindentificeerd - rechten volgens de toegangslijst. + rechten volgens de toegangslijst. Wanneer de RESTRICTED + ook in gebruik is kunnen gebruikers de kamer niet + binnengaan zonder zich te identificeren bij %s. CHAN_HELP_SET_SECUREOPS Syntax: SET kamer SECUREOPS {ON | OFF} Zet de operator beveilging optie van een kamer aan of uit. Wanneer operator beveilging aan staat kunnen mensen de - niet op de auto-op lijst staan geen operator status krijgen. + niet op de toegangslijst staan geen operator status krijgen. CHAN_HELP_SET_LEAVEOPS Syntax: SET kamer LEAVEOPS {ON | OFF} @@ -3599,8 +3605,7 @@ Wanneer operator behoud aan staat zal %S de operator status van iemand die als eerste de kamer binnen komt niet afnemen, ookal zou de gebruiker normaal geen auto-op krijgen. - De SECUREOPS optie en AUTODEOP toegangslevel worden nog wel - toegepast. + De SECUREOPS optie wordt nog wel toegepast. Opmerking: Dit kan er voor zorgen dat gebruikers operator status "stelen" na een netsplit. @@ -4146,13 +4151,11 @@ CHAN_OPER_HELP_SUSPEND Syntax: SUSPEND [+vervaltijd] kamer rede - Voorkomt dat een kamer wordt gebruikt of voor wordt - geindentificeerd door wie dan ook. Dit kan ongedaan - worden gemaakt met het UNSUSPEND commando. - - Anders dan bij een verboden kamer verliest een buiten - werking gestelde kamer zijn informatie niet en zal deze - vervallen. + Voorkomt gebruik van, of identificatie voor een kamer. + Dit kan ongedaan worden gemaakt met het UNSUSPEND commando, + waardoor de kamer weer gewoon gebruikt kan worden. + De vervaltijd parameter werkt hetzelfde als bij het + %s AKILL commando. Beperkt tot Services Admins. @@ -4184,11 +4187,15 @@ Let op: Memo's vervallen (worden automatisch verwijderd) %s na versturen, behalve als ze gemarkeerd zijn als niet vervallend met het SAVE commando. -MEMO_HELP_END +MEMO_HELP_END_LEVELS (*) Standaard kan een gebruiker met minimaal %s in de kamer de memo's van die kamer lezen. Dit kan veranderd worden door middel van het %s LEVELS commando. +MEMO_HELP_END_XOP + + (*) Alle gebruikers op de SOP lijst van een kamer kunnen de + memo's van die kamer lezen. MEMO_HELP_COMMANDS %S's commando's zijn: @@ -4261,19 +4268,14 @@ MEMO_HELP_DEL Syntax: DEL [kamer] {num | list | ALL} - Verwijdert de gegeven memo('s). U kunt meerdere memo - nummers of reeksen geven in plaatst van een enkel nummer, - zoals in onderstaand voorbeeld. - - Wanneer ALL is gegeven, worden al uw memo's verwijderd. - - Voorbeelden: - - DEL 1 - Verwijdert uw eerste memo. + Verwijdert de gegeven memo of memo's. U kunt meerdere memo + nummers of reeksen van nummers geven in plaatst van een enkel + nummer, zoals met het LIST commando; u kunt ook het woord + ALL opgegeven, wat ervoor zorgt dat al uw memo's verwijderd + worden. - DEL 2-5,7-9 - Verwijdert memo's 2 tot en met 5 en 7 tot en met 9. + Waarschuwing: Wanneer een memo is verwijderd kan deze niet + meer terug gehaald worden. MEMO_HELP_SET Syntax: SET optie parameters @@ -4602,7 +4604,7 @@ (K-line) op alle servers toevoegen voor het betreffende masker. - AKILL ADD voegt het gegeven user@host masker aan de AKILL + AKILL ADD voegt het gegeven user@host masker aan de AKILL lijst toe met de gegeven rede (die gegeven moet worden). AKILL DEL verwijdert het gegeven masker van de AKILL lijst als deze hierop staat. AKILL LIST toont alle huidige @@ -4654,7 +4656,7 @@ wanneer u brede autokill maskers heeft, maar specifieke hosts of gebruikers toch wilt toelaten. - De ADD, DEL, LIST, VIEW en COUNT opties werken het zelfde als + De ADD, DEL, LIST, VIEW en COUNT opties werken het zelfde als de opties van het AKILL commando; zie de AKILL help voor meer informatie. @@ -4701,7 +4703,7 @@ van d (dagen), h (uren), or m (minuten). Combinaties (zoals 1h30m) zijn ook toegestaan. Wanneer een eenheid specificatie niet meegegeven wordt is de standaardwaarde dagen - (dus .+30. op zichzelf betekent 30 dagen). Om een invoer toe + (dus +30 op zichzelf betekent 30 dagen). Om een invoer toe te voegen die niet verloopt, gebruik +0. Wanneer het toe te voegen masker begint met een + dient een vervaltijd ten alle tijden gegeven te worden, ook al is deze hetzelfde als de @@ -4720,11 +4722,29 @@ SQLINE VIEW [masker] [NOEXPIRE] SQLINE COUNT +OPER_HELP_SQLINE_KILL Geeft Services operators de mogelijkheid de SQLINE lijst te manipuleren. Wanneer een gebruiker wiens bijnaam overeenkomt met - een SQLINE masker zal Services een KILL geven en, op ondersteunde - servers, alle servers opdracht geven een ban (server Q-line) voor - de bijnaam van de betreffende gebruiker toe te voegen. + een SQLINE masker probeert in te loggen, of een gebruiker probeert + een bijnaam te gebruiken waarvoor een SQLINE masker aanwezig is, + zal Services een KILL geven en, op ondersteunde server types, alle + servers opdracht geven een ban (server Q-line) toe te voegen voor + het masker dat overeenkomt met de gebruiker. +OPER_HELP_SQLINE_NOKILL + Geeft Services operators de mogelijkheid de SQLINE lijst te + manipuleren. Wanneer een gebruiker wiens bijnaam overeenkomt met + een SQLINE masker probeert in te loggen, of een gebruiker probeert + een bijnaam te gebruiken waarvoor een SQLINE masker aanwezig is, + zal Services de bijnaam van de gebruiker veranderen naar een "gast" + bijnaam, en de gebruiker een bericht sturen dat de IRC client van + de gebruiker normaalgesproken een nieuwe bijnaam laat aanvragen. + Op ondersteunde server types zal Services ook alle servers opdracht + geven een ban (server Q-line) toe te voegen voor het masker dat + overeenkomt met de gebruiker. +OPER_HELP_SQLINE_IGNOREOPERS + + Let op dat SQLINE maskers geen betrekking hebben op IRC Operators. +OPER_HELP_SQLINE_END De ADD, DEL, LIST, en VIEW, en COUNT subcommando's kunnen gebruikt worden om invoeren in de SQLINE lijst toe te voegen, @@ -4791,8 +4811,9 @@ altijd een vervaltijd te geven, ook al is deze hetzelfde als de standaardwaarde. - EXCEPTION DEL verwijdert het gegeven masker - van de uitzonderingslijst. + EXCEPTION DEL verwijdert het gegeven masker of invoer-nummer + van de uitzonderingslijst (invoer nummers kunnen bekeken worden + met (VIEW of LIST). EXCEPTION MOVE verplaatst uitzondering num naar nieuwnum. Wanneer nieuwnum al door een andere uitzondering gebruikt @@ -4908,7 +4929,7 @@ Zorgt dat Services een server "jupiter" maakt, wat inhoud dat een nepserver aan Services gekoppeld wordt, zodat de echte server met deze naam niet aan het netwerk kan - koppelen. De "jupe" kan verwijderd worden met het SQUIT + koppelen. De "jupe" kan verwijderd worden met het /SQUIT commando. Wanneer een rede is gegeven wordt deze in de server informatie regel geplaatst; zoniet komt in deze regel de tekst "Jupitered by ", waarbij de bijnaam @@ -4928,9 +4949,13 @@ Beperkt tot de Services Super-Gebruiker. OPER_HELP_UPDATE - Syntax: UPDATE + Syntax: UPDATE [FORCE] - Zorgt dat Services alle database bestanden direct update. + Zorgt dat Services alle database bestanden update direct na het + sturen van het commando. Wanneer de FORCE optie gegeven wordt + zal Services proberen de databases vrij te geven voor het updaten; + dit kan gebruikt worden om "databases are locked" errors tijdens + het updaten op te lossen. Beperkt tot Services Admins. diff -uNr ircservices-5.0.19/lang/pt.l ircservices-5.0.20/lang/pt.l --- ircservices-5.0.19/lang/pt.l 2003-01-22 23:45:13 +0900 +++ ircservices-5.0.20/lang/pt.l 2003-06-03 12:22:04 +0900 @@ -1517,8 +1517,10 @@ RAW texto # UPDATE responses -OPER_UPDATING - Atualizando banco de dados. +OPER_UPDATE_SYNTAX + UPDATE [FORCE] +#OPER_UPDATING +# Atualizando banco de dados. # LISTIGNORE responses OPER_IGNORE_LIST @@ -2254,17 +2256,17 @@ Limitado aos Administradores dos Services. -NICK_OPER_HELP_SUSPEND - Sintaxe: SUSPEND [+expiracao] nickname razao - - Evita que um nickname, e todos aqueles nicknames com - mesmo root nickname, seja usado ou identificado. Um - Nickname pode ser reabilitado com o comando UNSUSPEND - - Ao contrario de um nickname com forbidden, um suspenso ????? - nao perde suas informacoes e ira expirar! - - Limitado a Services admins. +#NICK_OPER_HELP_SUSPEND +# Sintaxe: SUSPEND [+expiracao] nickname razao +# +# Evita que um nickname, e todos aqueles nicknames com +# mesmo root nickname, seja usado ou identificado. Um +# Nickname pode ser reabilitado com o comando UNSUSPEND +# +# Ao contrario de um nickname com forbidden, um suspenso ????? +# nao perde suas informacoes e ira expirar! +# +# Limitado a Services admins. NICK_OPER_HELP_UNSUSPEND Sintaxe: UNSUSPEND nickname @@ -2370,7 +2372,7 @@ SECURE Ativa os recursos de seguranca do %S SECUREOPS Rigoroso o controle de status de OP LEAVEOPS Nao tirar op de usuarios ao entrarem no canal - OPNOTICE Envia uma notice quando os comandos OP/DEOP + OPNOTICE Envia uma notice quando os comandos OP/VOICE sao usados ENFORCE Forca status de auto-op, auto-voice @@ -2492,34 +2494,34 @@ # estiver ativado, usuarios que nao pertence a lista de # acesso) serao imediatamente kickados e banidos do canal. -CHAN_HELP_SET_SECURE - Sintaxe: SET canal SECURE {ON | OFF} - - Ativa ou desativa os recursos de seguranca do %S para - um canal. Quando o SECURE estiver ativo, somente - usuarios que possuirem seus nicks registrados no %s - e identificados com sua senha poderao entrar no canal - controlado pela lista de acesso. - -CHAN_HELP_SET_SECUREOPS - Sintaxe: SET canal SECUREOPS {ON | OFF} - - Ativa ou desativa a opcao de seguranca de ops para um canal. - Quando secure-ops estiver ativada, os usuarios que nao - estiverem na lista de acesso nao poderao ter o status de - OP. - -CHAN_HELP_SET_LEAVEOPS - Sintaxe: SET canal LEAVEOPS {ON | OFF} - - Ativa ou desativa a opcao leave ops para um canal. - Quando leave ops estiver ligado, %S deixara com op - o usuario que entrar primeiro no canal mesmo se o - usuario nao deveria receber op normalmente. - A opcao SECUREOPS e o nivel de acesso de AUTODEOP - continuarao sendo reforcados. - Observacao: Isso pode permitir usuarios "roubarem" ops - durante um netsplit. +#CHAN_HELP_SET_SECURE +# Sintaxe: SET canal SECURE {ON | OFF} +# +# Ativa ou desativa os recursos de seguranca do %S para +# um canal. Quando o SECURE estiver ativo, somente +# usuarios que possuirem seus nicks registrados no %s +# e identificados com sua senha poderao entrar no canal +# controlado pela lista de acesso. + +#CHAN_HELP_SET_SECUREOPS +# Sintaxe: SET canal SECUREOPS {ON | OFF} +# +# Ativa ou desativa a opcao de seguranca de ops para um canal. +# Quando secure-ops estiver ativada, os usuarios que nao +# estiverem na lista de acesso nao poderao ter o status de +# OP. + +#CHAN_HELP_SET_LEAVEOPS +# Sintaxe: SET canal LEAVEOPS {ON | OFF} +# +# Ativa ou desativa a opcao leave ops para um canal. +# Quando leave ops estiver ligado, %S deixara com op +# o usuario que entrar primeiro no canal mesmo se o +# usuario nao deveria receber op normalmente. +# A opcao SECUREOPS e o nivel de acesso de AUTODEOP +# continuarao sendo reforcados. +# Observacao: Isso pode permitir usuarios "roubarem" ops +# durante um netsplit. CHAN_HELP_SET_OPNOTICE Sintaxe: SET canal OPNOTICE {ON | OFF} @@ -2954,16 +2956,16 @@ Limitado aos Administradores dos Services. -CHAN_OPER_HELP_SUSPEND - Sintaxe: SUSPEND [+expiracao] canal razao - - Evita que um canal seja usado ou identificado. Um - Nickname pode ser reabilitado com o comando UNSUSPEND - - Ao contrario de um canal com forbidden, um canal suspenso - nao perde suas informacoes e ira expirar! - - Limitado a Services admins. +#CHAN_OPER_HELP_SUSPEND +# Sintaxe: SUSPEND [+expiracao] canal razao +# +# Evita que um canal seja usado ou identificado. Um +# Nickname pode ser reabilitado com o comando UNSUSPEND +# +# Ao contrario de um canal com forbidden, um canal suspenso +# nao perde suas informacoes e ira expirar! +# +# Limitado a Services admins. CHAN_OPER_HELP_UNSUSPEND Sintaxe: UNSUSPEND canal @@ -3033,22 +3035,22 @@ # READ 2-5,7-9 # Mostra as mensagens numeradas de 2 a 5 e 7 a 9. -MEMO_HELP_DEL - Sintaxe: DEL [canal] {num | list | ALL} - - Apaga a(s) mensagem(ns) especificada(s). Voce pode fornecer - varios numeros de mensagens ou sequencias de numeros ao inves - de um unico numero, como no segundo exemplo abaixo. - - Se ALL eh fornecido, apaga todas suas mensagens. - - Exemplos: - - DEL 1 - Apaga sua primeira mensagem. - - DEL 2-5,7-9 - Apaga mensagens numeradas de 2 a 5 e de 7 a 9. +#MEMO_HELP_DEL +# Sintaxe: DEL [canal] {num | list | ALL} +# +# Apaga a(s) mensagem(ns) especificada(s). Voce pode fornecer +# varios numeros de mensagens ou sequencias de numeros ao inves +# de um unico numero, como no segundo exemplo abaixo. +# +# Se ALL eh fornecido, apaga todas suas mensagens. +# +# Exemplos: +# +# DEL 1 +# Apaga sua primeira mensagem. +# +# DEL 2-5,7-9 +# Apaga mensagens numeradas de 2 a 5 e de 7 a 9. MEMO_HELP_SET Sintaxe: SET opcao parametros @@ -3460,7 +3462,7 @@ Diz aos Services para "jupar" um servidor--isto eh, criar um falso servidor conectado aos Services que previne que o servidor real com aquele nome se conecte na rede. O jupe - pode ser removido usando um simples SQUIT. + pode ser removido usando um simples /SQUIT. Limitado aos Administradores dos Services. @@ -3475,13 +3477,13 @@ # # Limitado aos Administradores dos Services. -OPER_HELP_UPDATE - Sintaxe: UPDATE - - Faz com que os Services atualizem o banco de dados logo que - voce envia este comando. - - Limitado aos Administradores dos Services. +#OPER_HELP_UPDATE +# Sintaxe: UPDATE +# +# Faz com que os Services atualizem o banco de dados logo que +# voce envia este comando. +# +# Limitado aos Administradores dos Services. OPER_HELP_QUIT Sintaxe: QUIT diff -uNr ircservices-5.0.19/lang/tr.l ircservices-5.0.20/lang/tr.l --- ircservices-5.0.19/lang/tr.l 2003-01-22 23:45:13 +0900 +++ ircservices-5.0.20/lang/tr.l 2003-06-09 15:25:36 +0900 @@ -2054,8 +2054,16 @@ Ayarlari okurken bir hata olustu, lütfen services log dosyasini inceleyiniz. # UPDATE responses +OPER_UPDATE_SYNTAX + UPDATE [FORCE] +OPER_UPDATE_FORCE_FAILED + Vertabanlarinin kilidi kaldirilamadi. OPER_UPDATING - Veritabani guncelleniyor. + Veritabani güncelleniyor... +OPER_UPDATE_COMPLETE + Güncelleme tamamlandi. +OPER_UPDATE_FAILED + Güncelleme basarisiz oldu. # LISTIGNORE responses OPER_IGNORE_LIST @@ -2738,8 +2746,8 @@ tasiyan bir clone sokar.Bu durum da IRC server'larinin oteki kullaniciyi hattan atmalarina yol acar.Bu "clone" karsi tarafin hemen yeniden baglanip nick'i yeniden almasina imkan - vermemek icin bir dakika sureyle hatta kalir.Nick'inizi bu - bir dakikalik surenin sonunda geri alabilir veya RELEASE + vermemek icin %s sureyle hatta kalir.Nick'inizi bu + surenin sonunda geri alabilir veya RELEASE komutunu kullanarak daha erken serbest birakilmasini saglayabilirsiniz.(/msg %S HELP RELEASE) @@ -2750,7 +2758,7 @@ NICK_HELP_RELEASE Kullanimi: RELEASE nickiniz [sifreniz] - %S tarafindan tutulan nick'inizin 1 dakikalik sure + %S tarafindan tutulan nick'inizin %s kadar sure dolmadan serbest birakilmasini saglar. Bu komutu kullanabilmeniz icin o anki hostunuz erisim @@ -3059,11 +3067,12 @@ Kullanimi: SUSPEND [+expiry] nick gerekce Belirtilen nick'i ve de ona linkli tüm nickleri, kullanilabilir - olmaktan cikartir, UNSUSPEND komutu ile de bu özellik eski haline - geri getirilebilir. + olmaktan cikartir, UNSUSPEND komutu ile de bu özellik eski + haline geri getirilebilir. Suspendli nickler, forbidin aksine, düsünceye kadar bilgilerini - kaybetmezler. + kaybetmezler. expiry parametresi %s AKILL komutunda oldugu + gibidir. Bu komutu sadece Services admin'ler kullanabilir. @@ -3243,7 +3252,7 @@ SECURE %S guvenlik fonksiyonlarini aktif hale getirir. LEAVEOPS Kanala ilk giren kisideki opu kaldirmaz. - OPNOTICE OP/DEOP kullanildiginda bir notice gönderir. + OPNOTICE OP/VOICE kullanildiginda bir notice gönderir. ENFORCE Autoop/Autovoice seviyelerini koruma (enforce) /msg %S HELP secenek yazarak belirli bir secenek hakkinda @@ -3382,10 +3391,10 @@ Kanalin leave ops özelligini acar/kapar. Acik iken, %S kanala ilk girmek sureti ile op olmus kisileri deoplamayacaktir. - Öte yandan, AUTODEOP ve de SECUREOPS normal calismaya devam ®decek, - erisimi olmadan op olan kisiler deoplanacaktir. + Öte yandan, SECUREOPS normal calismaya devam edecek, erisimi + olmadan op olan kisiler deoplanacaktir. DIKKAT: Bu özellik, netsplit esnasinda op olmayi ´olaylastirabilir. - + CHAN_HELP_SET_OPNOTICE Kullanimi: SET kanal OPNOTICE {ON | OFF} @@ -3911,8 +3920,11 @@ Kullanimi: SUSPEND [+süre] kanal gerekce Belirtilen kanali dondurur. Dondurulmus kanallar bilgilerini - kaybetmezler, ve de süresi gelince de düserler. Ancak, - tipki forbiddeki gibi, dondurulmus bir kanala girilemeyecektir. + kaybetmezler, ve de süresi gelince de düserler. Bu kanallar + UNSUSPEND komutu ile tekrar normal hale getirilebilir. + süre parametresi tipki %s AKILL komutunda oldugu gibi + kullanilmaktadir. Dondurulmis bir kanala, tipki FORBID + komutunda oldugu gibi, girilemez. Bu komutu sadece Services admin'ler kullanabilir. @@ -3945,11 +3957,14 @@ Dikkat: Notlariniz, %s tarafindan bir süre sonra zamanasimina ugrayabilir. Bunu engellemek icin, silinmesini istemediginiz notlari SAVE komutu ile korumaya almalisiniz. -MEMO_HELP_END +MEMO_HELP_END_LEVELS Varsayilan deger olarak, erisim seviyesi en az %s olan kullanicilar kanal notlarini okuyabilirler, bunu degistirmek icin %s LEVELS komutu kullanilabilir. +MEMO_HELP_END_XOP + + (*) SOP listesindeki her kullanici kanal notlarini okuyabilir. MEMO_HELP_COMMANDS %S komutlari: @@ -4013,17 +4028,12 @@ Kullanimi: DEL [kanal] {num[-num][,num...] | ALL} Eger num kisminda bir sayi verilmisse o notu siler. - Birden fazla numara veya bir aralik belirtebilirsiniz. + Birden fazla numara veya bir aralik belirtebilirsiniz; ayni + LIST komutunda oldugu gibi. ALL yazarak size ait tum notlari silebilirsiniz. - Ornekler: - - DEL 1 - Ilk notunuzu siler. - - DEL 2-5,7-9 - 2 ile 5 ve 7 ile 9 arasindaki notlari siler. + Uyari: Bir not silindikten sonra geri getirilemez. MEMO_HELP_SET Kullanimi: SET secenek parametre @@ -4357,7 +4367,7 @@ AKILL ADD komutu ile beraber bir zaman asimi suresi de belirtilebilir.Bu sure d (gun), h (saat) veya m (dakika) - seklinde olabilir.(1h30m) gibi kombinasyonlar gecersizdir. + seklinde olabilir.(1h30m) gibi kombinasyonlar gecerlidir. Varsayilan secenek gundur.Yani +30 30 gun anlamina gelir.Bir AKILL'in otomatik olarak silinmemesi icin sure kisminda +0 yazilmasi gerekir. @@ -4372,18 +4382,6 @@ Bu komutu sadece Services operator'lar kullanabilir. -OPER_HELP_JUPE - Kullanimi: JUPE sunucu (server) [aciklama] - - Services bu komut kullanildiginda, belirtilen isimde bir - sanal sunucuyu networke baglar, ve de bu isimdeki herhangi - bir baska sunucunun baglanmasini engellemis olur. JUPE, - normal bir /squit komutu ile kaldirilabilir. Eger bir aciklama - belirtilmis ise, bu bilgi kullanilir, yoksa, "Jupitered by " - metini kullanilacaktir; JUPE komutunu kullanan operatörün nicki ile. - - Bu komutu sadece services adminler kullanabilir. - OPER_HELP_EXCLUDE Kullanimi: EXCLUDE ADD [+sure] mask sebep EXCLUDE DEL mask @@ -4410,12 +4408,13 @@ otomatik olarak silinecegi suregibi ayrintilari da goruntulemesi acisindan EXCLUDE LIST'e gore daha kullanislidir. + EXCLUDE COUNT ile EXCLUDE listesindeki toplam akill asimi sayisini ögrenebilirsiniz. EXCLUDE ADD komutu ile beraber bir zaman asimi suresi de belirtilebilir.Bu sure d (gun), h (saat) veya m (dakika) - seklinde olabilir.(1h30m) gibi kombinasyonlar gecersizdir. + seklinde olabilir.(1h30m) gibi kombinasyonlar gecerlidir. Varsayilan secenek gundur.Yani +30 30 gun anlamina gelir.Bir EXCLUDE'in otomatik olarak silinmemesi icin sure kisminda +0 yazilmasi gerekir. @@ -4425,6 +4424,49 @@ Bu komutu sadece Services operator'lar kullanabilir. +OPER_HELP_SGLINE + Kullanimi: SGLINE ADD [+süre] maske sebep + SGLINE DEL maske + SGLINE LIST [maske] [NOEXPIRE] + SGLINE VIEW [maske] [NOEXPIRE] + SGLINE COUNT + + Bu komut ile SGLINE listesi düzenlenir. Bu listedeki bir kaleme + uyan bir kullanici baglandiginda, bu baglanti KILL ile kesilecek, + ayrica bazi server tiplerinde bu karantina tüm serverlara + bildirilecektir. + + SGLINE ADD komutu ile bir isim ban listesine alinir. Bu durumda + bir sebep belirtmek sarttir. + + SGLINE DEL komutu ile listeden bir nesne silinebilir. + + SGLINE LIST komutu ile aktüel SGLINE listesi görüntülenebilir. + Bir maske belirtildiginde, bu maskeye uyan kalemler görüntülenebilir. + + SGLINE VIEW komutu ile LIST komutunda olmayan detaylar görüntülenebilir. + Ekleyen, eklenme tarihi, silinme tarihi gibi. NOEXPIRE parametresi + verilmis ise, zamanasimina ugramayacak kalemler gösterilir. + + SGLINE COUNT ile kac SQLINE oldugunu görmek mümkündür. + + maske parametresi tirnak isaretleri icine alinabilir. Ve de + eger birden fazla sözcük iceren bir maske varsa, o vakit tirnak isareti + kullanimi zorunludur. Örnek olarak: + /msg %S SGLINE ADD +0 "This is a proxy connection" Proxy kullanmak yasaktir! + + SGLINE ADD komutu ile beraber bir zaman asimi suresi de + belirtilebilir.Bu sure d (gun), h (saat) veya m (dakika) + seklinde olabilir.(1h30m) gibi kombinasyonlar gecerlidir. + Varsayilan secenek gundur.Yani +30 30 gun anlamina gelir.Bir + SGLINE'in otomatik olarak silinmemesi icin sure kisminda +0 + yazilmasi gerekir. + + Sebep belirtilmesi gereklidir, ve de bu sebep, bazi services konfigürasyonlarinda + KILL sebebi olarak da kullanilabilir. + + Bu komutu sadece Services operator'lar kullanabilir. + OPER_HELP_SQLINE Kullanimi: SQLINE ADD [+süre] maske sebep SQLINE DEL maske @@ -4432,10 +4474,22 @@ SQLINE VIEW [maske] [NOEXPIRE] SQLINE COUNT +OPER_HELP_SQLINE_KILL Bu komut ile SQLINE listesi düzenlenir. Bu listedeki bir kaleme - uyan bir kullanici baglandiginda, bu baglanti KILL ile kesilecek, + uyan bir kullanici baglandiginda, bu baglanti KILL ile + kesilecek, ayrica bazi server tiplerinde bu karantina tüm serverlara bildirilecektir. +OPER_HELP_SQLINE_NOKILL + Bu komut ile SQLINE listesi düzenlenir. Bu listedeki bir kaleme + uyan bir kullanici baglandiginda, bu kullanicinin nickinin + degistirilmesi istenecektir. Ayrica bazi server tiplerinde bu + karantina tüm serverlara bildirilecektir. +OPER_HELP_SQLINE_IGNOREOPERS + + Dikkat ediniz ki, irc operatörleri SQLINE maskelerinden + etkilenmezler. +OPER_HELP_SQLINE_END ADD ile bir SQLINE eklenir, DEL ile silinir. LIST ile aktüel SQLINE listesi görüntülenir, VIEW ile ek birtakim bilgi @@ -4467,80 +4521,69 @@ Bu komutu sadece Services operator'lar kullanabilir. -OPER_HELP_SGLINE - Kullanimi: SGLINE ADD [+süre] maske sebep - SGLINE DEL maske - SGLINE LIST [maske] [NOEXPIRE] - SGLINE VIEW [maske] [NOEXPIRE] - SGLINE COUNT - - Bu komut ile SGLINE listesi düzenlenir. Bu listedeki bir kaleme - uyan bir kullanici baglandiginda, bu baglanti KILL ile kesilecek, - ayrica bazi server tiplerinde bu karantina tüm serverlara - bildirilecektir. - - SGLINE ADD komutu ile bir isim ban listesine alinir. Bu durumda - bir sebep belirtmek sarttir. +OPER_HELP_EXCEPTION + Kullanimi: EXCEPTION ADD [+süre] mask limit gerekce + EXCEPTION DEL {mask | liste} + EXCEPTION MOVE num posizyon + EXCEPTION LIST [mask | liste] + EXCEPTION VIEW [mask | liste] - SGLINE DEL komutu ile listeden bir nesne silinebilir. + Services Adminlerin kimi hostlar icin özel baglanti limitleri tanimlayabilmeleri + icindir. Mesela shell server larin, normalden daha fazla baglantiyi + kaldirabilmeleri gibi. Bir host limitine erismis ise, limiti asan her bir + baglantiya kill komutu gönderilir ve de %S den bir NOTICE ile o hosttan + baglanti limiti asimi oldugu belirtilir. Bu notice in icerigi config + esnasinda belirtilir. - SGLINE LIST komutu ile aktüel SGLINE listesi görüntülenebilir. - Bir maske belirtildiginde, bu maskeye uyan kalemler görüntülenebilir. + EXCEPTION ADD ile SADECE hostmask lar bu listeye alinirlar. + nick!user@host ve ya user@host masklari gecersizdir. + Sadece box.host.dom ve ya *.host.dom kabul edilir. + limit sifirdan büyük bir sayi olup, o hosttan izin verilen baglanti + sayisini temsil eder. sifir demek, sinirsiz baglanti demektir. + AKILL help kullanilarak süre tanimlamasi hakkinda bilgi alinabilir. - SGLINE VIEW komutu ile LIST komutunda olmayan detaylar görüntülenebilir. - Ekleyen, eklenme tarihi, silinme tarihi gibi. NOEXPIRE parametresi - verilmis ise, zamanasimina ugramayacak kalemler gösterilir. + EXCEPTION DEL belirtilen maske ya da numarayi listeden + siler. Numaralar VIEW ya da LIST komutu ile + görülebilirler. - COUNT ile kac SQLINE oldugunu görmek mümkündür. + EXCEPTION MOVE ile belirtilen hostun listdeki pozisyonu + num posizyonu ile degistirilir. Aradaki hostlar uygun sekilde + kaydirilirlar. - maske parametresi tirnak isaretleri icine alinabilir. Ve de - eger birden fazla sözcük iceren bir maske varsa, o vakit tirnak isareti - kullanimi zorunludur. Örnek olarak: - /msg %S SGLINE ADD +0 "This is a proxy connection" Proxy kullanmak yasaktir! + EXCEPTION LIST ve ya EXCEPTION VIEW ile aktüel + baglanti limiti listesi görüntülenebilir, VIEW daha aciklamali bir bilgi vermek + icindir. - SGLINE ADD komutu ile beraber bir zaman asimi suresi de + EXCEPTION ADD komutu ile beraber bir zaman asimi suresi de belirtilebilir.Bu sure d (gun), h (saat) veya m (dakika) - seklinde olabilir.(1h30m) gibi kombinasyonlar gecersizdir. + seklinde olabilir.(1h30m) gibi kombinasyonlar gecerlidir. Varsayilan secenek gundur.Yani +30 30 gun anlamina gelir.Bir - SGLINE'in otomatik olarak silinmemesi icin sure kisminda +0 + EXCEPTION'in otomatik olarak silinmemesi icin sure kisminda +0 yazilmasi gerekir. - Sebep belirtilmesi gereklidir, ve de bu sebep, bazi services konfigürasyonlarinda - KILL sebebi olarak da kullanilabilir. + Baglanan bir kullaniciya denk düsen ilk exception ayari onun icin aktif duruma + gecirilir. Genis kapsamli exception listeleri performansa kötü etkide + bulunabilirler. - Bu komutu sadece Services operator'lar kullanabilir. + Bu komutu sadece Services operatorler kullanabilir. -OPER_HELP_REHASH - Kullanimi: REHASH +OPER_HELP_SESSION + Kullanimi: SESSION LIST threshold + SESSION VIEW host - Services in konfigürasyon dosyalarini yeniden okumasini saglar. - Bunun sonucunda yeni ayarlar gecerli olur. Bazi ayarlari, mesela - RemoteServer, REHASH kullanarak degistirmek mümkün degildir, - bunlari degistirmek icin RESTART gereklidir. Bu durumlarda - log dosyasina bu konuyla ilgili bir kayit yapilacak, ve de - size de bir notice gönderilecektir. + Services Adminlerin oturum listesini görmelerini saglar. - LoadModule satirlarinin ana services konfigürasyon dosyasi - (%s)na eklenmesi durumunda, bu modüller eklenecekler, - cikartilmasi durumunda da cikartilacaklardir. Cikarma islemi - ekleme islemi ile ters sirada yapilacaktir. Herhangi bir - hata durumunda, rehash islemi kesilecektir. + SESSION LIST ile en az threshold baglantili hostlar + görüntülenir. Flood sorunu olmamasi icin bu rakam en az 1 olmalidir. - Modüllerin birbirlerine bagli olmalari durumu yüzünden, - bazi modülleri cikartmak mümkün olmayabilir. Böyle bir durumda - restart komutunun kullanilmasi gerekebilir. + SESSION VIEW ile bir baglanti hakkinda detayli bilgi alinabilir. + Aktif baglanti sayisi ve de limit gibi. - Bu komutu sadece services adminler kullanabilir. - -OPER_HELP_RAW - Kullanimi: RAW metin + host belirtirken asterisk kullanilamaz. - Direk olarak Services'in bagli oldugu sunucuya bir metin - gonderir. Bu komutun oldukca kisitli bir kullanim alani - vardir ve ne yapildigindan emin olmadikca kesinlikle - BU KOMUTU KULLANMAYIN + EXCEPTION helpini kullanarak daha fazla bilgi alabilirsiniz. - Bu komutu sadece Services root kullanabilir. + Bu komutu sadece Services admin'ler kullanabilir. OPER_HELP_SU Kullanimi: SU password @@ -4602,11 +4645,35 @@ Bu özellik sadece services root'a aittir. +OPER_HELP_JUPE + Kullanimi: JUPE sunucu (server) [aciklama] + + Services bu komut kullanildiginda, belirtilen isimde bir + sanal sunucuyu networke baglar, ve de bu isimdeki herhangi + bir baska sunucunun baglanmasini engellemis olur. JUPE, + normal bir /SQUIT komutu ile kaldirilabilir. Eger bir aciklama + belirtilmis ise, bu bilgi kullanilir, yoksa, "Jupitered by " + metini kullanilacaktir; JUPE komutunu kullanan operatörün nicki ile. + + Bu komutu sadece services adminler kullanabilir. + +OPER_HELP_RAW + Kullanimi: RAW metin + + Direk olarak Services'in bagli oldugu sunucuya bir metin + gonderir. Bu komutun oldukca kisitli bir kullanim alani + vardir ve ne yapildigindan emin olmadikca kesinlikle + BU KOMUTU KULLANMAYIN + + Bu komutu sadece Services root kullanabilir. + OPER_HELP_UPDATE - Kullanimi: UPDATE + Kullanimi: UPDATE [FORCE] Services veritabanini belirtilen sureden once,yani siz - komutu yazar yazmaz guncellenmesini saglar. + komutu yazar yazmaz guncellenmesini saglar. FORCE parametresi + verildigi takdirde, "kilitli veritabani" hatasina ragmen + güncelleme islemi yapilabilir. Bu komutu sadece Services admin'ler kullanabilir. @@ -4636,6 +4703,28 @@ Bu komutu sadece Services admin'ler kullanabilir. +OPER_HELP_REHASH + Kullanimi: REHASH + + Services in konfigürasyon dosyalarini yeniden okumasini saglar. + Bunun sonucunda yeni ayarlar gecerli olur. Bazi ayarlari, mesela + RemoteServer, REHASH kullanarak degistirmek mümkün degildir, + bunlari degistirmek icin RESTART gereklidir. Bu durumlarda + log dosyasina bu konuyla ilgili bir kayit yapilacak, ve de + size de bir notice gönderilecektir. + + LoadModule satirlarinin ana services konfigürasyon dosyasi + (%s)na eklenmesi durumunda, bu modüller eklenecekler, + cikartilmasi durumunda da cikartilacaklardir. Cikarma islemi + ekleme islemi ile ters sirada yapilacaktir. Herhangi bir + hata durumunda, rehash islemi kesilecektir. + + Modüllerin birbirlerine bagli olmalari durumu yüzünden, + bazi modülleri cikartmak mümkün olmayabilir. Böyle bir durumda + restart komutunun kullanilmasi gerekebilir. + + Bu komutu sadece services adminler kullanabilir. + OPER_HELP_KILLCLONES Kullanimi: KILLCLONES nick @@ -4648,68 +4737,6 @@ Bu komutu sadece Services operator'ler kullanabilir. -OPER_HELP_EXCEPTION - Kullanimi: EXCEPTION ADD [+süre] mask limit gerekce - EXCEPTION DEL {mask | liste} - EXCEPTION MOVE num posizyon - EXCEPTION LIST [mask | liste] - EXCEPTION VIEW [mask | liste] - - Services Adminlerin kimi hostlar icin özel baglanti limitleri tanimlayabilmeleri - icindir. Mesela shell server larin, normalden daha fazla baglantiyi - kaldirabilmeleri gibi. Bir host limitine erismis ise, limiti asan her bir - baglantiya kill komutu gönderilir ve de %S den bir NOTICE ile o hosttan - baglanti limiti asimi oldugu belirtilir. Bu notice in icerigi config - esnasinda belirtilir. - - EXCEPTION ADD ile SADECE hostmask lar bu listeye alinirlar. - nick!user@host ve ya user@host masklari gecersizdir. - Sadece box.host.dom ve ya *.host.dom kabul edilir. - limit sifirdan büyük bir sayi olup, o hosttan izin verilen baglanti - sayisini temsil eder. sifir demek, sinirsiz baglanti demektir. - AKILL help kullanilarak süre tanimlamasi hakkinda bilgi alinabilir. - - EXCEPTION DEL belirtilen hostu listeden siler. - - EXCEPTION MOVE ile belirtilen hostun listdeki pozisyonu - num posizyonu ile degistirilir. Aradaki hostlar uygun sekilde - kaydirilirlar. - - EXCEPTION LIST ve ya EXCEPTION VIEW ile aktüel - baglanti limiti listesi görüntülenebilir, VIEW daha aciklamali bir bilgi vermek - icindir. - - EXCEPTION ADD komutu ile beraber bir zaman asimi suresi de - belirtilebilir.Bu sure d (gun), h (saat) veya m (dakika) - seklinde olabilir.(1h30m) gibi kombinasyonlar gecersizdir. - Varsayilan secenek gundur.Yani +30 30 gun anlamina gelir.Bir - EXCEPTION'in otomatik olarak silinmemesi icin sure kisminda +0 - yazilmasi gerekir. - - Baglanan bir kullaniciya denk düsen ilk exception ayari onun icin aktif duruma - gecirilir. Genis kapsamli exception listeleri performansa kötü etkide - bulunabilirler. - - Bu komutu sadece Services operatorler kullanabilir. - -OPER_HELP_SESSION - Kullanimi: SESSION LIST threshold - SESSION VIEW host - - Services Adminlerin oturum listesini görmelerini saglar. - - SESSION LIST ile en az threshold baglantili hostlar - görüntülenir. Flood sorunu olmamasi icin bu rakam en az 1 olmalidir. - - SESSION VIEW ile bir baglanti hakkinda detayli bilgi alinabilir. - Aktif baglanti sayisi ve de limit gibi. - - host belirtirken asterisk kullanilamaz. - - EXCEPTION helpini kullanarak daha fazla bilgi alabilirsiniz. - - Bu komutu sadece Services admin'ler kullanabilir. - ########################################################################### # diff -uNr ircservices-5.0.19/main.c ircservices-5.0.20/main.c --- ircservices-5.0.19/main.c 2003-05-28 15:19:26 +0900 +++ ircservices-5.0.20/main.c 2003-06-25 03:03:13 +0900 @@ -61,8 +61,9 @@ int openlog_failed, openlog_errno; /* Module callbacks (global so init.c can set them): */ -int cb_connect = -1; -int cb_save_data = -1; +int cb_connect = -1; +int cb_save_data = -1; +int cb_save_complete = -1; /*************************************************************************/ @@ -216,32 +217,35 @@ if (!readonly && (save_data || now-last_update >= UpdateTimeout)) { if (!lock_data()) { if (errno == EEXIST) { + log("warning: databases are locked, not updating"); wallops(NULL, - "\2Warning:\2 Data directory is locked;" - " databases will not be updated. Remove" - " the `%s' file to allow database updates.", - LockFilename); - log("warning: data directory is locked, not updating" - " databases"); + "\2Warning:\2 Databases are locked, and cannot" + " be updated. Remove the `%s%s%s' file to allow" + " database updates.", + *LockFilename=='/' ? "" : services_dir, + *LockFilename=='/' ? "" : "/", LockFilename); } else { + log_perror("warning: unable to lock databases, not" + " updating"); wallops(NULL, - "\2Warning:\2 Unable to lock data directory;" + "\2Warning:\2 Unable to lock databases;" " databases will not be updated."); - log_perror("warning: unable to lock data directory," - " not updating databases"); } + call_callback_1(NULL, cb_save_complete, 0); } else { if (debug) log("debug: Saving databases"); call_callback(NULL, cb_save_data); if (!unlock_data()) { + log_perror("warning: unable to unlock databases"); wallops(NULL, - "\2Warning:\2 Unable to unlock data" - " directory; future database updates may" - " fail until the `%s' file is removed.", - LockFilename); - log_perror("warning: unable to unlock data directory"); + "\2Warning:\2 Unable to unlock databases;" + " future database updates may fail until the" + " `%s%s%s' file is removed.", + *LockFilename=='/' ? "" : services_dir, + *LockFilename=='/' ? "" : "/", LockFilename); } + call_callback_1(NULL, cb_save_complete, 1); } save_data = 0; last_update = now; diff -uNr ircservices-5.0.19/misc.c ircservices-5.0.20/misc.c --- ircservices-5.0.19/misc.c 2003-05-28 15:19:26 +0900 +++ ircservices-5.0.20/misc.c 2003-06-25 03:03:13 +0900 @@ -774,6 +774,24 @@ /*************************************************************************/ +/* Check whether the data directory is locked without actually attempting + * to lock it. Returns 1 if locked, 0 if not, or -1 if an error occurred + * while trying to check (in which case errno will be set to an appropriate + * value, i.e. whatever access() returned). + */ + +int is_data_locked(void) +{ + errno = 0; + if (access(LockFilename, F_OK) == 0) + return 1; + if (errno == ENOENT) + return 0; + return -1; +} + +/*************************************************************************/ + /* Unlock the data directory. Assumes we locked it in the first place. * Returns a positive nonzero value on success, zero on failure (unable to * remove the lock file), or -1 if the lock file didn't exist in the first diff -uNr ircservices-5.0.19/modules/Makefile ircservices-5.0.20/modules/Makefile --- ircservices-5.0.19/modules/Makefile 2003-05-28 15:19:26 +0900 +++ ircservices-5.0.20/modules/Makefile 2003-06-25 03:03:13 +0900 @@ -12,13 +12,14 @@ ########################################################################### SUBDIRS = $(shell /bin/ls -l | grep '^d' | sed 's/^.* //' | grep -v CVS) +.PHONY: all-dynamic all-static install clean spotless ########################################################################### all-dynamic: @set -e ; for i in $(SUBDIRS) ; do \ $(MAKE) -C $$i $@ DIRNAME="$$i" CFLAGS="$(CFLAGS)" ; \ - if [ ! -f .stamp -o "$$i/.stamp" -nt .stamp ] ; then \ + if $(TEST_NT) ! -f .stamp -o "$$i/.stamp" -nt .stamp ; then \ echo "touch .stamp" ; \ touch .stamp ; \ fi ; \ @@ -35,7 +36,7 @@ cat $$i/.modext-*.h >>modext.h ; \ cat $$i/.modsyms-*.c >>modsyms.c ; \ cat $$i/.modlist-*.c >>modlist.c ; \ - if [ "$$i/.stamp" -nt .stamp ] ; then \ + if $(TEST_NT) "$$i/.stamp" -nt .stamp ; then \ echo "touch .stamp" ; \ touch .stamp ; \ fi ; \ diff -uNr ircservices-5.0.19/modules/Makerules ircservices-5.0.20/modules/Makerules --- ircservices-5.0.19/modules/Makerules 2003-03-04 13:39:26 +0900 +++ ircservices-5.0.20/modules/Makerules 2003-06-17 15:39:45 +0900 @@ -45,11 +45,18 @@ DEPS = Makefile ../Makerules $(TOPDIR)/Makefile.inc $(TOPDIR)/Makefile \ $(TOPDIR)/services.h $(TOPDIR)/modules.h $(TOPDIR)/conffile.h \ $(INCLUDES) +.PHONY: all-dynamic all-static install clean spotless all-dynamic: $(MODULES) all-static: $(MODULES:.so=.a) - ld -r -o $(DIRNAME).o `ar -t .$(DIRNAME).a` - ar -cr ../modules.a $(DIRNAME).o + @if $(TEST_NT) ! -f $(DIRNAME).o -o .stamp -nt $(DIRNAME).o ; then \ + echo 'ld -r -o $(DIRNAME).o `ar -t .$(DIRNAME).a`' ; \ + ld -r -o $(DIRNAME).o `ar -t .$(DIRNAME).a` ; \ + echo 'ar -cr ../modules.a $(DIRNAME).o' ; \ + ar -cr ../modules.a $(DIRNAME).o ; \ + echo 'touch .stamp' ; \ + touch .stamp ; \ + fi ifeq ($(MODULES),) install: @@ -119,7 +126,7 @@ -e 's/^EXPORT_ARRAY[ ]*([ ]*\([^,]*\),[ ]*\([A-Za-z0-9_]*\)[ ]*)[ ]*$$/ \2:\1 \2[]/' \ -e 's/^EXPORT_FUNC[ ]*([ ]*\([A-Za-z0-9_]*\)[ ]*)[ ]*$$/ \1:void \1()/' ; \ done >.modsyms.tmp ; \ - if grep -q '^EXPORT_' .modsyms.tmp ; then \ + if grep >/dev/null 2>&1 '^EXPORT_' .modsyms.tmp ; then \ echo >&2 "$$file: invalid use of EXPORT_xxx" ; \ exit 1 ; \ fi ; \ @@ -127,20 +134,20 @@ sed 's/[^:]*:\(.*\)/extern \1;/' <.modsyms.tmp >>.modext-$$FILENAME.h;\ rm -f .modsyms.tmp ; \ echo '{0}};' >>.modsyms-$$FILENAME.c - @ar -rc $@ + @touch $@ ifneq ($(REALLY_COMPILE),2) $(TARGET)_static.o: FRC @$(MAKE) --no-print-directory $@ TARGET=$(@:_static.o=) INCLUDES2="$(INCLUDES-$(@:_static.o=.o))" REALLY_COMPILE=2 - @if [ ! -f .stamp -o "$@" -nt .stamp ] ; then \ + @if $(TEST_NT) ! -f .stamp -o "$@" -nt .stamp ; then \ echo "touch .stamp" ; \ touch .stamp ; \ fi $(TARGET).o $(OBJECTS): FRC @$(MAKE) --no-print-directory $@ TARGET=$(@:.o=) INCLUDES2="$(INCLUDES-$@)" REALLY_COMPILE=2 - @if [ ! -f .stamp -o "$@" -nt .stamp ] ; then \ + @if $(TEST_NT) ! -f .stamp -o "$@" -nt .stamp ; then \ echo "touch .stamp" ; \ touch .stamp ; \ fi diff -uNr ircservices-5.0.19/modules/chanserv/check.c ircservices-5.0.20/modules/chanserv/check.c --- ircservices-5.0.19/modules/chanserv/check.c 2003-05-28 15:19:27 +0900 +++ ircservices-5.0.20/modules/chanserv/check.c 2003-06-25 03:03:14 +0900 @@ -168,12 +168,12 @@ * the ircd allows it. */ if (source && !is_oper(user) && irc_stricmp(source, user->nick) == 0) { - if (!(oldmodes & CUMODE_o) || u->flags & CUFLAG_DEOPPED) { + if (!(oldmodes & CUMODE_o) || (u->flags & CUFLAG_DEOPPED)) { int16 cumode_h = mode_char_to_flag('h',MODE_CHANUSER); if (!((oldmodes & cumode_h) && !((oldmodes^modes) & ~(CUMODE_v|cumode_h))) ) { - local_set_cumodes(c, '-', modes, user->nick); + local_set_cumodes(c, '-', (modes & ~oldmodes), user->nick); } } return; diff -uNr ircservices-5.0.19/modules/chanserv/main.c ircservices-5.0.20/modules/chanserv/main.c --- ircservices-5.0.19/modules/chanserv/main.c 2003-05-28 15:19:27 +0900 +++ ircservices-5.0.20/modules/chanserv/main.c 2003-06-25 03:03:14 +0900 @@ -1780,11 +1780,16 @@ if (!EnableGetpass) cmd_GETPASS->name = ""; cmd = lookup_cmd(module, "SET SECURE"); - if (cmd) + if (cmd) { cmd->help_param1 = s_NickServ; + cmd->help_param2 = s_NickServ; + } cmd = lookup_cmd(module, "SET SUCCESSOR"); if (cmd) cmd->help_param1 = (char *)(long)CSMaxReg; + cmd = lookup_cmd(module, "SUSPEND"); + if (cmd) + cmd->help_param1 = s_OperServ; if (!add_callback(NULL, "reconfigure", do_reconfigure) || !add_callback(NULL, "introduce_user", introduce_chanserv) diff -uNr ircservices-5.0.19/modules/database/extsyms.c ircservices-5.0.20/modules/database/extsyms.c --- ircservices-5.0.19/modules/database/extsyms.c 2003-05-28 15:19:27 +0900 +++ ircservices-5.0.20/modules/database/extsyms.c 2003-06-25 03:03:14 +0900 @@ -41,7 +41,34 @@ #if defined(GCC3_HACK) -#define IMPORT_FUNC(modulename, module, func) \ +# if defined(__sparc__) + +# define IMPORT_FUNC(modulename, module, func) \ +static void __dblocal_##func##_stub0(void) { \ + void *ptr = NULL; \ + if (!module) \ + module = find_module(modulename); \ + if (module) \ + ptr = get_module_symbol(module, #func); \ + if (!ptr) \ + fatal_no_symbol(#func); \ + __dblocal_##func = ptr; \ +} \ +static void *__dblocal_##func##_stub1(void) { \ + __dblocal_##func##_stub0(); \ + __builtin_return(__builtin_apply((void *)__dblocal_##func, \ + __builtin_apply_args(), 64)); \ +} \ +static void __dblocal_##func##_stub(void) { \ + (void) __builtin_apply((void *)__dblocal_##func##_stub1, \ + __builtin_apply_args(), 64); \ + asm("ld [%sp-128],%i0"); \ +} \ +typeof(func) *__dblocal_##func = (typeof(func) *) __dblocal_##func##_stub; + +#else /* not SPARC */ + +# define IMPORT_FUNC(modulename, module, func) \ static void __dblocal_##func##_stub0(void) { \ void *ptr = NULL; \ if (!module) \ @@ -59,6 +86,8 @@ } \ typeof(func) *__dblocal_##func = (typeof(func) *) __dblocal_##func##_stub; +#endif /* to SPARC or not to SPARC */ + #elif defined(__GNUC__) #define IMPORT_FUNC(modulename, module, func) \ diff -uNr ircservices-5.0.19/modules/httpd/auth-password.c ircservices-5.0.20/modules/httpd/auth-password.c --- ircservices-5.0.19/modules/httpd/auth-password.c 2003-05-28 15:19:27 +0900 +++ ircservices-5.0.20/modules/httpd/auth-password.c 2003-06-25 03:03:14 +0900 @@ -120,7 +120,7 @@ DirInfo di; char *s, *d; static const char *base64_chars = - "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789"; + "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"; static DirInfo *new_protected = NULL; static int new_protected_count = 0; diff -uNr ircservices-5.0.19/modules/memoserv/main.c ircservices-5.0.20/modules/memoserv/main.c --- ircservices-5.0.19/modules/memoserv/main.c 2003-05-28 15:19:27 +0900 +++ ircservices-5.0.20/modules/memoserv/main.c 2003-06-25 03:03:14 +0900 @@ -625,10 +625,16 @@ levstr = getstring(u->ngi, CHAN_HELP_REQSOP_LEV); } notice_help(s_MemoServ, u, MEMO_HELP); - if (MSExpire) + if (MSExpire) { notice_help(s_MemoServ, u, MEMO_HELP_EXPIRES, maketime(u->ngi,MSExpire,MT_DUALUNIT)); - notice_help(s_MemoServ, u, MEMO_HELP_END, levstr, *p_s_ChanServ); + } + if (find_module("chanserv/access-levels")) { + notice_help(s_MemoServ, u, MEMO_HELP_END_LEVELS, levstr, + *p_s_ChanServ); + } else { + notice_help(s_MemoServ, u, MEMO_HELP_END_XOP); + } } else if (call_callback_2(module, cb_help, u, cmd) > 0) { return; } else if (stricmp(cmd, "COMMANDS") == 0) { diff -uNr ircservices-5.0.19/modules/nickserv/Makefile ircservices-5.0.20/modules/nickserv/Makefile --- ircservices-5.0.19/modules/nickserv/Makefile 2003-05-28 15:19:26 +0900 +++ ircservices-5.0.20/modules/nickserv/Makefile 2003-06-25 03:03:13 +0900 @@ -24,7 +24,8 @@ INCLUDES-access.o = $(TOPDIR)/commands.h \ $(TOPDIR)/modules/operserv/operserv.h INCLUDES-autojoin.o = $(TOPDIR)/commands.h \ - $(TOPDIR)/modules/operserv/operserv.h + $(TOPDIR)/modules/operserv/operserv.h \ + $(TOPDIR)/modules/chanserv/chanserv.h INCLUDES-link.o = $(TOPDIR)/commands.h \ $(TOPDIR)/modules/operserv/operserv.h INCLUDES-mail-auth.o = $(TOPDIR)/commands.h $(TOPDIR)/modules/mail/mail.h \ diff -uNr ircservices-5.0.19/modules/nickserv/autojoin.c ircservices-5.0.20/modules/nickserv/autojoin.c --- ircservices-5.0.19/modules/nickserv/autojoin.c 2003-05-28 15:19:27 +0900 +++ ircservices-5.0.20/modules/nickserv/autojoin.c 2003-06-25 03:03:14 +0900 @@ -16,11 +16,14 @@ #include "commands.h" #include "nickserv.h" #include "modules/operserv/operserv.h" +#include "modules/chanserv/chanserv.h" /*************************************************************************/ static Module *module; static Module *module_nickserv; +static Module *module_chanserv; +static typeof(check_access_cmd) *check_access_cmd_p; static int NSAutojoinMax; @@ -52,8 +55,12 @@ LIST_SEARCH(u->chans, chan->name, ngi->ajoin[i], irc_stricmp, uc); if (!uc) { Channel *c = get_channel(ngi->ajoin[i]); - if (c && (c->mode & CMODE_i)) + if (c && (c->mode & CMODE_i) + && c->ci && check_access_cmd_p + && (*check_access_cmd_p)(u, c->ci, "INVITE", NULL) > 0 + ) { send_cmd(s_NickServ, "INVITE %s %s", u->nick, ngi->ajoin[i]); + } send_cmd(ServerName, "SVSJOIN %s %s", u->nick, ngi->ajoin[i]); } } @@ -166,8 +173,36 @@ /*************************************************************************/ +static int do_load_module(Module *mod, const char *name) +{ + if (strcmp(name,"chanserv/main") == 0) { + module_chanserv = mod; + if (!(check_access_cmd_p = get_module_symbol(mod,"check_access_cmd"))){ + module_log("Unable to resolve symbol `check_access_cmd' in" + " module `chanserv/main', auto-inviting disabled"); + } + } + return 0; +} + +/*************************************************************************/ + +static int do_unload_module(Module *mod) +{ + if (mod == module_chanserv) { + check_access_cmd_p = NULL; + module_chanserv = NULL; + } + return 0; +} + +/*************************************************************************/ + int init_module(Module *module_) { + Module *mod; + + module = module_; if (!(protocol_features & PF_SVSJOIN)) { @@ -194,11 +229,19 @@ return 0; } - if (!add_callback(module_nickserv, "identified", do_identified)) { + if (!add_callback(NULL, "load module", do_load_module) + || !add_callback(NULL, "unload module", do_unload_module) + || !add_callback(module_nickserv, "identified", do_identified) + ) { module_log("Unable to add callbacks"); exit_module(0); return 0; } + + mod = find_module("chanserv/main"); + if (mod) + do_load_module(mod, "chanserv/main"); + return 1; } @@ -210,6 +253,9 @@ shutdown_unused = shutdown_unused; #endif + if (module_chanserv) + do_unload_module(module_chanserv); + if (module_nickserv) { remove_callback(module_nickserv, "identified", do_identified); unregister_commands(module_nickserv, cmds); @@ -217,6 +263,9 @@ module_nickserv = NULL; } + remove_callback(NULL, "unload module", do_unload_module); + remove_callback(NULL, "load module", do_load_module); + return 1; } diff -uNr ircservices-5.0.19/modules/nickserv/mail-auth.c ircservices-5.0.20/modules/nickserv/mail-auth.c --- ircservices-5.0.19/modules/nickserv/mail-auth.c 2003-05-28 15:19:27 +0900 +++ ircservices-5.0.20/modules/nickserv/mail-auth.c 2003-06-25 03:03:14 +0900 @@ -1,4 +1,4 @@ -/* Nickname mail address authorization module. +/* Nickname mail address authentication module. * * IRC Services is copyright (c) 1996-2003 Andrew Church. * E-mail: @@ -23,7 +23,7 @@ /* * This module provides the ability to verify the accuracy of E-mail * addresses associated with nicknames. Upon registering a new nickname - * or changing the E-mail address of a nickname, a random authorization + * or changing the E-mail address of a nickname, a random authentication * code (see below) is generated and mailed to the user, with instructions * to use the AUTH command (provided by this module) to verify the nick * registration or address change. Until this is done, the nick may not @@ -73,20 +73,21 @@ /*************************************************************************/ -/* Authorization types. */ +/* Authentication types. */ #define AUTHTYPE_REGISTER 0 #define AUTHTYPE_SET_EMAIL 1 #define AUTHTYPE_SETAUTH 2 -/* Return the authorization type for the given code. */ +/* Return the authentication type for the given code. */ #define GET_AUTHTYPE(authcode) (((authcode) & (3<<8)) >> 8) /*************************************************************************/ /**************************** Local routines *****************************/ /*************************************************************************/ -/* Create an authorization code for the given nick. `flag' is the value of - * bits 9 and 8: 0 for a REGISTER, 1 for a SET EMAIL, or 2 for a SETAUTH. +/* Create an authentication code for the given nick. `flag' is the value + * of bits 9 and 8: 0 for a REGISTER, 1 for a SET EMAIL, or 2 for a + * SETAUTH. */ static void make_auth(NickGroupInfo *ngi, int flag) @@ -102,7 +103,7 @@ /*************************************************************************/ -/* Send mail to a nick's E-mail address containing the authorization code. +/* Send mail to a nick's E-mail address containing the authentication code. * `what' is one of the IS_* constants defined below. `caller_line' is * filled in by the macro below. Returns the result of sendmail(). */ @@ -211,8 +212,8 @@ notice_lang(s_NickServ, u, NICK_AUTH_SUCCEEDED_SETAUTH); break; } - module_log("%s@%s authorized %s for %s", u->username, u->host, what, - ni->nick); + module_log("%s@%s authenticated %s for %s", u->username, u->host, + what, ni->nick); } } @@ -422,7 +423,7 @@ /*************************************************************************/ -/* IDENTIFY check: do not allow identification if nick not authorized. */ +/* IDENTIFY check: do not allow identification if nick not authenticated. */ static int do_identify_check(const User *u, const char *pass) { @@ -448,7 +449,7 @@ && GET_AUTHTYPE(ngi->authcode) != AUTHTYPE_SET_EMAIL && now - ngi->authset >= NSNoAuthExpire ) { - module_log("Expiring unauthorized nick %s", ni->nick); + module_log("Expiring unauthenticated nick %s", ni->nick); return 1; } return 0; @@ -494,7 +495,7 @@ if (!NSRequireEmail) { module_log("NSRequireEmail must be set to use nickname" - " authorization"); + " authentication"); return 0; } diff -uNr ircservices-5.0.19/modules/nickserv/main.c ircservices-5.0.20/modules/nickserv/main.c --- ircservices-5.0.19/modules/nickserv/main.c 2003-05-28 15:19:27 +0900 +++ ircservices-5.0.20/modules/nickserv/main.c 2003-06-25 03:03:14 +0900 @@ -403,6 +403,12 @@ notice_help(s_NickServ, u, NICK_HELP_LIST); if (NSListOpersOnly) notice_help(s_NickServ, u, NICK_HELP_LIST_OPERSONLY); + } else if (stricmp(cmd, "RECOVER") == 0) { + notice_help(s_NickServ, u, NICK_HELP_RECOVER, + maketime(u->ngi,NSReleaseTimeout,MT_SECONDS)); + } else if (stricmp(cmd, "RELEASE") == 0) { + notice_help(s_NickServ, u, NICK_HELP_RELEASE, + maketime(u->ngi,NSReleaseTimeout,MT_SECONDS)); } else { help_cmd(s_NickServ, u, module, cmd); } @@ -1627,6 +1633,9 @@ int init_module(Module *module_) { + Command *cmd; + + module = module_; handle_config(); @@ -1653,6 +1662,10 @@ if (!EnableGetpass) cmd_GETPASS->name = ""; + cmd = lookup_cmd(module, "SUSPEND"); + if (cmd) + cmd->help_param1 = s_OperServ; + cb_command = register_callback(module, "command"); cb_help = register_callback(module, "HELP"); cb_help_cmds = register_callback(module, "HELP COMMANDS"); diff -uNr ircservices-5.0.19/modules/nickserv/nickserv.h ircservices-5.0.20/modules/nickserv/nickserv.h --- ircservices-5.0.19/modules/nickserv/nickserv.h 2003-05-28 15:19:27 +0900 +++ ircservices-5.0.20/modules/nickserv/nickserv.h 2003-06-25 03:03:14 +0900 @@ -63,7 +63,7 @@ char *email; char *info; - int32 authcode; /* Authorization code (used by mail-auth module) */ + int32 authcode; /* Authentication code (used by mail-auth module) */ time_t authset; /* Time authcode set (used by mail-auth module) */ SuspendInfo *suspendinfo; /* Suspension info (non-NULL => suspended) */ @@ -108,7 +108,7 @@ #define NS_TEMPORARY 0xC000 /* All temporary flags */ -/* Nickgroup authorization flags: */ +/* Nickname authorization flags: */ #define NA_IDENTIFIED 0x0001 /* User has IDENTIFY'd */ #define NA_IDENT_NOMAIL 0x0002 /* User has identified, but hasn't set an * E-mail address and one is required diff -uNr ircservices-5.0.19/modules/nickserv/util.c ircservices-5.0.20/modules/nickserv/util.c --- ircservices-5.0.19/modules/nickserv/util.c 2003-05-28 15:19:27 +0900 +++ ircservices-5.0.20/modules/nickserv/util.c 2003-06-25 03:03:14 +0900 @@ -220,7 +220,7 @@ /* Return whether the user has previously identified for the given nick * group. (1=yes, 0=no) If the nick group does not exist or is in a - * not-authorized state (i.e. authcode != 0), this function will always + * not-authenticated state (i.e. authcode != 0), this function will always * return 0. */ diff -uNr ircservices-5.0.19/modules/operserv/main.c ircservices-5.0.20/modules/operserv/main.c --- ircservices-5.0.19/modules/operserv/main.c 2003-05-28 15:19:27 +0900 +++ ircservices-5.0.20/modules/operserv/main.c 2003-06-25 03:03:14 +0900 @@ -593,9 +593,7 @@ extra = NULL; if (extra && stricmp(extra, "ALL") != 0) { - if (call_callback_2(module, cb_stats, u, extra) > 0) { - /* nothing */ - } else if (stricmp(extra, "RESET") == 0) { + if (stricmp(extra, "RESET") == 0) { int i; maxusercnt = usercnt; maxusertime = time(NULL); @@ -606,6 +604,8 @@ module_log("STATS RESET: put_operserv_data(%d) failed", i); wallops(s_OperServ, "Unable to update OperServ data!"); } + } else if (call_callback_2(module, cb_stats, u, extra) > 0) { + /* nothing */ } else if (stricmp(extra, "NETWORK") == 0) { uint32 read, written, socksize, totalsize; int ratio1, ratio2; @@ -1150,10 +1150,56 @@ /*************************************************************************/ +/* Callback and data used to send "update complete" message */ +static int do_update_complete(int successful); +static User *update_sender = NULL; + static void do_update(User *u) { + char *param = strtok_remaining(); + + if (param && *param) { + if (stricmp(param, "FORCE") != 0) { + syntax_error(s_OperServ, u, "UPDATE", OPER_UPDATE_SYNTAX); + return; + } else if (!is_services_admin(u)) { + notice_lang(s_OperServ, u, PERMISSION_DENIED); + return; + } + switch (is_data_locked()) { + case 1: + if (!unlock_data()) { + module_log_perror("UPDATE FORCE lock removal failed"); + notice_lang(s_OperServ, u, OPER_UPDATE_FORCE_FAILED); + return; + } + break; + case -1: + module_log_perror("UPDATE FORCE lock check failed"); + break; + } + } notice_lang(s_OperServ, u, OPER_UPDATING); save_data = 1; + update_sender = u; /* to send to when the update completes--it's safe + * to save this pointer since no more data will be + * processed before we use it again */ + add_callback(NULL, "save data complete", do_update_complete); +} + +static int do_update_complete(int successful) +{ + if (update_sender) { + if (successful) + notice_lang(s_OperServ, update_sender, OPER_UPDATE_COMPLETE); + else + notice_lang(s_OperServ, update_sender, OPER_UPDATE_FAILED); + update_sender = NULL; + } else { + log("BUG: no sender in do_update_complete()"); + } + remove_callback(NULL, "save data complete", do_update_complete); + return 0; } /*************************************************************************/ diff -uNr ircservices-5.0.19/modules/operserv/sline.c ircservices-5.0.20/modules/operserv/sline.c --- ircservices-5.0.19/modules/operserv/sline.c 2003-05-28 15:19:28 +0900 +++ ircservices-5.0.20/modules/operserv/sline.c 2003-06-25 03:03:14 +0900 @@ -123,6 +123,46 @@ } /*************************************************************************/ + +/* SQline checker, shared by check_sline() and check_sqline_nickchange(). + * Returns the reason string to be used if the user is to be killed, else + * NULL. + */ + +static char *check_sqline(const char *nick) +{ + User *u; + MaskData *sline; + + if (SQlineIgnoreOpers && (u = get_user(nick)) && is_oper(u)) + return NULL; + + sline = get_matching_maskdata(MD_SQLINE, nick); + if (sline) { + char *retval = NULL; + /* Don't kill/nickchange users if they just got changed to a guest + * nick */ + if (!is_guest_nick(nick)) { + char *reason = make_reason(SQlineReason, sline); + if (!SQlineKill && (protocol_features & PF_CHANGENICK)) { + send_cmd(ServerName, "432 %s %s Invalid nickname (%s)", + nick, nick, reason); + send_nickchange_remote(nick, make_guest_nick()); + } else { + /* User is to be killed */ + retval = reason; + } + } + send_sline(MD_SQLINE, sline); + time(&sline->lastused); + put_maskdata(MD_SQLINE, sline); + return retval; + } + + return NULL; +} + +/*************************************************************************/ /************************** Callback functions ***************************/ /*************************************************************************/ @@ -136,6 +176,7 @@ { const char *nick = av[0], *name = av[6], *ip = (ac>=9 ? av[8] : NULL); MaskData *sline; + char *reason; if (noakill) return 0; @@ -186,27 +227,10 @@ return 1; } - sline = get_matching_maskdata(MD_SQLINE, nick); - if (sline) { - int retval = 0; - /* Don't kill/nickchange users if they just got changed to a guest - * nick */ - if (!is_guest_nick(nick)) { - char *reason = make_reason(SQlineReason, sline); - if (!SQlineKill && (protocol_features & PF_CHANGENICK)) { - send_cmd(ServerName, "432 %s %s Invalid nickname (%s)", - nick, nick, reason); - send_nickchange_remote(nick, make_guest_nick()); - } else { - send_cmd(s_OperServ, "KILL %s :%s (%s)", nick, s_OperServ, - reason); - retval = 1; - } - } - send_sline(MD_SQLINE, sline); - time(&sline->lastused); - put_maskdata(MD_SQLINE, sline); - return retval; + reason = check_sqline(nick); + if (reason) { + send_cmd(s_OperServ, "KILL %s :%s (%s)", nick, s_OperServ, reason); + return 1; } return 0; @@ -221,33 +245,11 @@ static int check_sqline_nickchange(User *u, const char *oldnick) { - MaskData *sline; - - if (SQlineIgnoreOpers && is_oper(u)) - return 0; - - sline = get_matching_maskdata(MD_SQLINE, u->nick); - if (sline) { - int retval = 0; - /* Don't kill/nickchange users if they just got changed to a guest - * nick */ - if (!is_guest_nick(u->nick)) { - char *reason = make_reason(SQlineReason, sline); - if (!SQlineKill && (protocol_features & PF_CHANGENICK)) { - send_cmd(ServerName, "432 %s %s Invalid nickname (%s)", - u->nick, u->nick, reason); - send_nickchange_remote(u->nick, make_guest_nick()); - } else { - kill_user(s_OperServ, u->nick, reason); - retval = 1; - } - } - send_sline(MD_SQLINE, sline); - time(&sline->lastused); - put_maskdata(MD_SQLINE, sline); - return retval; + char *reason = check_sqline(u->nick); + if (reason) { + kill_user(s_OperServ, u->nick, reason); + return 1; } - return 0; } @@ -425,6 +427,27 @@ } /*************************************************************************/ + +/* OperServ HELP callback, to handle HELP SQLINE (complex). */ + +static int do_help(User *u, char *param) +{ + /* param should always be non-NULL here, but let's be paranoid */ + if (param && stricmp(param,"SQLINE") == 0) { + notice_help(s_OperServ, u, OPER_HELP_SQLINE); + if (SQlineKill) + notice_help(s_OperServ, u, OPER_HELP_SQLINE_KILL); + else + notice_help(s_OperServ, u, OPER_HELP_SQLINE_NOKILL); + if (SQlineIgnoreOpers) + notice_help(s_OperServ, u, OPER_HELP_SQLINE_IGNOREOPERS); + notice_help(s_OperServ, u, OPER_HELP_SQLINE_END); + return 1; + } + return 0; +} + +/*************************************************************************/ /***************************** Module stuff ******************************/ /*************************************************************************/ @@ -511,6 +534,7 @@ || !add_callback(NULL, "user nickchange (after)", check_sqline_nickchange) || !add_callback(NULL, "save data", do_save_data) || !add_callback(module_operserv, "expire maskdata", do_expire_maskdata) + || !add_callback(module_operserv, "HELP", do_help) ) { module_log("Unable to add callbacks"); exit_module(0); @@ -552,6 +576,7 @@ unregister_callback(module, cb_send_sgline); if (module_operserv) { + remove_callback(module_operserv, "HELP", do_help); remove_callback(module_operserv,"expire maskdata",do_expire_maskdata); unregister_commands(module_operserv, cmds); unuse_module(module_operserv); diff -uNr ircservices-5.0.19/modules/protocol/token.c ircservices-5.0.20/modules/protocol/token.c --- ircservices-5.0.19/modules/protocol/token.c 2003-05-28 15:19:28 +0900 +++ ircservices-5.0.20/modules/protocol/token.c 2003-06-25 03:03:14 +0900 @@ -73,7 +73,7 @@ } /* Add receive-message callback. */ - if (!add_callback_pri(NULL, "receive message", do_receive_message, 0)) { + if (!add_callback(NULL, "receive message", do_receive_message)) { module_log("Unable to add callback"); return 0; } diff -uNr ircservices-5.0.19/modules/protocol/unreal.c ircservices-5.0.20/modules/protocol/unreal.c --- ircservices-5.0.19/modules/protocol/unreal.c 2003-05-28 15:19:28 +0900 +++ ircservices-5.0.20/modules/protocol/unreal.c 2003-06-25 03:03:14 +0900 @@ -28,7 +28,7 @@ /*************************************************************************/ -/* Variable to hold the current module's pointer (required for all modules): */ +/* Variable to hold the current module's pointer: */ static Module *module; /* Variables for modules referenced by this one: */ diff -uNr ircservices-5.0.19/modules.c ircservices-5.0.20/modules.c --- ircservices-5.0.19/modules.c 2003-05-28 15:19:26 +0900 +++ ircservices-5.0.20/modules.c 2003-06-25 03:03:13 +0900 @@ -29,6 +29,8 @@ typedef struct callbacklist_ CallbackList; struct callbacklist_ { char *name; + int calling; /* used by {call,remove}_callback() for safe callback + * removal from inside the callback */ struct { callback_t func; int pri; @@ -427,6 +429,9 @@ return 0; } + if (debug) + log("debug: Unloading module `%s'", module->name); + exit_module = get_module_symbol(module, "exit_module"); if (exit_module && !exit_module(module)) return 0; @@ -648,19 +653,32 @@ int call_callback_5(Module *module, int id, void *arg1, void *arg2, void *arg3, void *arg4, void *arg5) { - int i; CallbackList *cl; + int res = 0; + int i; NO_NULL_MOD(module); if (id < 0 || id >= module->callbacks_count) return -1; cl = &module->callbacks[id]; + cl->calling = 1; ARRAY_FOREACH (i, cl->funcs) { - int res = cl->funcs[i].func(arg1, arg2, arg3, arg4, arg5); + res = cl->funcs[i].func(arg1, arg2, arg3, arg4, arg5); if (res != 0) - return res; + break; } - return 0; + if (cl->calling == 2) { /* flag indicating some callbacks were removed */ + ARRAY_FOREACH (i, cl->funcs) { + if (!cl->funcs[i].func) { + /* FIXME: make a general purpose macro for this, like + * LIST_FOREACH_SAFE? */ + ARRAY_REMOVE(cl->funcs, i); + i--; + } + } + } + cl->calling = 0; + return res; } /*************************************************************************/ @@ -752,7 +770,12 @@ ARRAY_SEARCH_SCALAR(cl->funcs, func, callback, index); if (index == cl->funcs_count) return 0; - ARRAY_REMOVE(cl->funcs, index); + if (cl->calling) { + cl->funcs[index].func = NULL; + cl->calling = 2; /* flag to call_callback() indicating CB removed */ + } else { + ARRAY_REMOVE(cl->funcs, index); + } return 1; } diff -uNr ircservices-5.0.19/sockets.c ircservices-5.0.20/sockets.c --- ircservices-5.0.19/sockets.c 2003-05-28 15:19:27 +0900 +++ ircservices-5.0.20/sockets.c 2003-06-25 03:03:13 +0900 @@ -88,7 +88,8 @@ static int flush_write_buffer(Socket *s); static void resize_rbuf(Socket *s, uint32 size); static void resize_wbuf(Socket *s, uint32 size); -static void relocate_buf(char *buf, char *ptr, char *end, char *top); +static void resize_buf(char **p_buf, char **p_ptr, char **p_end, char **p_top, + uint32 newsize); static int reclaim_buffer_space_one(Socket *s); static int reclaim_buffer_space(void); static int buffered_write(Socket *s, const char *buf, int len); @@ -350,6 +351,7 @@ struct timeval tv; int i; int32 res; + Socket *s, *s2; rfds = sock_fds; wfds = write_fds; @@ -372,8 +374,11 @@ return; } + s = NULL; for (i = 0; i < max_fd; i++) { - Socket *s = sockets[i]; + if (s) + s->flags &= ~SF_CALLBACK; + s = sockets[i]; if (s && s->fd != i) { log("sockets: BUG: sockets[%d]->fd = %d (should be equal)," " clearing socket from table", i, s->fd); @@ -497,6 +502,16 @@ } /* for all sockets */ + if (s) /* clear SF_CALLBACK from last socket */ + s->flags &= ~SF_CALLBACK; + + /* Clear out any ready-to-be-deleted sockets */ + /* FIXME: this should never happen but it seems to anyway */ + LIST_FOREACH_SAFE (s, allsockets, s2) { + if (s->flags & SF_DELETEME) + sock_free(s); + } + } /* check_sockets() */ /*************************************************************************/ @@ -729,6 +744,14 @@ return -1; } + /* Listener sockets don't need read/write buffers */ + free(s->rbuf); + free(s->wbuf); + s->rbuf = s->rptr = s->rend = s->rtop = NULL; + s->wbuf = s->wptr = s->wend = s->wtop = NULL; + s->rbufsize = 0; + s->wbufsize = 0; + if (max_fd < fd+1) { sockets = srealloc(sockets, (fd+1) * sizeof(*sockets)); for (i = max_fd; i < fd; i++) @@ -1096,8 +1119,14 @@ if (debug >= 3) log("debug: sockets: flush_write_buffer wanted %d, got %d", maxwrite, nwritten); - if (nwritten < 0 && errno != EAGAIN && errno != EINTR) - log_perror("sockets: flush_write_buffer(%d)", s->fd); + if (nwritten < 0 && errno != EAGAIN && errno != EINTR) { + int errno_save = errno; + if (errno != ECONNRESET && errno != EPIPE) + log_perror("sockets: flush_write_buffer(%d)", s->fd); + do_disconn(s, DISCONN_REMOTE); + errno = errno_save; + return -1; + } if (nwritten > 0) { s->flags &= ~SF_WARNED; s->wptr += nwritten; @@ -1130,100 +1159,54 @@ static void resize_rbuf(Socket *s, uint32 size) { - uint32 rlen = read_buffer_len(s); - - if (size <= rlen) { + if (size <= read_buffer_len(s)) { log("sockets: BUG: resize_rbuf(%d): size (%d) <= rlen (%d)", - s->fd, size, rlen); + s->fd, size, read_buffer_len(s)); + return; } - - if (rlen && s->rptr != s->rbuf) - relocate_buf(s->rbuf, s->rptr, s->rend, s->rtop); - - s->rbuf = srealloc(s->rbuf, size); - total_bufsize -= s->rbufsize; - total_bufsize += size; + resize_buf(&s->rbuf, &s->rptr, &s->rend, &s->rtop, size); s->rbufsize = size; - s->rptr = s->rbuf; - s->rend = s->rbuf + rlen; - s->rtop = s->rbuf + size; } static void resize_wbuf(Socket *s, uint32 size) { - uint32 wlen = write_buffer_len(s); - - if (size <= wlen) { + if (size <= write_buffer_len(s)) { log("sockets: BUG: resize_wbuf(%d): size (%d) <= wlen (%d)", - s->fd, size, wlen); + s->fd, size, write_buffer_len(s)); + return; } - - if (wlen && s->wptr != s->wbuf) - relocate_buf(s->wbuf, s->wptr, s->wend, s->wtop); - - s->wbuf = srealloc(s->wbuf, size); - total_bufsize -= s->wbufsize; - total_bufsize += size; + resize_buf(&s->wbuf, &s->wptr, &s->wend, &s->wtop, size); s->wbufsize = size; - s->wptr = s->wbuf; - s->wend = s->wbuf + wlen; - s->wtop = s->wbuf + size; } +/* Routine that does the actual resizing. Assumes that newsize >= current + * size. */ +static void resize_buf(char **p_buf, char **p_ptr, char **p_end, char **p_top, + uint32 newsize) +{ + uint32 size = *p_top - *p_buf; + char *newbuf; + uint32 len = 0; -/* Helper routine to relocate buffer data to beginning of buffer. */ -static void relocate_buf(char *buf, char *ptr, char *end, char *top) -{ - if (end == buf) /* If end points at beginning of buffer */ - end = top; /* then make things easier on ourselves */ - - if (end < ptr) { - - /* This is tricky; we have to shift stuff around where we may - * not have much (or any) spare space in which to do so. We - * take the liberty here of using an extra NET_MIN_BUFSIZE size - * temporary buffer, and rotate the buffer either forwards or - * backwards (whichever is closer) by NET_MIN_BUFSIZE blocks - * until everything is lined up at rbuf. */ - - char tmpbuf[NET_MIN_BUFSIZE]; - uint32 len; - if (end - buf > top - ptr) { - /* More data at the beginning, so rotate forwards */ - while (ptr < top) { - if (ptr + NET_MIN_BUFSIZE <= top) - len = NET_MIN_BUFSIZE; - else - len = top - ptr; - memcpy(tmpbuf, top - len, len); - memmove(buf + len, buf, end - buf); - memcpy(buf, tmpbuf, len); - ptr += len; - end += len; - } - } else { - /* More data at the end, so rotate backwards */ - while (end > buf) { - if (end - NET_MIN_BUFSIZE >= buf) - len = NET_MIN_BUFSIZE; - else - len = end - buf; - memcpy(tmpbuf, buf, len); - memmove(ptr - len, ptr, top - ptr); - memcpy(top - len, tmpbuf, len); - ptr -= len; - end -= len; - } - /* Data is at the wrong end of the buffer now, so move it */ - memmove(buf, ptr, top - ptr); - } - - } else { /* end >= ptr, simple memmove */ - - memmove(buf, ptr, end - ptr); - - } + if (newsize <= size) + return; + newbuf = smalloc(newsize); + /* Copy old data to new buffer, if any */ + if (*p_end < *p_ptr) { + len = *p_top - *p_ptr; + memcpy(newbuf, *p_ptr, len); + *p_ptr = *p_buf; + } + if (*p_end > *p_ptr) { + memcpy(newbuf+len, *p_ptr, *p_end - *p_ptr); + len += *p_end - *p_ptr; + } + free(*p_buf); + *p_buf = newbuf; + *p_ptr = newbuf; + *p_end = newbuf + len; + *p_top = newbuf + newsize; } /*************************************************************************/ @@ -1298,20 +1281,17 @@ /* Fill up to the current buffer size. */ if (write_buffer_len(s) < s->wbufsize-1) { + int maxwrite; + /* If buffer is empty, reset pointers to beginning for efficiency*/ + if (write_buffer_len(s) == 0) + s->wptr = s->wend = s->wbuf; if (s->wptr == s->wbuf) { - /* Buffer not wrapped, no need for special checks */ - if (s->wtop - s->wend - 1 < left) - nwritten = s->wtop - s->wend - 1; - else - nwritten = left; - if (nwritten) { - memcpy(s->wend, buf, nwritten); - buf += nwritten; - left -= nwritten; - s->wend += nwritten; - } + /* Buffer not wrapped */ + maxwrite = s->wtop - s->wend - 1; } else { - /* See if we need to write up to the end of the buffer. */ + /* Buffer is wrapped. If this write would reach to or past + * the end of the buffer, write it first and reset the end + * pointer to the beginning of the buffer. */ if (s->wend+left >= s->wtop && s->wptr <= s->wend) { nwritten = s->wtop - s->wend; memcpy(s->wend, buf, nwritten); @@ -1320,16 +1300,20 @@ s->wend = s->wbuf; } /* Now we can copy a single chunk to wend. */ - if (s->wptr > s->wend && s->wptr - s->wend - 1 < left) - nwritten = s->wptr - s->wend - 1; + if (s->wptr > s->wend) + maxwrite = s->wptr - s->wend - 1; else - nwritten = left; - if (nwritten) { - memcpy(s->wend, buf, nwritten); - buf += nwritten; - left -= nwritten; - s->wend += nwritten; - } + maxwrite = left; /* guaranteed to fit from above code */ + } + if (left > maxwrite) + nwritten = maxwrite; + else + nwritten = left; + if (nwritten) { + memcpy(s->wend, buf, nwritten); + buf += nwritten; + left -= nwritten; + s->wend += nwritten; } } diff -uNr ircservices-5.0.19/timeout.h ircservices-5.0.20/timeout.h --- ircservices-5.0.19/timeout.h 2003-05-28 15:19:27 +0900 +++ ircservices-5.0.20/timeout.h 2003-06-25 03:03:13 +0900 @@ -36,12 +36,13 @@ /* Check the timeout list for any pending actions. */ extern void check_timeouts(void); -/* Add a timeout to the list to be triggered in `delay' seconds. Any - * timeout added from within a timeout routine will not be checked during - * that run through the timeout list. Always succeeds. */ +/* Add a timeout to the list to be triggered in `delay' seconds (`delay' + * may be zero). Any timeout added from within a timeout routine will not + * be checked during that run through the timeout list. Always succeeds. */ extern Timeout *add_timeout(int delay, void (*code)(Timeout *), int repeat); -/* Add a timeout to the list to be triggered in `delay' milliseconds. */ +/* Add a timeout to the list to be triggered in `delay' milliseconds + * (`delay' may be zero). */ extern Timeout *add_timeout_ms(uint32 delay, void (*code)(Timeout *), int repeat); diff -uNr ircservices-5.0.19/version.sh ircservices-5.0.20/version.sh --- ircservices-5.0.19/version.sh 2003-05-28 14:18:53 +0900 +++ ircservices-5.0.20/version.sh 2003-06-25 02:57:55 +0900 @@ -6,7 +6,7 @@ # $PROGRAM is the string returned as the first part of a /VERSION reply, # and must not contain spaces. It is not used anywhere else. PROGRAM=ircservices -VERSION=5.0.19 +VERSION=5.0.20 # Increment Services build number if [ -f version.c ] ; then