ngircd-alex.git
6 years agoXcode: update project settings for Xcode 5
Alexander Barton [Mon, 26 Aug 2013 21:23:12 +0000 (23:23 +0200)]
Xcode: update project settings for Xcode 5

6 years agoMerge branch 'bug159-WebircIPA'
Alexander Barton [Mon, 26 Aug 2013 21:22:20 +0000 (23:22 +0200)]
Merge branch 'bug159-WebircIPA'

* bug159-WebircIPA:
  Introduce Free_Client() function to free CLIENT structure
  Save client IP address text for "WebIRC" users

6 years agoIntroduce Free_Client() function to free CLIENT structure bug159-WebircIPA
Alexander Barton [Mon, 26 Aug 2013 20:55:00 +0000 (22:55 +0200)]
Introduce Free_Client() function to free CLIENT structure

6 years agoSave client IP address text for "WebIRC" users
Alexander Barton [Mon, 26 Aug 2013 20:54:00 +0000 (22:54 +0200)]
Save client IP address text for "WebIRC" users

This patch introduces a new field in the CLIENT structure, "ipa_text",
which points to an optional textual representation of the client IP
address (or NULL) which can be used to store the "real" IP address
information of a client using the "WEBIRC" protocol.

Without this patch, ngIRCd ignored the <ip-address> paramater ...

In addition, the functions Client_SetIPAText() and Client_IPAText()
have been introduced to set and get the textual representation of the
client IP address.

Client_IPAText() can be used even when no "IP address text" has been
set before, it then returns the real IP address of the connection.

Closes bug #159.

6 years agoImplement new configuration option "DefaultUserModes" bug160-DefaultUserModes
Alexander Barton [Mon, 26 Aug 2013 19:17:10 +0000 (21:17 +0200)]
Implement new configuration option "DefaultUserModes"

The new configuration option "DefaultUserModes" lists user modes that
become automatically set on new local clients right after login.

Please note that only modes can be set that the client could set on
itself, you can't set "a" (away) or "o" (IRC Op), for example! User
modes "i" (invisible) or "x" (cloaked) etc. are "interesting", though.

Default: set no modes (like without this patch).

Closes bug #160.

6 years agoChange strdup() to strndup()
Federico G. Schwindt [Mon, 26 Aug 2013 11:18:46 +0000 (12:18 +0100)]
Change strdup() to strndup()

6 years agoprivate strndup() implementation in case libc does not provide it
Federico G. Schwindt [Mon, 26 Aug 2013 09:47:04 +0000 (10:47 +0100)]
private strndup() implementation in case libc does not provide it

6 years agoCosmetic changes to METADATA
Federico G. Schwindt [Sun, 25 Aug 2013 04:26:08 +0000 (05:26 +0100)]
Cosmetic changes to METADATA

Update certfp and sort entries.

6 years agoSilence warning
Federico G. Schwindt [Sat, 24 Aug 2013 23:07:06 +0000 (00:07 +0100)]
Silence warning

Cast the result of the operation to long, not the time(NULL) call.
On systems where sizeof(time_t) is other than long this will produce
a warning.

6 years agoPlug memory leak
Federico G. Schwindt [Fri, 23 Aug 2013 10:43:28 +0000 (11:43 +0100)]
Plug memory leak

6 years agoImplement account login support
Federico G. Schwindt [Thu, 22 Aug 2013 13:40:30 +0000 (14:40 +0100)]
Implement account login support

