diff --git a/NEWS b/NEWS index 44a6d3594..34d77313b 100644 --- a/NEWS +++ b/NEWS @@ -37,9 +37,13 @@ Eggdrop v1.9.4: moved to a rawt bind in 1.9.3, causing issuse with scripts attempting to unbind this internal reference +Module changes: + - None + Eggdrop config changes: - None - + +_________________________________________________________________ Eggdrop v1.9.3: diff --git a/aclocal.m4 b/aclocal.m4 index fc810bc45..9fdf95d10 100644 --- a/aclocal.m4 +++ b/aclocal.m4 @@ -573,7 +573,7 @@ AC_DEFUN([EGG_CHECK_MODULE_SUPPORT], [ MODULES_OK="yes" MOD_EXT="so" - DEFAULT_MAKE="debug" + DEFAULT_MAKE="eggdrop" LOAD_METHOD="dl" WEIRD_OS="yes" UNKNOWN_OS="no" diff --git a/configure b/configure index b7e1fb352..01e93319a 100755 --- a/configure +++ b/configure @@ -5905,7 +5905,7 @@ $as_echo "$egg_cv_var_system_release" >&6; } MODULES_OK="yes" MOD_EXT="so" - DEFAULT_MAKE="debug" + DEFAULT_MAKE="eggdrop" LOAD_METHOD="dl" WEIRD_OS="yes" UNKNOWN_OS="no" diff --git a/doc/ACCOUNTS b/doc/ACCOUNTS new file mode 100644 index 000000000..aecd84ad5 --- /dev/null +++ b/doc/ACCOUNTS @@ -0,0 +1,157 @@ +Account tracking in Eggdrop + +In Eggdrop 1.9.3, Eggdrop added the ability to associate nicknames with +the service accounts they are logged into. It is IMPORTANT to note that +Eggdrop's ability to do this is dependent on an IRC server's +implementation of three features- the IRCv3 extended-join capability, +the IRCv3 account-notify capability, and WHOX support. All three of +these features must be supported by the server and, in the case of +extended-join and account-notify, requested by Eggdrop in order for +Eggdrop to maintain "perfect" association between nicknames and account +statuses. + +REQUIRED SERVER CAPABILITIES + +You're going to see this repeated a lot- the IRC server must support +three features in order for Eggdrop to accurately associate accounts +with nicknames. These three features allow Eggdrop to always know the +current association between an account and a nickname by getting account +statuses of users already on a channel when it joins, new users joining +a channel, and users who authenticate while on a channel. + +extended-join + +extended-join is an IRCv3-defined capability that adds the account name +of a user to the JOIN message sent by the IRC server, alerting clients +that a new member has joined a channel. Enabling this capability allows +Eggdrop to immediately determine the account name associated with a user +joining a channel + +account-notify + +account-notify is an IRCv3-defined capability that sends a message to a +channel when a member of the channel either authenticates or +deauthenticates from their account. Enabling this capability allows +Eggdrop to immediately associate an account to a channel member when +they authenticate or deauthenticate. + +WHOX + +'WHOX `_ is a server feature +that allows a client to request custom fields to be returned in a WHO +response. If a server supports this capability, Eggdrop sends a WHOX +query to the server when it joins a channel, allowing it to immediately +determine accounts associated with channel members when Eggdrop joins a +channel. + +ENABLING EGGDROP ACCOUNT TRACKING + +By default, the Eggdrop config file will attempt to enable all the +capabilities required for account tracking. There are two settings to +pay attention to : + + # To request the account-notify feature via CAP, set this to 1 + set account-notify 1 + + # To request the extended-join feature via CAP, set this to 1 + set extended-join 1 + +The ability of a server to support WHOX queries is determined via a +server's ISUPPORT (005) reply. If a server supports WHOX queries, +Eggdrop will automatically enable this feature. + +CHECKING ACCOUNT-TRACKING STATUS + +While Eggdrop is running, join the partyline and type .status. If +account-tracking is enabled (both the server supports and Eggdrop has +requested), you'll see this line : + + Loaded module information: + #eggdroptest : (not on channel) + Channels: #eggdroptest (trying) + Account tracking: Enabled <--- This line + Online as: BeerBot (BeerBot) + +Otherwise, the prompt will tell you which required capability is +missing/not enabled : + + Loaded module information: + #eggdroptest : 2 members, enforcing "+tn" (greet) + Channels: #eggdroptest (need ops) + Account tracking: Best-effort (Missing capabilities: extended-join, see .status all for details) <---- This line + Online as: Eggdrop (Eggdrop) + +DETERMINING IF A SERVER SUPPORTS ACCOUNT CAPABILITIES + +A server announces the capabilities it supports via a CAP request. If +you have Tcl enabled on the partyline (or via a raw message from a +client), you can send .tcl cap ls and see if the extended-join and +account-notify capabilities are supported by the server. If they are not +listed, the server does not support it. + +A server announces if it supports WHOX via its ISUPPORT (005) +announcement. If you have Tcl enabled on the partyline, you can send +.tcl issupport isset WHOX and if it returns '1', WHOX is supported by +the server. + +BEST-EFFORT ACCOUNT TRACKING + +If a server only supports some, but not all, of the required +capabilities, Eggdrop will switch to 'best effort' account tracking. +This means Eggdrop will update account statuses whenever it sees account +information, but in this mode Eggdrop cannot guarantee that all account +associations are up to date. + +If a server does not support extended-join, Eggdrop will not be able to +determine the account associated with a user when they join. Eggdrop can +update this information by sending a WHOX to the server. + +If a server does not support account-notify, Eggdrop will not be able to +determine the account associated with a user if they +authenticate/deauthenticate from their account after joining a channel. +Eggdrop can update this information by sending a WHOX to the server. + +If a server does not support WHOX, Eggdrop will not be able to determine +the accounts associated with users already on a channel before Eggdrop +joined. There is no reliable way to update this information. + +One workaround to significantly increase the accuracy of account +tracking for scripts in a 'best effort' scenario would be to issue a +WHOX query (assuming the server supports it), wait for the reply from +the server, and then query for the account information. + +account-tag + +One supplementary capability that can assist a best-effort account +tracking scenario is the IRCv3-defined account-tag capability. The +account-tag capability attaches a tag with the account name associated +with the user sending a command. Enabling this capability allows Eggdrop +to update its account tracking every time a user talks in channel, sets +a mode, sends a kick, etc. While still not able to offer the same level +of accuracy as enabling the "main three" account tracking features, it +can increase the overall accuracy of the account list. Additionally, +binds that react to user activity (pub, kick, mode, etc) containing +account-tag will update the internal account list prior to executing the +associated callback, so looking up the account name in the callback can +be considered accurate. + +USING ACCOUNTS WITH TCL SCRIPTS + +The Eggdrop Tcl ACCOUNT bind is triggered whenever an existing account +record stored by Eggdrop is modified, such as a user de/authenticating +to their account while in a channel, or information such as an +account-tag being seen that updates an existing user. However, the +ACCOUNT bind will NOT be triggered for the creation of a new user +record, such as a user joining a channel. The bind is triggered for +every channel the user is seen on- this means if a user is present with +Eggdrop on four channels, the bind will be executed four times, each +time with a different channel variable being passed to the associated +Tcl procedure. Additionally, in a best-effort account tracking +situation, Eggdrop will update the account associated with a user on all +channels, not just the channel the event is seen on (and thus resulting +in a bind trigger for each channel the user is on). + +In order to trigger Tcl script events to cover all instances where a +user logs in, you need to pair an ACCOUNT bind with a JOIN bind. This +will allow you to execute account-based events when a user joins as well +as if they authenticate after joining. diff --git a/doc/Changes1.9 b/doc/Changes1.9 index a8c1c3762..ead337dba 100644 --- a/doc/Changes1.9 +++ b/doc/Changes1.9 @@ -1,8 +1,398 @@ -Eggdrop Changes (Last Updated 2021-01-24): +Eggdrop Changes (Last Updated 2022-11-11): __________________________________________ -Eggdrop v1.9.0rc1: +Eggdrop v1.9.4rc1: + + 2022-11-10 * Fix matchattr without flags + [Found by: crazycatdevs, wilk / Patch by: thommey] + * redo matching docs + * Update NEWS + * Update version strings to 1.9.4 + * Generate docs with 1.9.4 version + 2022-10-05 * Avoid freeaddrinfo(NULL) + [Found by: Release_ / Patch by: michaelortmann] + 2022-10-01 * Fix typo + * Fix typos + 2022-09-27 * Fix format specifier for intptr_t + [Found by: michaelortmann / Patch by: michaelortmann] + * doc typo + [Found by: SpiKe^^ / Patch by: simple] + * Update doc typo + * Update install doc + [Found by: CrazyCatDevs / Patch by: CrazyCatDevs] + * Fix typos + 2022-09-24 * Move account bind to irc.mod and normalize account bind. + [Patch by: thommey] + * Raw and rawt bind now support wildcards, necessary for account-tag usage + * Document how to wildcard match against an asterisk (*) + * Eggdrop no longer interprets WHO response it didn't request in the WHOX case + [Found by: Geo / Patch by: thommey] + * Offer the option to use account-tag for imperfect tracking + [Patch by: thommey] + * Format fix for .channel + * Move away and account change logs from console +j to +m + [Found by: Geo / Patch by: Geo, thommey] + * Add ACCOUNTS doc + [Patch by: Geo] + 2022-09-06 * Fix bottree format error + [Found by: SergioR] + * Fix tag handling in rawt + [Found by: thommey / Patch by: Geo, thommey] + 2022-08-28 * Undo changes to format specifiers for hooked function shareout + * Fix shareout crash #1324 (see fb9f52ca) + [Found by: ploxxusVulgaris / Patch by: thommey] + 2022-08-27 * Fix format specifiers + [Patch by: thommey] + * Fix bad +host logmsg + [Found by: thommey / Patch by: Geo] + 2022-08-26 * Fix gotmsg being moved to raw, no tags available + 2022-08-24 * Move gotmsg back to raw bind + [Found by: CrazyCat] + * Fixes a DNS bug when DCC connections were disconnected while the DNS request was pending. Fixes + #1174 (#1319) + [Found by: DasBrain, ERR1R, CrazyCat / Patch by: thommey] + +Eggdrop v1.9.3 (2022-08-11): + + 2022-08-11 * docfix + * Fix plain SASL when TLS unavailable + [Found by: @eryg-kai / Patch by: @eryg-kai] + * doc updates + * Eggdrop v1.9.3 *STABLE* + +Eggdrop v1.9.3rc1 (2022-07-12): + + 2022-07-12 * remove old docs from newversion + * Update version strings to 1.9.3 + * Generate docs with 1.9.3 version + * doc format fix + * Eggdrop v1.9.3 Release Candidate 1 + 2022-07-11 * update NEWS THANKS + * Fix extjoin config typo + * remove account2hand + 2022-07-08 * Update NEWS + * add account2hand doc + 2022-07-07 * reduce TLS log noise + 2022-07-05 * typo fixes + 2022-07-04 * create thread as detached + [Found by: ]x[ / Patch by: michaelortmann] + 2022-07-03 * Uptime dns cache expiry + [Found by: Geo / Patch by: thommey] + 2022-07-02 * fix disable-ipv6 + [Patch by: michaelortmann] + * Fix dcc ident, truncation warning + 2022-06-21 * fix account logic + 2022-06-19 * Update documentation structure + * add missing ifdef TLS + * missing TLS ifdef + * Update flood buffer size + 2022-06-18 * remove Context from modules + [Found by: michaelortmann / Patch by: michaelortmann] + * Update inet_aton.c from FreeBSD uptream removes advertising clause (#967) + [Found by: michaelortmann / Patch by: michaelortmann] + 2022-06-17 * Add account tracking to Eggdrop + 2022-06-11 * Add timers with names + [Found by: Zartek / Patch by: Geo] + 2022-06-06 * No escape codes to non-ssl conns + [Found by: michaelortmann / Patch by: michaelortmann] + * Fix strcpy param overlap + [Found by: michaelortmann / Patch by: michaelortmann] + * simple_sprintf() into snprintf() + [Found by: michaelortmann / Patch by: michaelortmann] + * fix strlcpy size params + [Found by: michaelortmann / Patch by: michaelortmann] + * inline keyword cleanup + [Found by: michaelortmann / Patch by: michaelortmann] + * Adjust buffer + [Found by: michaelortmann / Patch by: michaelortmann] + * sprintf/egg_snprintf -> strlcpy + [Found by: michaelortmann / Patch by: michaelortmann] + * simplify main loop + [Found by: michaelortmann / Patch by: michaelortmann] + * Cleanup includes + [Found by: michaelortmann / Patch by: michaelortmann] + * Simplify tcl_channel_add + [Found by: michaelortmann / Patch by: michaelortmann] + * mod format specifier + [Found by: michaelortmann / Patch by: michaelortmann] + * Add field initializers + [Found by: michaelortmann / Patch by: michaelortmann] + * getrusage() is POSIX 2001 + [Found by: michaelortmann / Patch by: michaelortmann] + * Cleanup botunlink + [Found by: michaelortmann / Patch by: michaelortmann] + * run autotools + 2022-06-04 * Fix --disable-tls compile bug + [Found by: michaelortmann / Patch by: michaelortmann] + * Doc typo + [Found by: dereckson / Patch by: dereckson] + * Fix memory leak - SSL_get_peer_certificate() -> X509_free() (#1262) + [Found by: michaelortmann / Patch by: michaelortmann] + * Fix ident lookup bind (#1254) + [Found by: thommey / Patch by: michaelortmann] + * Fix pthread include and autoconf (#1270) + [Found by: carlin0 / Patch by: michaelortmann] + * Add server-online offline value to doc + [Patch by: ZarTek-Creole] + * Fix typo + * Update THANKS + 2022-03-27 * Update ext-join acct for all chans + [Found by: Jobe / Patch by: Geo] + 2022-03-13 * Fix -t without active other sockets + [Found by: Geo / Patch by: thommey] + 2022-03-08 * Create configure_flags.yml + 2022-03-07 * Delete main.yml + 2022-03-05 * Fix CAP output in .status + 2022-03-02 * Revert "Fix status output of capabilities" + 2022-03-01 * Fix string truncation + * Fix status output of capabilities + 2022-02-07 * Update docs for 1.9.2rc2 + 2022-01-31 * Fix tdns mutex + [Found by: Geo / Patch by: michaelortmann] + 2022-01-29 * Revert "Merge branch 'mmorton/mutex' into develop" + +Eggdrop v1.9.2 (2022-03-06): + + 2022-03-06 * Fix CAP output in .status + * Eggdrop v1.9.2 *STABLE* + 2022-02-27 * Typo fix + * Update docs + * Update copyright to 2022 + * fix NULL ptr (#1261) + [Found by: tuvok / Patch by: Geo] + * Fix twitch restart/rehash crash + [Found by: roughnecks / Patch by: Lord255, michaelortmann, thommey] + * update NEWS THANKS + +Eggdrop v1.9.2rc2 (2022-02-07): + + 2022-02-07 * Add UPGRADING to gendocs + * Remove unneeded DNS comments from config + * Restore missing 1.9.0 NEWS + * Update docs + * Initialize vars + * init mutex + * Fix PBKDF2 cheks for PASS/2 + [Found by: ldm / Patch by: michaelortmann] + * Remove old -n doc references + * Fix indent (#1258) + * Fix users.rst typo + [Found by: kveremitz / Patch by: PeGaSuS-Coder] + * Fix tdns mutex + [Found by: Geo / Patch by: michaelortmann] + * fix cap exports + * typo fix + * Eggdrop v1.9.2 Release Candidate 2 + +Eggdrop v1.9.2rc1 (2021-12-18): + + 2021-12-18 * make tdns default + * Update version strings to 1.9.2 + * Generate docs with 1.9.2 version + * Eggdrop v1.9.2 Release Candidate 1 + 2021-12-04 * Update 1.9.2 NEWS + 2021-11-30 * Properly check cap settings outside server.mod + * Prohibit hostname in nat-ip + 2021-11-28 * Documentation update + * Generate 1.9.2 docs + * Doc typos + * Update NEWS for 1.9.2 + * Update THANKS for 1.9.2 + * Update THANKS for 1.9.2 again + 2021-11-27 * prevent race in threaded dns + [Found by: michaelortmann / Patch by: michaelortmann] + * Add values argument to Tcl cap command + [Found by: thommey / Patch by: Geo] + * Use nick/altnick/randnick on bad nickname + * Add server list Tcl command + * Log error on rejected botattr + 2021-11-06 * Add an AlertNotifier callback function + [Found by: michaelortmann / Patch by: michaelortmann] + * RAWT blocks RAW + [Found by: DasBrain / Patch by: Geo, thommey] + 2021-10-22 * Don't require message-tags to check for message-tags + [Found by: DasBrain, Lord255 / Patch by: Geo] + 2021-10-21 * Fix missing ACCOUNT bind value in docs + [Found by: Geo] + 2021-10-20 * Add MONITOR support (#1173) + [Patch by: Geo] + 2021-10-18 * adjust buffer size + [Found by: mortmann / Patch by: Geo] + 2021-10-15 * Improve CAP302 implementation + [Patch by: thommey, Geo] + 2021-10-06 * Remove extra comma in ircaway bind + [Found by: CrazyCatDevs / Patch by: Geo] + 2021-09-30 * SASL 302 support + [Patch by: Geo] + 2021-09-29 * Adds Twitch USERNOTICE bind + 2021-09-23 * Add CAP 302 support (#1203) + [Patch by: thommey, Geo] + 2021-09-07 * Fix CAP config settings + [Found by: Sensiva / Patch by: Geo] + 2021-09-01 * Add ssl status to bottree + [Patch by: michaelortmann] + 2021-08-22 * initialize dns_thread_head before chanprog + [Found by: MalaGaM / Patch by: michaelortmann] + * Use defines instead of raw telnet codes + * Fix potential NULL deref in splitnicks + [Found by: michaelortmann / Patch by: michaelortmann, and, thommey] + * Fix truncation + [Patch by: michaelortmann] + * Make functions static + 2021-08-15 * Add 005 BOT flag support, isircbot Tcl command + * Fix broken format code (%b) in core.help + [Found by: wilk / Patch by: wilk] + * Fix typo + 2021-08-10 * Update version, server block in docs + 2021-08-08 * Update docs + 2021-08-05 * Add irc settings for Libera Chat + * remove mandatory flag for listen script + [Found by: Krambaek] + 2021-07-13 * Update first install versions + 2021-06-20 * Add IRCv3 explanation doc + +Eggdrop v1.9.1 (2021-05-31): + + 2021-05-31 * Change freenode references to Libera + * Update NEWS for 1.9.1 + * Update docs + * Merge branch 'stable/1.9' into release/1.9.1 + +Eggdrop v1.9.1rc1 (2021-05-08): + + 2021-05-08 * Fix stagnant module warning + [Patch by: michaelortmann] + * Reject invalid chars in +bot + [Found by: MalaGaM / Patch by: Geo] + * Correctly track away status on away + [Found by: DasBrain / Patch by: DasBrain] + * Fix crash when adding server wo port + [Found by: bdrewery / Patch by: bdrewery] + * Don't overwrite socket IP on CTCP + [Found by: [TriiiX] / Patch by: Geo] + * Fix socket connection error msgs + [Found by: michaelortmann / Patch by: michaelortmann] + * Make the compiler use 64bit ari + [Found by: michaelortmann / Patch by: michaelortmann] + * Fix OpenBSD compiler warning + [Found by: michaelortmann / Patch by: michaelortmann] + * Update NEWS THANKS + * Fix genereatedocs pip + * remove temp version hardcode + * Update version strings to 1.9.1 + * Generate docs with 1.9.1 version + * FIX: Exclude cherry-picked commits from changelogs, experimental + * misc/genchanges: Add comment how cherry-pick diff works + * tweak releaseprep one more time + * Eggdrop v1.9.1 Release Candidate 1 + 2021-05-05 * fix typos + [Patch by: michaelortmann] + * Remove -n CLI flag reference + [Patch by: michaelortmann] + * Update docs, lang file + [Patch by: crazycatdevs] + * Use correct type for CTCP flood + [Patch by: DasBrain] + 2021-04-10 * Update install docs with 1.9 refs + +Eggdrop v1.9.0 (2021-03-28): + + 2021-03-28 * Fix DNS module help + [Found by: Carlin0] + * Fix DNS module help + [Found by: Carlin0] + * Add CHAT6 to IPv6 docs + * Remove quotepass from install + [Found by: arduent] + * remove quotepass ref from CONTENTS + * Fix /dcc chat for eggdrop compiled with --disable-ipv6 (#1146) + [Found by: michaelortmann / Patch by: michaelortmann] + * Update docs + * Fix formatting + * Eggdrop v1.9.0 + * docs typo + * Generate doc after typo + 2021-03-21 * config typo + * Add unlink comment doc + [Found by: Malagam] + * Update Versions file + * fix #ifdef compiler warning + [Found by: michaelortmann / Patch by: michaelortmann] + * config typo + * misplaced return + [Found by: mortmann] + * Add Italian language files + [Patch by: Carlin0] + * Update THANKS + +Eggdrop v1.9.0rc3 (2021-03-02): + + 2021-03-02 * Fix releaseprep Changelog + * Update THANKS + * Eggdrop v1.9.0 Release Candidate 3 + 2021-03-01 * Fix releaseprep script for versions higher than .0rc1 + * Fix socklist for bots without tls support + [Patch by: mortmann] + * Update set/tcl unbind docs + [Found by: Dooms40] + * server args OBOE + * Fix typo + * Remove listen-addr refs from basic config + * Remove quotepass.tcl + * Restore listen-addr being used as default if not specified in listen command + [Found by: style / Patch by: thommey] + * update config words + * Fix SunOS bzero compile error + * better-fix SunOS bzero compile error + * Doc formatting + +Eggdrop v1.9.0rc2 (2021-02-15): + + 2021-02-15 * Update AUTHORS + * typo + * Fix copyright + * Fix eggdrop.conf CAP comment + [Found by: jack3] + * Fix add/delserver syntax typo + [Found by: ZarTek] + * Update field length + * Remove self-refrence in .conf + * Move some SASL log messages to debug + * Fix typos + [Patch by: mortmann] + * Fix twitch parameter + [Patch by: mortmann] + * Change add/delserver to server add/remove (#1114) + [Found by: Malagam / Patch by: Geo] + * Update THANKS + * Fix file leak (#1118) + [Found by: michaelortmann / Patch by: michaelortmann] + * Fix file leak + [Found by: michaelortmann / Patch by: michaelortmann] + * Fix dns resolving hang + [Found by: michaelortmann / Patch by: michaelortmann] + * Update strncpys + * Fix type warning in Cygwin + [Found by: michaelortmann / Patch by: michaelortmann] + * Update THANKS + * Update THANKS + * Revert "Remove unnecessary openssl checks" (#1124) + * undef set_key + [Found by: mortmann] + * Fix vhost6 being ignored if vhost4 was empty, regardless of address family actually used. + [Found by: Harekiet / Patch by: thommey] + * Update net-type warning + * Update network format/note + * fix typo + * Try to avoid ident race condition + [Found by: PeGaSuS / Patch by: michaelortmann] + * Update releaseprep for python3 + * Revert "Update releaseprep for python3" + * Run autotools + * Eggdrop v1.9.0 Release Candidate 2 + +Eggdrop v1.9.0rc1 (2021-01-24): 2021-01-24 * Fix OBOE [Found by: michaelortmann / Patch by: michaelortmann] @@ -16,6 +406,7 @@ Eggdrop v1.9.0rc1: * update Change doc gen * update releaseprep * Fix releaseprep for 1.9.x + * Eggdrop v1.9.0 Release Candidate 1 2021-01-22 * Change buffer size * Fix format strings * Fix OBOE diff --git a/doc/html/about/about.html b/doc/html/about/about.html index aaa966ae2..f71d02f07 100644 --- a/doc/html/about/about.html +++ b/doc/html/about/about.html @@ -177,7 +177,7 @@

About Eggdrop © Copyright 2022, Eggheads. - Last updated on Nov 10, 2022. + Last updated on Nov 11, 2022. Created using Sphinx 1.8.5. diff --git a/doc/html/about/legal.html b/doc/html/about/legal.html index 29a4e2838..64baf6df7 100644 --- a/doc/html/about/legal.html +++ b/doc/html/about/legal.html @@ -128,7 +128,7 @@

Boring legal stuff © Copyright 2022, Eggheads. - Last updated on Nov 10, 2022. + Last updated on Nov 11, 2022. Created using Sphinx 1.8.5. diff --git a/doc/html/index.html b/doc/html/index.html index c0d84e9bc..4d8fec8eb 100644 --- a/doc/html/index.html +++ b/doc/html/index.html @@ -375,7 +375,7 @@

Where to find more help © Copyright 2022, Eggheads. - Last updated on Nov 10, 2022. + Last updated on Nov 11, 2022. Created using Sphinx 1.8.5. diff --git a/doc/html/install/install.html b/doc/html/install/install.html index d6ce5d245..5eb95fe86 100644 --- a/doc/html/install/install.html +++ b/doc/html/install/install.html @@ -284,7 +284,7 @@

Modules © Copyright 2022, Eggheads. - Last updated on Nov 10, 2022. + Last updated on Nov 11, 2022. Created using Sphinx 1.8.5. diff --git a/doc/html/install/readme.html b/doc/html/install/readme.html index 24d2c1630..0f108925d 100644 --- a/doc/html/install/readme.html +++ b/doc/html/install/readme.html @@ -327,7 +327,7 @@

Obtaining Help © Copyright 2022, Eggheads. - Last updated on Nov 10, 2022. + Last updated on Nov 11, 2022. Created using Sphinx 1.8.5. diff --git a/doc/html/install/upgrading.html b/doc/html/install/upgrading.html index 7a2842f4b..12250e86c 100644 --- a/doc/html/install/upgrading.html +++ b/doc/html/install/upgrading.html @@ -191,7 +191,7 @@

Documentation © Copyright 2022, Eggheads. - Last updated on Nov 10, 2022. + Last updated on Nov 11, 2022. Created using Sphinx 1.8.5. diff --git a/doc/html/modules/included.html b/doc/html/modules/included.html index edffbdbbc..c29b2f6f9 100644 --- a/doc/html/modules/included.html +++ b/doc/html/modules/included.html @@ -277,7 +277,7 @@

Modules included with Eggdrop © Copyright 2022, Eggheads. - Last updated on Nov 10, 2022. + Last updated on Nov 11, 2022. Created using Sphinx 1.8.5. diff --git a/doc/html/modules/index.html b/doc/html/modules/index.html index f17d8d8bf..c888fdf2a 100644 --- a/doc/html/modules/index.html +++ b/doc/html/modules/index.html @@ -169,7 +169,7 @@

Do I still need to ‘loadmodule’ modules? © Copyright 2022, Eggheads. - Last updated on Nov 10, 2022. + Last updated on Nov 11, 2022. Created using Sphinx 1.8.5. diff --git a/doc/html/modules/mod/assoc.html b/doc/html/modules/mod/assoc.html index 473290a3f..05c4abb64 100644 --- a/doc/html/modules/mod/assoc.html +++ b/doc/html/modules/mod/assoc.html @@ -159,7 +159,7 @@

Search

diff --git a/doc/html/modules/mod/blowfish.html b/doc/html/modules/mod/blowfish.html index bd82779ea..acef9be95 100644 --- a/doc/html/modules/mod/blowfish.html +++ b/doc/html/modules/mod/blowfish.html @@ -164,7 +164,7 @@

Search

diff --git a/doc/html/modules/mod/channels.html b/doc/html/modules/mod/channels.html index 5b8fb089b..b80d77896 100644 --- a/doc/html/modules/mod/channels.html +++ b/doc/html/modules/mod/channels.html @@ -540,7 +540,7 @@

Search

diff --git a/doc/html/modules/mod/compress.html b/doc/html/modules/mod/compress.html index bde3bc8ae..669f9e2c7 100644 --- a/doc/html/modules/mod/compress.html +++ b/doc/html/modules/mod/compress.html @@ -172,7 +172,7 @@

Search

diff --git a/doc/html/modules/mod/console.html b/doc/html/modules/mod/console.html index bdd760ceb..fd23aeadc 100644 --- a/doc/html/modules/mod/console.html +++ b/doc/html/modules/mod/console.html @@ -174,7 +174,7 @@

Search

diff --git a/doc/html/modules/mod/ctcp.html b/doc/html/modules/mod/ctcp.html index 70f7884ff..3b555141f 100644 --- a/doc/html/modules/mod/ctcp.html +++ b/doc/html/modules/mod/ctcp.html @@ -191,7 +191,7 @@

Search

diff --git a/doc/html/modules/mod/dns.html b/doc/html/modules/mod/dns.html index dbdd9a95d..5e19fc699 100644 --- a/doc/html/modules/mod/dns.html +++ b/doc/html/modules/mod/dns.html @@ -187,7 +187,7 @@

Search

diff --git a/doc/html/modules/mod/filesys.html b/doc/html/modules/mod/filesys.html index 2ce90adf9..c518c8144 100644 --- a/doc/html/modules/mod/filesys.html +++ b/doc/html/modules/mod/filesys.html @@ -365,7 +365,7 @@

.filesys module © Copyright 2022, Eggheads. - Last updated on Nov 10, 2022. + Last updated on Nov 11, 2022. Created using Sphinx 1.8.5. diff --git a/doc/html/modules/mod/ident.html b/doc/html/modules/mod/ident.html index 5cfcd7cad..7381574bf 100644 --- a/doc/html/modules/mod/ident.html +++ b/doc/html/modules/mod/ident.html @@ -228,7 +228,7 @@

Search

diff --git a/doc/html/modules/mod/irc.html b/doc/html/modules/mod/irc.html index cd7d05f14..251312e30 100644 --- a/doc/html/modules/mod/irc.html +++ b/doc/html/modules/mod/irc.html @@ -290,7 +290,7 @@

Search

diff --git a/doc/html/modules/mod/notes.html b/doc/html/modules/mod/notes.html index f27bedad9..8b0a6bb8e 100644 --- a/doc/html/modules/mod/notes.html +++ b/doc/html/modules/mod/notes.html @@ -182,7 +182,7 @@

Search

diff --git a/doc/html/modules/mod/pbkdf2.html b/doc/html/modules/mod/pbkdf2.html index b02d7e06e..a5fd077f0 100644 --- a/doc/html/modules/mod/pbkdf2.html +++ b/doc/html/modules/mod/pbkdf2.html @@ -181,7 +181,7 @@

Search

diff --git a/doc/html/modules/mod/seen.html b/doc/html/modules/mod/seen.html index 23b657e19..1dae8c57c 100644 --- a/doc/html/modules/mod/seen.html +++ b/doc/html/modules/mod/seen.html @@ -161,7 +161,7 @@

Search

diff --git a/doc/html/modules/mod/server.html b/doc/html/modules/mod/server.html index e83a3db20..5e206bc47 100644 --- a/doc/html/modules/mod/server.html +++ b/doc/html/modules/mod/server.html @@ -380,7 +380,7 @@

Search

diff --git a/doc/html/modules/mod/share.html b/doc/html/modules/mod/share.html index 2ffb85ec0..64bb01684 100644 --- a/doc/html/modules/mod/share.html +++ b/doc/html/modules/mod/share.html @@ -191,7 +191,7 @@

Search

diff --git a/doc/html/modules/mod/transfer.html b/doc/html/modules/mod/transfer.html index 9e2451cf1..12020bb65 100644 --- a/doc/html/modules/mod/transfer.html +++ b/doc/html/modules/mod/transfer.html @@ -186,7 +186,7 @@

Search

diff --git a/doc/html/modules/mod/twitch.html b/doc/html/modules/mod/twitch.html index c7ad96918..2ca5c0ee2 100644 --- a/doc/html/modules/mod/twitch.html +++ b/doc/html/modules/mod/twitch.html @@ -194,7 +194,7 @@

Partyline commands © Copyright 2022, Eggheads. - Last updated on Nov 10, 2022. + Last updated on Nov 11, 2022. Created using Sphinx 1.8.5. diff --git a/doc/html/modules/mod/uptime.html b/doc/html/modules/mod/uptime.html index 45993ea2a..4de88ee40 100644 --- a/doc/html/modules/mod/uptime.html +++ b/doc/html/modules/mod/uptime.html @@ -167,7 +167,7 @@

Search

diff --git a/doc/html/modules/mod/woobie.html b/doc/html/modules/mod/woobie.html index b9b05d0a4..aca542786 100644 --- a/doc/html/modules/mod/woobie.html +++ b/doc/html/modules/mod/woobie.html @@ -160,7 +160,7 @@

Search

diff --git a/doc/html/modules/writing.html b/doc/html/modules/writing.html index db0584e67..f7cab7abc 100644 --- a/doc/html/modules/writing.html +++ b/doc/html/modules/writing.html @@ -428,7 +428,7 @@

What to do with a module? © Copyright 2022, Eggheads. - Last updated on Nov 10, 2022. + Last updated on Nov 11, 2022. Created using Sphinx 1.8.5. diff --git a/doc/html/objects.inv b/doc/html/objects.inv index 769b0721e..3eeec3c4f 100644 Binary files a/doc/html/objects.inv and b/doc/html/objects.inv differ diff --git a/doc/html/search.html b/doc/html/search.html index abcccf546..8c9e27037 100644 --- a/doc/html/search.html +++ b/doc/html/search.html @@ -147,7 +147,7 @@

Search

diff --git a/doc/html/tutorials/firstscript.html b/doc/html/tutorials/firstscript.html index 7ddc58f93..69df98dfc 100644 --- a/doc/html/tutorials/firstscript.html +++ b/doc/html/tutorials/firstscript.html @@ -261,7 +261,7 @@

Writing an Eggdrop Script © Copyright 2022, Eggheads. - Last updated on Nov 10, 2022. + Last updated on Nov 11, 2022. Created using Sphinx 1.8.5. diff --git a/doc/html/tutorials/firststeps.html b/doc/html/tutorials/firststeps.html index a176fca34..e82126dd0 100644 --- a/doc/html/tutorials/firststeps.html +++ b/doc/html/tutorials/firststeps.html @@ -273,7 +273,7 @@

Setting up SASL authentication © Copyright 2022, Eggheads. - Last updated on Nov 10, 2022. + Last updated on Nov 11, 2022. Created using Sphinx 1.8.5. diff --git a/doc/html/tutorials/setup.html b/doc/html/tutorials/setup.html index d9c1bd41d..91edc8dcb 100644 --- a/doc/html/tutorials/setup.html +++ b/doc/html/tutorials/setup.html @@ -289,7 +289,7 @@

No show? © Copyright 2022, Eggheads. - Last updated on Nov 10, 2022. + Last updated on Nov 11, 2022. Created using Sphinx 1.8.5. diff --git a/doc/html/tutorials/tlssetup.html b/doc/html/tutorials/tlssetup.html index 13f99eab0..a8a0cc0a7 100644 --- a/doc/html/tutorials/tlssetup.html +++ b/doc/html/tutorials/tlssetup.html @@ -198,7 +198,7 @@

Additional Information © Copyright 2022, Eggheads. - Last updated on Nov 10, 2022. + Last updated on Nov 11, 2022. Created using Sphinx 1.8.5. diff --git a/doc/html/using/accounts.html b/doc/html/using/accounts.html index 635bbd06d..ccbf37f0e 100644 --- a/doc/html/using/accounts.html +++ b/doc/html/using/accounts.html @@ -207,7 +207,7 @@

Using Accounts with Tcl Scripts © Copyright 2022, Eggheads. - Last updated on Nov 10, 2022. + Last updated on Nov 11, 2022. Created using Sphinx 1.8.5. diff --git a/doc/html/using/bans.html b/doc/html/using/bans.html index bccb67da2..4474756b5 100644 --- a/doc/html/using/bans.html +++ b/doc/html/using/bans.html @@ -202,7 +202,7 @@

Bans, Invites, and Exempts © Copyright 2022, Eggheads. - Last updated on Nov 10, 2022. + Last updated on Nov 11, 2022. Created using Sphinx 1.8.5. diff --git a/doc/html/using/botnet.html b/doc/html/using/botnet.html index 9d6abcc86..dfdbb5042 100644 --- a/doc/html/using/botnet.html +++ b/doc/html/using/botnet.html @@ -429,7 +429,7 @@

Making bots share user records © Copyright 2022, Eggheads. - Last updated on Nov 10, 2022. + Last updated on Nov 11, 2022. Created using Sphinx 1.8.5. diff --git a/doc/html/using/core.html b/doc/html/using/core.html index 9e00c138e..1a12cd9e2 100644 --- a/doc/html/using/core.html +++ b/doc/html/using/core.html @@ -788,7 +788,7 @@

Scripts © Copyright 2022, Eggheads. - Last updated on Nov 10, 2022. + Last updated on Nov 11, 2022. Created using Sphinx 1.8.5. diff --git a/doc/html/using/features.html b/doc/html/using/features.html index bd4ac4294..03ca8848f 100644 --- a/doc/html/using/features.html +++ b/doc/html/using/features.html @@ -171,7 +171,7 @@

Eggdrop Features © Copyright 2022, Eggheads. - Last updated on Nov 10, 2022. + Last updated on Nov 11, 2022. Created using Sphinx 1.8.5. diff --git a/doc/html/using/ipv6.html b/doc/html/using/ipv6.html index 2722906a9..f92b0cbf2 100644 --- a/doc/html/using/ipv6.html +++ b/doc/html/using/ipv6.html @@ -201,7 +201,7 @@

Settings © Copyright 2022, Eggheads. - Last updated on Nov 10, 2022. + Last updated on Nov 11, 2022. Created using Sphinx 1.8.5. diff --git a/doc/html/using/ircv3.html b/doc/html/using/ircv3.html index aaf08ba28..df02af946 100644 --- a/doc/html/using/ircv3.html +++ b/doc/html/using/ircv3.html @@ -170,7 +170,7 @@

Supported CAP capabilities © Copyright 2022, Eggheads. - Last updated on Nov 10, 2022. + Last updated on Nov 11, 2022. Created using Sphinx 1.8.5. diff --git a/doc/html/using/partyline.html b/doc/html/using/partyline.html index 93dc1ec45..702806776 100644 --- a/doc/html/using/partyline.html +++ b/doc/html/using/partyline.html @@ -158,7 +158,7 @@

The Party Line © Copyright 2022, Eggheads. - Last updated on Nov 10, 2022. + Last updated on Nov 11, 2022. Created using Sphinx 1.8.5. diff --git a/doc/html/using/patch.html b/doc/html/using/patch.html index 063847d69..96ed714b8 100644 --- a/doc/html/using/patch.html +++ b/doc/html/using/patch.html @@ -168,7 +168,7 @@

Submitting a patch via GitHub © Copyright 2022, Eggheads. - Last updated on Nov 10, 2022. + Last updated on Nov 11, 2022. Created using Sphinx 1.8.5. diff --git a/doc/html/using/pbkdf2info.html b/doc/html/using/pbkdf2info.html index af1b55ee0..fa3c9c949 100644 --- a/doc/html/using/pbkdf2info.html +++ b/doc/html/using/pbkdf2info.html @@ -219,7 +219,7 @@

Tcl Interface © Copyright 2022, Eggheads. - Last updated on Nov 10, 2022. + Last updated on Nov 11, 2022. Created using Sphinx 1.8.5. diff --git a/doc/html/using/tcl-commands.html b/doc/html/using/tcl-commands.html index fdb2ea9c2..09dfef7f9 100644 --- a/doc/html/using/tcl-commands.html +++ b/doc/html/using/tcl-commands.html @@ -461,7 +461,7 @@

botattr <handle> [changes [channel]] -

matchattr <handle> <flags> [channel]

+

matchattr <handle> <flags> [channel]

Description: checks if the flags of the specified user match the flags provided. “flags” is of the form:

[+/-]<global flags>[&/|<channel flags>[&/|<bot flags>]]
@@ -2866,7 +2866,7 @@ 

Removing a bind

Flag Masks

-

In the Bind Types section (and other commands, such as `matchattr`_), you will see several references to the “flags” argument. The “flags” argument takes a flag mask, which is a value that represents the type of user that is allowed to trigger the procedure associated to that bind. The flags can be any of the standard Eggdrop flags (o, m, v, etc). Additionally, when used by itself, a “-” or “*” can be used to skip processing for a flag type. A flag mask has three sections to it- global, channel, and bot flag sections. Each section is separated by the | or & logical operators ( the | means “OR” and the & means “AND; if nothing proceeds the flag then Eggdrop assumes it to be an OR). Additionally, a ‘+’ and ‘-‘ can be used in front of a flag to check if the user does (+) have it, or does not (-) have it.

+

In the Bind Types section (and other commands, such as matchattr), you will see several references to the “flags” argument. The “flags” argument takes a flag mask, which is a value that represents the type of user that is allowed to trigger the procedure associated to that bind. The flags can be any of the standard Eggdrop flags (o, m, v, etc). Additionally, when used by itself, a “-” or “*” can be used to skip processing for a flag type. A flag mask has three sections to it- global, channel, and bot flag sections. Each section is separated by the | or & logical operators ( the | means “OR” and the & means “AND; if nothing proceeds the flag then Eggdrop assumes it to be an OR). Additionally, a ‘+’ and ‘-‘ can be used in front of a flag to check if the user does (+) have it, or does not (-) have it.

The easiest way to explain how to build a flag mask is by demonstration. A flag mask of “v” by itself means “has a global v flag”. To also check for a channel flag, you would use the flag mask “v|v”. This checks if the user has a global “v” flag, OR a channel “v” flag (again, the | means “OR” and ties the two types of flags together). You could change this mask to be “v&v”, which would check if the user has a global “v” flag AND a channel “v” flag. Lastly, to check if a user ONLY has a channel flag, you would use “*|v” as a mask, which would not check global flags but does check if the user had a channel “v” flag.

You will commonly see flag masks for global flags written “ov”; this is the same as “|ov” or “*|ov”.

Some additional examples:

@@ -2929,7 +2929,7 @@

Flag Masks|o). It is unknown where and why this practice started, but as a style tip, Eggdrop developers recommend using a ‘*’ to skip processing, so as not to confuse a single “-” meaning “skip processing” with a preceding “-ov” which means “not these flags”.

+

As a side note, Tcl scripts historically have used a ‘-‘ to skip processing of a flag type (Example: -|o). It is unknown where and why this practice started, but as a style tip, Eggdrop developers recommend using a ‘*’ to skip processing, so as not to confuse a single “-” meaning “skip processing” with a preceding “-ov” which means “not these flags”.

diff --git a/doc/html/using/text-sub.html b/doc/html/using/text-sub.html index 2eb4ed8f4..034be8f16 100644 --- a/doc/html/using/text-sub.html +++ b/doc/html/using/text-sub.html @@ -234,7 +234,7 @@

Textfile Substitutions © Copyright 2022, Eggheads. - Last updated on Nov 10, 2022. + Last updated on Nov 11, 2022. Created using Sphinx 1.8.5.

diff --git a/doc/html/using/tls.html b/doc/html/using/tls.html index 09531799b..ccd056d57 100644 --- a/doc/html/using/tls.html +++ b/doc/html/using/tls.html @@ -326,7 +326,7 @@

SSL/TLS Settings © Copyright 2022, Eggheads. - Last updated on Nov 10, 2022. + Last updated on Nov 11, 2022. Created using Sphinx 1.8.5. diff --git a/doc/html/using/tricks.html b/doc/html/using/tricks.html index a63929472..8a7648b12 100644 --- a/doc/html/using/tricks.html +++ b/doc/html/using/tricks.html @@ -175,7 +175,7 @@

Variables in Your Config © Copyright 2022, Eggheads. - Last updated on Nov 10, 2022. + Last updated on Nov 11, 2022. Created using Sphinx 1.8.5. diff --git a/doc/html/using/twitch-tcl-commands.html b/doc/html/using/twitch-tcl-commands.html index c973faeb1..788898644 100644 --- a/doc/html/using/twitch-tcl-commands.html +++ b/doc/html/using/twitch-tcl-commands.html @@ -310,7 +310,7 @@

Bind Types © Copyright 2022, Eggheads. - Last updated on Nov 10, 2022. + Last updated on Nov 11, 2022. Created using Sphinx 1.8.5. diff --git a/doc/html/using/twitchinfo.html b/doc/html/using/twitchinfo.html index 76ba167ed..589136bc9 100644 --- a/doc/html/using/twitchinfo.html +++ b/doc/html/using/twitchinfo.html @@ -190,7 +190,7 @@

Twitch IRC limitations © Copyright 2022, Eggheads. - Last updated on Nov 10, 2022. + Last updated on Nov 11, 2022. Created using Sphinx 1.8.5. diff --git a/doc/html/using/users.html b/doc/html/using/users.html index 174947f73..59f6c0db3 100644 --- a/doc/html/using/users.html +++ b/doc/html/using/users.html @@ -263,7 +263,7 @@

Users and Flags © Copyright 2022, Eggheads. - Last updated on Nov 10, 2022. + Last updated on Nov 11, 2022. Created using Sphinx 1.8.5. diff --git a/doc/sphinx_source/using/tcl-commands.rst b/doc/sphinx_source/using/tcl-commands.rst index 2f9132808..aefa1f4c7 100644 --- a/doc/sphinx_source/using/tcl-commands.rst +++ b/doc/sphinx_source/using/tcl-commands.rst @@ -367,6 +367,8 @@ botattr [changes [channel]] Module: core +.. _matchattr: + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ matchattr [channel] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ @@ -2888,9 +2890,9 @@ bind for the "stop" msg command, use 'unbind msg - stop msg:stop'. ^^^^^^^^^^ Flag Masks ^^^^^^^^^^ -In the `Bind Types`_ section (and other commands, such as `matchattr`_), you will see several references to the "flags" argument. The "flags" argument takes a flag mask, which is a value that represents the type of user that is allowed to trigger the procedure associated to that bind. The flags can be any of the standard Eggdrop flags (o, m, v, etc). Additionally, when used by itself, a "-" or "*" can be used to skip processing for a flag type. A flag mask has three sections to it- global, channel, and bot flag sections. Each section is separated by the | or & logical operators ( the | means "OR" and the & means "AND; if nothing proceeds the flag then Eggdrop assumes it to be an OR). Additionally, a '+' and '-' can be used in front of a flag to check if the user does (+) have it, or does not (-) have it. +In the `Bind Types`_ section (and other commands, such as matchattr_), you will see several references to the "flags" argument. The "flags" argument takes a flag mask, which is a value that represents the type of user that is allowed to trigger the procedure associated to that bind. The flags can be any of the standard Eggdrop flags (o, m, v, etc). Additionally, when used by itself, a "-" or "*" can be used to skip processing for a flag type. A flag mask has three sections to it- global, channel, and bot flag sections. Each section is separated by the | or & logical operators ( the | means "OR" and the & means "AND; if nothing proceeds the flag then Eggdrop assumes it to be an OR). Additionally, a '+' and '-' can be used in front of a flag to check if the user does (+) have it, or does not (-) have it. -The easiest way to explain how to build a flag mask is by demonstration. A flag mask of "v" by itself means "has a global v flag". To also check for a channel flag, you would use the flag mask "v|v". This checks if the user has a global "v" flag, OR a channel "v" flag (again, the | means "OR" and ties the two types of flags together). You could change this mask to be "v&v", which would check if the user has a global "v" flag AND a channel "v" flag. Lastly, to check if a user ONLY has a channel flag, you would use "\*|v" as a mask, which would not check global flags but does check if the user had a channel "v" flag. +The easiest way to explain how to build a flag mask is by demonstration. A flag mask of "v" by itself means "has a global v flag". To also check for a channel flag, you would use the flag mask "v\|v". This checks if the user has a global "v" flag, OR a channel "v" flag (again, the | means "OR" and ties the two types of flags together). You could change this mask to be "v&v", which would check if the user has a global "v" flag AND a channel "v" flag. Lastly, to check if a user ONLY has a channel flag, you would use "\*|v" as a mask, which would not check global flags but does check if the user had a channel "v" flag. You will commonly see flag masks for global flags written "ov"; this is the same as "\|ov" or "\*\|ov". @@ -2932,7 +2934,7 @@ Some additional examples: | ||+b | Checks if the user has the bot flag b | +------------+-----------------------------------------------------------------+ -As a side note, Tcl scripts historically have used a '-' to skip processing of a flag type (Example: -|o). It is unknown where and why this practice started, but as a style tip, Eggdrop developers recommend using a '*' to skip processing, so as not to confuse a single "-" meaning "skip processing" with a preceding "-ov" which means "not these flags". +As a side note, Tcl scripts historically have used a '-' to skip processing of a flag type (Example: -\|o). It is unknown where and why this practice started, but as a style tip, Eggdrop developers recommend using a '*' to skip processing, so as not to confuse a single "-" meaning "skip processing" with a preceding "-ov" which means "not these flags". ^^^^^^^^^^ Bind Types diff --git a/doc/tcl-commands.doc b/doc/tcl-commands.doc index 8b73f3b70..3436a91ba 100644 --- a/doc/tcl-commands.doc +++ b/doc/tcl-commands.doc @@ -2994,12 +2994,13 @@ the user does (+) have it, or does not (-) have it. The easiest way to explain how to build a flag mask is by demonstration. A flag mask of "v" by itself means "has a global v flag". To also check -for a channel flag, you would use the flag mask "v means "OR" and ties -the two types of flags together). You could change this mask to be -"v&v", which would check if the user has a global "v" flag AND a channel -"v" flag. Lastly, to check if a user ONLY has a channel flag, you would -use "*|v" as a mask, which would not check global flags but does check -if the user had a channel "v" flag. +for a channel flag, you would use the flag mask "v|v". This checks if +the user has a global "v" flag, OR a channel "v" flag (again, the | +means "OR" and ties the two types of flags together). You could change +this mask to be "v&v", which would check if the user has a global "v" +flag AND a channel "v" flag. Lastly, to check if a user ONLY has a +channel flag, you would use "*|v" as a mask, which would not check +global flags but does check if the user had a channel "v" flag. You will commonly see flag masks for global flags written "ov"; this is the same as "|ov" or "*|ov". diff --git a/src/version.h b/src/version.h index 202b920d1..6639ca1a7 100644 --- a/src/version.h +++ b/src/version.h @@ -27,5 +27,5 @@ */ #define EGG_STRINGVER "1.9.4" -#define EGG_NUMVER 1090400 -#define EGG_PATCH "alpha" +#define EGG_NUMVER 1090401 +#define EGG_PATCH "RC1"