This is done via the `accountname' METADATA command and used to
automatically identify users after netsplits or across service
restarts.

6 years agoFix spelling
Federico G. Schwindt [Thu, 22 Aug 2013 09:58:36 +0000 (10:58 +0100)]
Fix spelling

6 years agongIRCd Release 20.3
Alexander Barton [Fri, 23 Aug 2013 19:54:40 +0000 (21:54 +0200)]
ngIRCd Release 20.3

(cherry picked from commit bb6e2779636aa6d74bbff474880829f0183a3c94)

Conflicts:
ChangeLog
NEWS

6 years agoCorrectly handle return code of Handle_Write()
Alexander Barton [Tue, 20 Aug 2013 23:28:49 +0000 (01:28 +0200)]
Correctly handle return code of Handle_Write()

There have been code paths that ignored the return code of Handle_Write()
when sending "notice auth" messages to new clients connecting to the
server. But because Handle_Write() would have closed the client connection
again if an error occurred, this would have resulted in new errors and
assert()'s later on that could have crashed the server (denial of service).

Only setups having the configuration option "NoticeAuth" enabled are
affected, which is not the default.

CVE-2013-5580.

6 years agoEnhance log messages on "recursive" connection errors
Alexander Barton [Tue, 20 Aug 2013 23:15:19 +0000 (01:15 +0200)]
Enhance log messages on "recursive" connection errors

6 years agoAdd some assert() calls to ng_ipaddr library
Alexander Barton [Tue, 20 Aug 2013 22:22:55 +0000 (00:22 +0200)]
Add some assert() calls to ng_ipaddr library

6 years agoUpdate ChangeLog file
Alexander Barton [Tue, 20 Aug 2013 11:08:43 +0000 (13:08 +0200)]
Update ChangeLog file

6 years agoDebian init script: test for binary after reading defaults
Alexander Barton [Mon, 19 Aug 2013 21:31:10 +0000 (23:31 +0200)]
Debian init script: test for binary after reading defaults

This allows the system administrator to overwrite the DAEMON variable in
/etc/defaults/<name> and to use this init script even when the default
"/usr/sbin/ngircd" doesn't exist on the system.

6 years agoMerge branch 'ssl-log-messages'
Alexander Barton [Sat, 17 Aug 2013 20:05:59 +0000 (22:05 +0200)]
Merge branch 'ssl-log-messages'

* ssl-log-messages:
  Make SSL-related log messages more readable
  ConnSSL_HandleError: Code cleanup, more documentation

6 years agoMake SSL-related log messages more readable ssl-log-messages
Alexander Barton [Wed, 14 Aug 2013 08:56:09 +0000 (10:56 +0200)]
Make SSL-related log messages more readable

 - Don't use internal function names but describe the error.
 - Streamline wording, use "SSL" for SSL and TLS.
 - Streamline punctuation.

6 years agoUse _IRC_ARGC_BETWEEN_OR_RETURN_ when possible
Federico G. Schwindt [Tue, 13 Aug 2013 17:06:34 +0000 (18:06 +0100)]
Use _IRC_ARGC_BETWEEN_OR_RETURN_ when possible

6 years agoConnSSL_HandleError: Code cleanup, more documentation
Alexander Barton [Mon, 12 Aug 2013 21:12:37 +0000 (23:12 +0200)]
ConnSSL_HandleError: Code cleanup, more documentation

6 years agoChange log level of "SSL connection shutting down"
Alexander Barton [Sun, 11 Aug 2013 22:02:40 +0000 (00:02 +0200)]
Change log level of "SSL connection shutting down"

6 years agoFix 2 bugs introduced in 74514b8c23
Federico G. Schwindt [Sun, 11 Aug 2013 19:57:11 +0000 (20:57 +0100)]
Fix 2 bugs introduced in 74514b8c23

Channel_Modes() and Channel_Topic() return static memory that is zeroed at
creation time. Fix checking for empty modes and topic so they're propagated
correctly.

6 years agoconfigure: Don't quote IO backend type(s)
Alexander Barton [Sun, 11 Aug 2013 09:38:10 +0000 (11:38 +0200)]
configure: Don't quote IO backend type(s)

It's not needed and inconsistent compared to the other settings.

Reported by "allerbest" (Götz Hoffart) on #ngircd, thanks!

6 years agoIRC_SERVER(): Code cleanup
Alexander Barton [Tue, 6 Aug 2013 22:13:08 +0000 (00:13 +0200)]
IRC_SERVER(): Code cleanup

6 years agoIntroduce new function IRC_WriteErrClient()
Alexander Barton [Tue, 6 Aug 2013 21:37:21 +0000 (23:37 +0200)]
Introduce new function IRC_WriteErrClient()

This function is used to send "error messages", including numerics,
back to clients and to automatically enforce a 2 second penalty. With
this patch, all error results enforces a delay for the client.

All callers of IRC_WriteStrClient(ERR_xxx) have been converted.

Please note that this patch prolongs the time "make check" needs
to complete its tests, because of lots of new enforced penalties ...

6 years agoirc-macros.h: Update copyright, don't forget contributors!
Alexander Barton [Tue, 6 Aug 2013 21:36:10 +0000 (23:36 +0200)]
irc-macros.h: Update copyright, don't forget contributors!

6 years agoirc-write.c: Clean up code and add more documentation comments
Alexander Barton [Tue, 6 Aug 2013 21:21:48 +0000 (23:21 +0200)]
irc-write.c: Clean up code and add more documentation comments

6 years agoFix return code of some IRC_WriteXXX() functions
Alexander Barton [Tue, 6 Aug 2013 21:16:35 +0000 (23:16 +0200)]
Fix return code of some IRC_WriteXXX() functions

These functions usually write to more than one target, and therefore
can't return value indicating success or failure in a sane way. And, even
more omportant, these functions should send to as much as possible clients
and not stop at the first client which isn't reachable any more!

6 years agoStreamline punctuation of log messages
Alexander Barton [Tue, 6 Aug 2013 19:34:32 +0000 (21:34 +0200)]
Streamline punctuation of log messages

See commit d38d153f for details.

6 years agoUpdate NEWS and ChangeLog files
Alexander Barton [Tue, 6 Aug 2013 19:14:56 +0000 (21:14 +0200)]
Update NEWS and ChangeLog files

6 years agoMore spelling corrections
Federico G. Schwindt [Mon, 5 Aug 2013 10:06:52 +0000 (11:06 +0100)]
More spelling corrections

6 years agoInline who_flags_status
Federico G. Schwindt [Mon, 5 Aug 2013 10:05:12 +0000 (11:05 +0100)]
Inline who_flags_status

6 years agoConvert more code to use Channel_HasMode
Federico G. Schwindt [Sun, 4 Aug 2013 20:16:03 +0000 (21:16 +0100)]
Convert more code to use Channel_HasMode

6 years agoSimplify mode checking on channels and users within a channel
Federico G. Schwindt [Sun, 4 Aug 2013 17:28:04 +0000 (18:28 +0100)]
Simplify mode checking on channels and users within a channel

Add Channel_HasMode() and Channel_UserHasMode() and use it where
possible.

6 years agoUse Client_HasMode and Client_HasFlag where appropriate
Federico G. Schwindt [Sun, 4 Aug 2013 16:25:24 +0000 (17:25 +0100)]
Use Client_HasMode and Client_HasFlag where appropriate

6 years agoMerge branch 'bug152-AllowedChannelTypes'
Alexander Barton [Sun, 4 Aug 2013 12:11:12 +0000 (14:11 +0200)]
Merge branch 'bug152-AllowedChannelTypes'

* bug152-AllowedChannelTypes:
  Implement new configuration option "AllowedChannelTypes"
  Introduce "CHANTYPES" #define

6 years agoImplement new configuration option "AllowedChannelTypes" bug152-AllowedChannelTypes
Alexander Barton [Sun, 4 Aug 2013 01:06:53 +0000 (03:06 +0200)]
Implement new configuration option "AllowedChannelTypes"

The new configuration variable "AllowedChannelTypes" lists all allowed
channel types (channel prefixes) for newly created channels on the local
server. By default, all supported channel types are allowed.

If set to the empty string, local clients can't create new channels at
all, which equals the old "PredefChannelsOnly = yes" setting.

This patch deprecates the "PredefChannelsOnly" variable, too, but it is
still supported and translated to the apropriate "AllowedChannelTypes"
setting. When "PredefChannelsOnly" is processed, a warning message is
logged.

Closes bug #152.

6 years agoMore spelling fixes
Federico G. Schwindt [Sun, 4 Aug 2013 11:33:10 +0000 (12:33 +0100)]
More spelling fixes

Remove superflous comments, mostly in German. Fix spelling and
use american variants for consistency.

6 years agoChange cloaked hostname to be malloc'd on demand
Federico G. Schwindt [Sun, 4 Aug 2013 09:15:11 +0000 (10:15 +0100)]
Change cloaked hostname to be malloc'd on demand

This shaves a few bytes when cloaked hostnames are not used and
restricts the cloakhost announcement iif there is something to
send.

6 years agoAdd Client_HasFlag() to check if a client has certain flag
Federico G. Schwindt [Sun, 4 Aug 2013 02:20:13 +0000 (03:20 +0100)]
Add Client_HasFlag() to check if a client has certain flag

6 years agoFix spelling
Federico G. Schwindt [Sun, 4 Aug 2013 02:15:27 +0000 (03:15 +0100)]
Fix spelling

6 years agoRename XXX_Fingerprint to XXX_CertFp
Federico G. Schwindt [Sun, 4 Aug 2013 02:14:27 +0000 (03:14 +0100)]
Rename XXX_Fingerprint to XXX_CertFp

6 years agoImproved client announcement
Federico G. Schwindt [Sat, 3 Aug 2013 23:22:38 +0000 (00:22 +0100)]
Improved client announcement

Move Announce_User() to client.c and rename it to Client_Announce().
Use this in cb_introduceClient() instead of duplicating the code.
This fix the certificate fingerprint announcement for new clients.
Also ensure the certificate fingerprint is only announced if the
client supports it (`M' flag).

6 years agoIntroduce "CHANTYPES" #define
Alexander Barton [Sat, 3 Aug 2013 22:34:48 +0000 (00:34 +0200)]
Introduce "CHANTYPES" #define

This #define lists all the prefix characters of all supported channel
types, this is "#&+" at the moment.

6 years agoMerge remote-tracking branch 'fgsch/certfp'
Alexander Barton [Fri, 2 Aug 2013 22:29:12 +0000 (00:29 +0200)]
Merge remote-tracking branch 'fgsch/certfp'

* fgsch/certfp:
  Simplify MOTD handling
  Add certificate fingerprint support

6 years agoSimplify MOTD handling
Federico G. Schwindt [Fri, 2 Aug 2013 15:43:01 +0000 (16:43 +0100)]
Simplify MOTD handling

Merge Show_MOTD_Start, Show_MOTD_Sendline and Show_MOTD_End into
IRC_Show_MOTD.

6 years agoAdd certificate fingerprint support
Federico G. Schwindt [Fri, 2 Aug 2013 00:47:06 +0000 (01:47 +0100)]
Add certificate fingerprint support

6 years agoUpdate irc-server.c to use irc-macros.h
Alexander Barton [Fri, 2 Aug 2013 22:00:47 +0000 (00:00 +0200)]
Update irc-server.c to use irc-macros.h

And add some comments :-)

6 years agoCommands.txt: Update more descriptions
Alexander Barton [Fri, 2 Aug 2013 21:59:32 +0000 (23:59 +0200)]
Commands.txt: Update more descriptions

Update description of "CHANINFO", "METADATA", "NJOIN", "SERVER", "SQUIT",
"GET", and "POST".

6 years agoUpdate irc-oper.c to use irc-macros.h
Alexander Barton [Fri, 2 Aug 2013 21:27:11 +0000 (23:27 +0200)]
Update irc-oper.c to use irc-macros.h

6 years agoCommands.txt: Update more descriptions
Alexander Barton [Fri, 2 Aug 2013 21:25:23 +0000 (23:25 +0200)]
Commands.txt: Update more descriptions

Update description of "CONNECT", "DIE", "DISCONNECT", "GLINE", "KILL",
"KLINE", "OPER", "REHASH", "RESTART" and "WALLOPS".

6 years agoCommands.txt: Fix <target> description of TRACE command
Alexander Barton [Fri, 2 Aug 2013 00:16:21 +0000 (02:16 +0200)]
Commands.txt: Fix <target> description of TRACE command

6 years agoUpdate irc-mode.c to use irc-macros.h
Alexander Barton [Thu, 1 Aug 2013 23:48:13 +0000 (01:48 +0200)]
Update irc-mode.c to use irc-macros.h

This includes code cleanups and more comments, too.

6 years agoUpdate irc-channel.c to use irc-macros.h
Alexander Barton [Thu, 1 Aug 2013 23:46:57 +0000 (01:46 +0200)]
Update irc-channel.c to use irc-macros.h

This includes code cleanups, too :-)

6 years agoCommands.txt: Update more descriptions
Alexander Barton [Thu, 1 Aug 2013 23:45:02 +0000 (01:45 +0200)]
Commands.txt: Update more descriptions

Update descriptions of "AWAY", "JOIN", "LIST", "MODE", "PART",
"TOPC", and "TRACE".

6 years agoCommands.txt: Streamline references to IRC+ protocol
Alexander Barton [Thu, 1 Aug 2013 23:42:31 +0000 (01:42 +0200)]
Commands.txt: Streamline references to IRC+ protocol

6 years agoShow IRC Operator name when logging a successful OPER command
Alexander Barton [Wed, 31 Jul 2013 22:24:10 +0000 (00:24 +0200)]
Show IRC Operator name when logging a successful OPER command

6 years agoAdd penalty times in error paths of generic IRC helper macros
Alexander Barton [Tue, 30 Jul 2013 20:08:04 +0000 (22:08 +0200)]
Add penalty times in error paths of generic IRC helper macros

Add a 2 second penalty time when the number of parameters is invalid.

6 years agoAdd more penalty times in error paths
Alexander Barton [Tue, 30 Jul 2013 20:05:00 +0000 (22:05 +0200)]
Add more penalty times in error paths

This patch changes the handlers of the "PASS", "NICK", "USER",
and "SERVICE" commands to enforce a 2 second penalty when an error
like "need more/other parameters" occurs.

More functions should follow, I think ...

6 years agoUpdate irc-login.c to use irc-macros.h
Alexander Barton [Tue, 30 Jul 2013 19:18:42 +0000 (21:18 +0200)]
Update irc-login.c to use irc-macros.h

This includes code cleanups, too :-)

6 years agoCommands.txt: Update more descriptions
Alexander Barton [Tue, 30 Jul 2013 19:12:24 +0000 (21:12 +0200)]
Commands.txt: Update more descriptions

Update descriptions of "NICK", "PASS", "PING", "PONG", "QUIT", "USER",
"WEBIRC", "SERVICE", and "SVSNICK".

6 years agoCommands.txt: Update description of "PRIVMSG", "NOTICE", and "SQUERY"
Alexander Barton [Fri, 19 Jul 2013 16:16:12 +0000 (18:16 +0200)]
Commands.txt: Update description of "PRIVMSG", "NOTICE", and "SQUERY"

6 years agoAdd "compile" to .gitignore file
Alexander Barton [Thu, 18 Jul 2013 21:43:12 +0000 (23:43 +0200)]
Add "compile" to .gitignore file

6 years agoCommands.txt: Update description of the "ERROR" command
Alexander Barton [Thu, 18 Jul 2013 21:42:00 +0000 (23:42 +0200)]
Commands.txt: Update description of the "ERROR" command

6 years agoUpdate irc.c to use irc-macros.h
Alexander Barton [Thu, 18 Jul 2013 21:35:33 +0000 (23:35 +0200)]
Update irc.c to use irc-macros.h

This includes code cleanups and better documentation for some
functions, too.

6 years agoMerge pull request #4 from fgsch/master
Alexander Barton [Thu, 18 Jul 2013 20:38:19 +0000 (13:38 -0700)]
Merge pull request #4 from fgsch/master

Changes for ngircd 21.

6 years agoHandle services in IRC_WHOIS_SendReply()
Federico G. Schwindt [Thu, 18 Jul 2013 18:52:17 +0000 (19:52 +0100)]
Handle services in IRC_WHOIS_SendReply()

If the target is a service, advertise it as such and ignore operator mode.

6 years agoFix spelling
Federico G. Schwindt [Thu, 18 Jul 2013 16:51:02 +0000 (17:51 +0100)]
Fix spelling

6 years agoSlightly update ngircd.8 manual page
Alexander Barton [Wed, 17 Jul 2013 12:36:54 +0000 (14:36 +0200)]
Slightly update ngircd.8 manual page

6 years agoTravis-CI: Enable OpenSSL and libiconv support bug151-iconv
Alexander Barton [Tue, 4 Jun 2013 10:46:44 +0000 (12:46 +0200)]
Travis-CI: Enable OpenSSL and libiconv support

6 years agoUpdated NEWS and ChangeLog files
Alexander Barton [Tue, 4 Jun 2013 09:42:25 +0000 (11:42 +0200)]
Updated NEWS and ChangeLog files

6 years agoEnhance Travis-CI configuration file
Alexander Barton [Tue, 4 Jun 2013 09:35:54 +0000 (11:35 +0200)]
Enhance Travis-CI configuration file

It now configures the sandbox to build ngIRCd with IPv6, IDENT, PAM,
TCP-Wrappers, and zlib support. And it installs expect(1) and telnet(1)
for the test suite.

6 years agoMerge pull request #3 from Cofyc/master
Alexander Barton [Thu, 30 May 2013 15:55:48 +0000 (08:55 -0700)]
Merge pull request #3 from Cofyc/master

irc-info.c: some commands use LINE_LEN as command buffer len

6 years agoLINE_LEN -> COMMAND_LEN
Yecheng Fu [Thu, 30 May 2013 05:53:33 +0000 (13:53 +0800)]
LINE_LEN -> COMMAND_LEN
LINE_LEN is configuration file line length

6 years agoIncludeDir: default to "$SYSCONFDIR/ngircd.conf.d" bug157-IncludeDir
Alexander Barton [Fri, 24 May 2013 22:25:38 +0000 (00:25 +0200)]
IncludeDir: default to "$SYSCONFDIR/ngircd.conf.d"

Now "IncludeDir" defaults to "$SYSCONFDIR/ngircd.conf.d" instead
of no directory, but a missing directory is only reported as an
error if it has explicitely configured in the main configuration
file and simply ignored otherwise.

Therefore it is now possible not to touch the default (sample)
configuration file at all, and set all distribution and/or system
specific configuration options in "*.conf" files stored in
"$SYSCONFDIF/ngircd.conf.d/".

Thanks to "Elmasloco" for the idea!

6 years ago"IncludeDir" can't be overwritten by included files
Alexander Barton [Fri, 24 May 2013 20:40:23 +0000 (22:40 +0200)]
"IncludeDir" can't be overwritten by included files

6 years agoImplement new configuration option "IncludeDir"
Alexander Barton [Fri, 24 May 2013 20:29:41 +0000 (22:29 +0200)]
Implement new configuration option "IncludeDir"

The option "IncludeDir" in the [Options] section can be used
to specify a directory which can contain further configuration
files and configuration file snippets matching the pattern
"*.conf" that should be read in after the main configuration
file ("ngircd.conf" by default) has been parsed.

Closes bug #157.

6 years agoconf.c: New function Read_Config_File()
Alexander Barton [Fri, 24 May 2013 19:57:42 +0000 (21:57 +0200)]
conf.c: New function Read_Config_File()

This function reads in and parses a single configuration file.
Adjust all other functions to display the correct name of the
file being read in currently.

6 years agoRename "Mask" variables into "Pattern" in assert() statements
Alexander Barton [Sun, 21 Apr 2013 13:57:51 +0000 (15:57 +0200)]
Rename "Mask" variables into "Pattern" in assert() statements

This completes commit 3ab00e3a11 which broke debug builds.

6 years agoEnsure there is enough space for the mask
Federico G. Schwindt [Sat, 20 Apr 2013 09:53:16 +0000 (10:53 +0100)]
Ensure there is enough space for the mask

As pointed by Alex while strl{cat,cpy} take the full length
we need to leave space to ensure a proper mask is always created
so revert the removal of - N from my last change.

6 years agoBetter description for Lists_CheckReason()
Federico G. Schwindt [Fri, 19 Apr 2013 22:51:42 +0000 (23:51 +0100)]
Better description for Lists_CheckReason()

6 years agoChange Lists_MakeMask() to receive a buffer for the mask
Federico G. Schwindt [Fri, 19 Apr 2013 23:19:03 +0000 (00:19 +0100)]
Change Lists_MakeMask() to receive a buffer for the mask

Change callers accordingly so they don't rely on a global buffer and
rename Mask to Pattern where it makes sense since some functions
where indeed receiving a pattern and not a mask.

6 years agoFix use-after-free on Lists_CheckReason()
Federico G. Schwindt [Fri, 19 Apr 2013 22:51:42 +0000 (23:51 +0100)]
Fix use-after-free on Lists_CheckReason()

Change Lists_CheckReason() to receive a buffer where the reason
will be stored and its length.  Change callers accordingly.

Change Class_GetMemberReason() (and its callers) in a similar way
so it doesn't rely on a global buffer for the rejected reason.

6 years agoUpdate doc/Platforms.txt a little bit ...
Alexander Barton [Mon, 1 Apr 2013 15:23:49 +0000 (17:23 +0200)]
Update doc/Platforms.txt a little bit ...

6 years agoBuild OS X package with correct file permissions
Alexander Barton [Wed, 27 Mar 2013 12:09:23 +0000 (13:09 +0100)]
Build OS X package with correct file permissions

This requires to have the correct permissions in the source tree, which
is "root:wheel", which in turn requires root privileges. Therefore the
Makefile now tries to become root on "make osxpkg-dest" but tries hard
not to require root privileges on "clean" etc.

6 years agoXcode: fix detection of host OS, vendor, and CPU
Alexander Barton [Wed, 27 Mar 2013 11:47:12 +0000 (12:47 +0100)]
Xcode: fix detection of host OS, vendor, and CPU

6 years agoPackageMaker: use relativ path names
Alexander Barton [Wed, 27 Mar 2013 11:45:30 +0000 (12:45 +0100)]
PackageMaker: use relativ path names

6 years agoAdd Travis-CI configuration file
Alexander Barton [Mon, 25 Mar 2013 14:24:47 +0000 (15:24 +0100)]
Add Travis-CI configuration file

6 years agoMake configure[.ng] compatible with autoconf 1.10 again
Alexander Barton [Mon, 18 Mar 2013 11:45:32 +0000 (12:45 +0100)]
Make configure[.ng] compatible with autoconf 1.10 again

The incompatibility has been introduced by commit d0c9f4a6,
"configure: search for iconv_open as well as libiconv_open".

6 years agoLists_CheckReason(): Check for Client_MaskCloaked()
Sebastian Köhler [Wed, 20 Mar 2013 02:40:31 +0000 (03:40 +0100)]
Lists_CheckReason(): Check for Client_MaskCloaked()

Look for possible cloaked Masks in Lists. Users with +x usermode can be
banned with their cloaked hostname now.

6 years agoServices.txt: Anope 1.9.8 has been released now
Alexander Barton [Wed, 13 Mar 2013 21:08:16 +0000 (22:08 +0100)]
Services.txt: Anope 1.9.8 has been released now

6 years agoCommands.txt: Update description of the "KILL" command
Alexander Barton [Sat, 9 Mar 2013 17:00:49 +0000 (18:00 +0100)]
Commands.txt: Update description of the "KILL" command

6 years agoConn_Handler(): Don't test for penalty times
Alexander Barton [Sat, 9 Mar 2013 16:58:10 +0000 (17:58 +0100)]
Conn_Handler(): Don't test for penalty times

The Conn_Handler() main loop calls Handle_Buffer() which checks for the
"penalty time" of each client itself, so don't do it twice.

6 years agoDon't read SSL client data before DNS resolver is finished
Alexander Barton [Sat, 9 Mar 2013 16:44:34 +0000 (17:44 +0100)]
Don't read SSL client data before DNS resolver is finished

Fix the cb_clientserver_ssl() callback function to not read in and store SSL
encrypted client data before the asynchronous DNS resolver sub-process has
finished: This could have resulted in discarding the resolved client hostname
and IDENT reply afterwards, because in some situations (timing dependent) the
NICK and USER commands could have already been read in from the client,
stored in the buffer, and been processed.

Thanks to Julian Brost for reporting the issue and testing, and to Federico
G. Schwindt <fgsch@lodoss.net> for helping to debug it!

6 years agoIncrease password length limit to 64 characters
Alexander Barton [Fri, 8 Mar 2013 18:31:57 +0000 (19:31 +0100)]
Increase password length limit to 64 characters

Closes bug #154.

6 years agodoc/Services.txt: Update Anope status and URL
Alexander Barton [Tue, 26 Feb 2013 08:38:27 +0000 (09:38 +0100)]
doc/Services.txt: Update Anope status and URL

6 years agoCommands.txt: Update description of the "KICK" command
Alexander Barton [Sun, 24 Feb 2013 17:53:33 +0000 (18:53 +0100)]
Commands.txt: Update description of the "KICK" command

6 years agoCommands.txt: Update description of the "INVITE" command
Alexander Barton [Sun, 24 Feb 2013 17:53:10 +0000 (18:53 +0100)]
Commands.txt: Update description of the "INVITE" command