]> jfr.im git - irc/DALnet/bahamut.git/log
irc/DALnet/bahamut.git
11 years agoUpdated CHANGES and patchlevel. This is 2.0.7
epiphani [Fri, 24 May 2013 12:05:04 +0000 (08:05 -0400)] 
Updated CHANGES and patchlevel.  This is 2.0.7

11 years agoMerge pull request #11 from DALnet/master
Aaron Wiebe [Fri, 24 May 2013 12:02:29 +0000 (05:02 -0700)] 
Merge pull request #11 from DALnet/master

Fixed a bug on sendto_channel_butserv_me() function (src/send.c)

11 years agoFixed a bug on sendto_channel_butserv_me() function (src/send.c)
Kobi Shmueli [Fri, 24 May 2013 10:38:13 +0000 (13:38 +0300)] 
Fixed a bug on sendto_channel_butserv_me() function (src/send.c)
The bug causes Bahamut to hide mode and topic changes even if the channel isn't in auditorium mode.

Thanks to nt-spki for reporting this and thanks to srd for fixing it.

-Kobi.

11 years agoUpdate CHANGES and patchlevel. This is 2.0.6.
epiphani [Sat, 11 May 2013 18:19:34 +0000 (14:19 -0400)] 
Update CHANGES and patchlevel.  This is 2.0.6.

11 years agoRemove outdated TODO list
epiphani [Sat, 11 May 2013 16:42:25 +0000 (12:42 -0400)] 
Remove outdated TODO list

11 years agoFix pasteo in find_userban_exact.
Ned T. Crigler [Mon, 29 Apr 2013 23:04:51 +0000 (16:04 -0700)] 
Fix pasteo in find_userban_exact.

The logic for checking whether a CIDR userban already exists had a
missing "continue;" line, making the function behave incorrectly for
IPv4 akills.

Also make the code more readable while we're at it.

Signed-off-by: epiphani <redacted>
11 years agoMerge pull request #10 from DALnet/master
Aaron Wiebe [Sat, 11 May 2013 16:27:28 +0000 (09:27 -0700)] 
Merge pull request #10 from DALnet/master

Auditorium mode+svstag+akill+rakill fixes

11 years agoChanges to deal with bogus akills
Kobi Shmueli [Sat, 27 Apr 2013 02:17:11 +0000 (05:17 +0300)] 
Changes to deal with bogus akills
- Changed m_akill() to warn about bogus akills and also "fix" them (add them anyway for 30 minutes
  as services only sends AKILL commands when it really wants to take out users).
- Added more debugging to m_rakill().

-Kobi.

11 years agoChanged SVSTAG to send/receive umodes in text and fixed incorrect and missing comments.
Kobi Shmueli [Sat, 27 Apr 2013 02:03:28 +0000 (05:03 +0300)] 
Changed SVSTAG to send/receive umodes in text and fixed incorrect and missing comments.

-Kobi.

11 years agoAuditorium mode fixes (cmode +A)
Kobi Shmueli [Sat, 27 Apr 2013 00:22:38 +0000 (03:22 +0300)] 
Auditorium mode fixes (cmode +A)
Hide quits and nick changes as well.

-Kobi.

11 years agoMerge branch 'master' of ssh://github.com/epiphani/bahamut
epiphani [Mon, 15 Apr 2013 08:46:29 +0000 (04:46 -0400)] 
Merge branch 'master' of ssh://github.com/epiphani/bahamut

11 years agoMerge pull request #9 from DALnet/master
Aaron Wiebe [Mon, 15 Apr 2013 08:46:16 +0000 (01:46 -0700)] 
Merge pull request #9 from DALnet/master

SVSTAG & CMODE +A (Auditorium mode)

11 years agoFix 63 character hostname truncation.
Ned T. Crigler [Tue, 19 Mar 2013 23:31:05 +0000 (16:31 -0700)] 
Fix 63 character hostname truncation.

Hostnames with exactly 63 characters were being truncated to 62
characters since register_user was using strncpyzt incorrectly.

The size given to strncpyzt should be the total size of the destination
buffer including the terminating '\0' character. register_user was using
HOSTLEN for the size instead of HOSTLEN + 1.

Also fix some other code that got this wrong.

Signed-off-by: epiphani <redacted>
11 years agoAdded cmode +A (Auditorium mode).
Kobi Shmueli [Sat, 13 Apr 2013 22:53:08 +0000 (01:53 +0300)] 
Added cmode +A (Auditorium mode).
When a channel is in auditorium mode, users can only see ops/voiced users on the channel and messages that are sent to the channel by non-ops/voiced users are being relayed to #channel-relay. Ops and voiced users can see the full user list.

Also, joins/parts/quits of non-ops/voiced users are only sent to ops/voiced users.

This channel mode is intended for network-wide events and currently can only be set by u:lined servers (services).

-Kobi.

11 years agoAdded SVSTAG command to let services add "tags" to users.
Kobi Shmueli [Tue, 26 Mar 2013 14:28:18 +0000 (16:28 +0200)] 
Added SVSTAG command to let services add "tags" to users.

11 years agoUpdate Changes and Patchlevel - this is 2.0.5
epiphani [Thu, 7 Feb 2013 18:31:41 +0000 (13:31 -0500)] 
Update Changes and Patchlevel - this is 2.0.5

11 years agoMerge branch 'master' of ssh://github.com/epiphani/bahamut
epiphani [Thu, 7 Feb 2013 18:29:35 +0000 (13:29 -0500)] 
Merge branch 'master' of ssh://github.com/epiphani/bahamut

11 years agoMerge pull request #7 from Fafson/bahamut/issue/6
Aaron Wiebe [Thu, 7 Feb 2013 18:29:03 +0000 (10:29 -0800)] 
Merge pull request #7 from Fafson/bahamut/issue/6

Remove extra code on s_conf.c

11 years agoDon't truncate long hostnames.
Ned T. Crigler [Sat, 2 Feb 2013 19:58:44 +0000 (11:58 -0800)] 
Don't truncate long hostnames.

When a client connects from an IP address that resolves to a hostname
longer than HOSTLEN characters, the ircd truncates the excess
characters.

Until commit e2004bf0a2c851e7d81fc317b1cc230c9415d3e3, which increased
the resolver's maximum hostname length, this truncation behavior was
masked since the ircd tries to check whether the forward and reverse DNS
for a client's IP address matches. The resolver would try to resolve the
truncated version of the hostname and fail.

Fix this by rejecting a client's resolved hostname if it is too long.

Signed-off-by: epiphani <redacted>
11 years agoRemove extra code on s_conf.c - bahamut issue #6 https://github.com/epiphani/bahamut...
Juan Baez [Wed, 16 Jan 2013 02:06:42 +0000 (20:06 -0600)] 
Remove extra code on s_conf.c - bahamut issue #6 https://github.com/epiphani/bahamut/issues/6

11 years agoMerge pull request #4 from phreakshow/master
Aaron Wiebe [Mon, 31 Dec 2012 05:48:24 +0000 (21:48 -0800)] 
Merge pull request #4 from phreakshow/master

USE_SSL always on even when target server does not have openssl installed

11 years agoUpdate include/config.h
phreakshow [Mon, 31 Dec 2012 03:27:36 +0000 (21:27 -0600)] 
Update include/config.h

11 years agoUpdate Changes and patchlevel - this is 2.0.4
epiphani [Sun, 25 Nov 2012 22:49:45 +0000 (17:49 -0500)] 
Update Changes and patchlevel - this is 2.0.4

11 years agoAdd the WEBIRC command.
Ned T. Crigler [Sat, 24 Nov 2012 18:38:18 +0000 (10:38 -0800)] 
Add the WEBIRC command.

This command is only allowed from trusted clients, and permits the real
hostname of a webirc client be used instead of the hostname of the
webirc gateway they connected through. This can be used to prevent users
from having ircip1.mibbit.com as their hostname, for example.

Trusted clients are added to the ircd.conf by adding special allow
blocks that match ident@host (if an identd response was received), or
webirc@host (if not), and that use a password of the form:
webirc.<password>

For example, in ircd.conf:

allow { ipmask webirc@127.0.0.1; passwd webirc.mypass; class users; };

will allow the command to be used from a non-identd client connecting
from 127.0.0.1 if they use the password mypass in the WEBIRC command.

Opers can also see if a client successfully used this command.

Signed-off-by: epiphani <redacted>
11 years agoMerge pull request #3 from nenolod/warning-cleanups-upstream
Aaron Wiebe [Fri, 5 Oct 2012 11:38:06 +0000 (04:38 -0700)] 
Merge pull request #3 from nenolod/warning-cleanups-upstream

ircd: clean up compiler warnings using -Wall

11 years agoMerge pull request #2 from nenolod/autoconf-deritius
Aaron Wiebe [Fri, 5 Oct 2012 11:34:50 +0000 (04:34 -0700)] 
Merge pull request #2 from nenolod/autoconf-deritius

remove include/setup.h.in and add it to .gitignore

11 years agoMerge pull request #1 from nenolod/uclibc-res
Aaron Wiebe [Fri, 5 Oct 2012 11:34:11 +0000 (04:34 -0700)] 
Merge pull request #1 from nenolod/uclibc-res

res: portability improvements for uclibc

11 years agoircd: various warning cleanups and type enforcement enhancements
William Pitcock [Tue, 18 Sep 2012 18:55:11 +0000 (13:55 -0500)] 
ircd: various warning cleanups and type enforcement enhancements

11 years agodh: avoid possible integer underflow using type enforcement.
William Pitcock [Tue, 18 Sep 2012 18:14:56 +0000 (13:14 -0500)] 
dh: avoid possible integer underflow using type enforcement.

11 years agoircd: clean up compiler warnings using -Wall
William Pitcock [Tue, 18 Sep 2012 17:52:33 +0000 (12:52 -0500)] 
ircd: clean up compiler warnings using -Wall

Remove dead assignments and stalls so that the compiler can remove unnecessary cache misses
in various codepaths caused by unused variables and dead branches.

11 years agoinclude: remove setup.h.in.
William Pitcock [Tue, 18 Sep 2012 17:30:07 +0000 (12:30 -0500)] 
include: remove setup.h.in.

As in the previous commit, we should not include autoconf deritius in the repository.

11 years ago.gitignore: add include/setup.h.in.
William Pitcock [Tue, 18 Sep 2012 17:28:16 +0000 (12:28 -0500)] 
.gitignore: add include/setup.h.in.

Since we are ignoring other autoconf-generated deritius, we should also ignore
the autoheader output.

11 years agores: portability improvements for uclibc
William Pitcock [Tue, 18 Sep 2012 17:30:51 +0000 (12:30 -0500)] 
res: portability improvements for uclibc

This allows building Bahamut on uClibc without any modification.  It avoids using
deprecated interfaces in POSIX-2008, such as _getshort(), _getlong() and directly
dereferencing _res (instead, __res_state() should be dereferenced).

11 years agoUpdate README
epiphani [Sat, 28 Jul 2012 14:14:50 +0000 (10:14 -0400)] 
Update README

12 years agoUpdate patchlevel and changelog. This is 2.0.3
epiphani [Tue, 28 Feb 2012 00:19:12 +0000 (19:19 -0500)] 
Update patchlevel and changelog.  This is 2.0.3

12 years agoEnable CIDR bans by default.
epiphani [Tue, 28 Feb 2012 00:17:49 +0000 (19:17 -0500)] 
Enable CIDR bans by default.

12 years agoFix va_list bug in sendto_all_servmask.
Ned T. Crigler [Fri, 24 Feb 2012 01:48:17 +0000 (17:48 -0800)] 
Fix va_list bug in sendto_all_servmask.

vsendto_fdlist causes vl to no longer be valid, causing a crash on
amd64. This commit changes the code to use VA_COPY first, like we do
elsewhere.

Signed-off-by: epiphani <redacted>
12 years agoUpdate patchlevel and CHANGES. This is 2.0.2
epiphani [Sun, 19 Feb 2012 16:20:22 +0000 (11:20 -0500)] 
Update patchlevel and CHANGES.  This is 2.0.2

12 years agoRemove references to utmp.h and utmp.
Ned T. Crigler [Fri, 17 Feb 2012 22:20:20 +0000 (14:20 -0800)] 
Remove references to utmp.h and utmp.

FreeBSD 9 removed the utmp.h header file, resulting in a compile
failure.

Signed-off-by: epiphani <redacted>
12 years agoMake /who without any flags parse IP addresses and CIDR.
Ned T. Crigler [Sun, 29 Jan 2012 19:39:50 +0000 (11:39 -0800)] 
Make /who without any flags parse IP addresses and CIDR.

Previously the code for handling /who when not given any flags only
checked for a '.' character to distinguish between a hostname and
nickname. Use the CIDR parsing code to allow it to parse IP addresses
and CIDR too.

Signed-off-by: epiphani <redacted>
12 years agoFix identd connections on FreeBSD.
Ned T. Crigler [Sun, 8 Jan 2012 02:49:28 +0000 (18:49 -0800)] 
Fix identd connections on FreeBSD.

FreeBSD is apparently stricter than Linux with the address length
parameter to the connect system call. The code was using the total
length of the buffer (big enough for either an IPv4 or IPv6 address)
instead of the exact length depending on the kind of address, which
caused FreeBSD to return an error immediately, even though an IPv4
address can still fit in the buffer for an IPv6 address.

Fixed by re-using the address length calculated earlier when binding the
socket.

This was spotted thanks to a user who reported that identd wasn't
working for them.

Signed-off-by: epiphani <redacted>
12 years agoClear dlerror() and ensure that dlsym never returns NULL
Ned T. Crigler [Thu, 22 Dec 2011 18:01:36 +0000 (10:01 -0800)] 
Clear dlerror() and ensure that dlsym never returns NULL

We were not clearing dlerror() before checking it, which caused us to
report the last error that occurred, even if it was not our fault.

Also check that dlsym never returns NULL. An error is better than a
crash in this case.

Original patch by Emilio Escobar, with some editing by me.

Signed-off-by: epiphani <redacted>
12 years agoUpdated version.c.SH
epiphani [Fri, 16 Dec 2011 15:20:35 +0000 (10:20 -0500)] 
Updated version.c.SH

12 years agoUpdate CHANGES and patchlevel. This is 2.0.1
epiphani [Fri, 16 Dec 2011 15:15:05 +0000 (10:15 -0500)] 
Update CHANGES and patchlevel.  This is 2.0.1

12 years agoAdded NO_LOCAL_CIDR_CHANNELBANS define.
Kobi Shmueli [Sat, 29 Oct 2011 21:12:20 +0000 (23:12 +0200)] 
Added NO_LOCAL_CIDR_CHANNELBANS define.

Don't allow local clients to set CIDR channel bans/invites/exempts
until all servers and services are upgraded.

Thoughts?

-Kobi.

Signed-off-by: epiphani <redacted>
12 years agoRemove legacy convert_conf tool
epiphani [Fri, 16 Dec 2011 15:10:28 +0000 (10:10 -0500)] 
Remove legacy convert_conf tool

12 years agoFixed the m_topic() SIGSEGV bug I introduced on Bahamut 2.0.0.
Kobi Shmueli [Sat, 29 Oct 2011 21:11:18 +0000 (23:11 +0200)] 
Fixed the m_topic() SIGSEGV bug I introduced on Bahamut 2.0.0.

This should make sure non-NICKIPSTR servers won't get nick!user@host topics.

-Kobi.

Signed-off-by: epiphani <redacted>
12 years agoFix crash in sendto_all_servmask when using x64 architectures
epiphani [Fri, 16 Dec 2011 14:45:48 +0000 (09:45 -0500)] 
Fix crash in sendto_all_servmask when using x64 architectures

Just a repeat of the va_copy method of avoiding vl's getting foobard.

Reported-by: pumpkin (pumpkin@dreamers.gr)
12 years agoFix compilation for FreeBSD 4
Ned T. Crigler [Mon, 5 Sep 2011 21:34:00 +0000 (14:34 -0700)] 
Fix compilation for FreeBSD 4

Do a s/va_copy/VA_COPY/g in src/send.c so that our VA_COPY macro can be
used to handle older systems that do not have va_copy.

Signed-off-by: epiphani <redacted>
12 years agoUpdate patchlevel. This is 2.0.0
epiphani [Sun, 4 Sep 2011 21:19:29 +0000 (17:19 -0400)] 
Update patchlevel.  This is 2.0.0

12 years agoFix various problems with non-standard build configurations.
Ned T. Crigler [Wed, 31 Aug 2011 18:38:50 +0000 (11:38 -0700)] 
Fix various problems with non-standard build configurations.

Libraries should be prepended to $LIBS instead of appended, as the
linker only does a single left-to-right pass over the command line.

This sometimes showed up as link errors (such as when shared libraries
are not being used) when -lssl came after -lcrypto, since -lssl depends
on -lcrypto.

Also, we were not actually using the include path for zlib detected by
configure, as it was setting $CPPFLAGS, which wasn't being used in the
Makefiles.

Signed-off-by: epiphani <redacted>
12 years agoDon't allow banned users to change topics on -t channels.
epiphani [Wed, 31 Aug 2011 17:10:46 +0000 (13:10 -0400)] 
Don't allow banned users to change topics on -t channels.

12 years agoAllow Opers to view the state of +l and +k from outside the channel
epiphani [Wed, 31 Aug 2011 17:00:18 +0000 (13:00 -0400)] 
Allow Opers to view the state of +l and +k from outside the channel

12 years agoAdded needed va_end
Emilio Escobar [Fri, 1 Jul 2011 18:19:50 +0000 (20:19 +0200)] 
Added needed va_end

Signed-off-by: epiphani <redacted>
12 years agoFixed va_free statements and modified prefix_buffer to use copy of va_list to keep...
Emilio Escobar [Fri, 1 Jul 2011 18:19:48 +0000 (20:19 +0200)] 
Fixed va_free statements and modified prefix_buffer to use copy of va_list to keep original defined.

Signed-off-by: epiphani <redacted>
12 years agoAdded check for Linux to use /dev/urandom instead of /dev/random. BSD /dev/random...
Emilio Escobar [Fri, 1 Jul 2011 18:19:47 +0000 (20:19 +0200)] 
Added check for Linux to use /dev/urandom instead of /dev/random. BSD /dev/random does not block like it does on Linux.

Signed-off-by: epiphani <redacted>
12 years agoSupport for nick!user@host topics, requires capab NICKIPSTR.
Kobi Shmueli [Fri, 1 Jul 2011 17:36:52 +0000 (20:36 +0300)] 
Support for nick!user@host topics, requires capab NICKIPSTR.

Signed-off-by: epiphani <redacted>
12 years agoFix SIGSEGV in vsprintf when compiled in 64-bit
Emilio Escobar [Tue, 7 Jun 2011 02:00:09 +0000 (22:00 -0400)] 
Fix SIGSEGV in vsprintf when compiled in 64-bit

Basically create a copy of the val_list that's being passed to vsprintf when calling it
from a loop.

Signed-off-by: epiphani <redacted>
12 years agoFix misspelled file name
epiphani [Sun, 24 Apr 2011 16:12:29 +0000 (12:12 -0400)] 
Fix misspelled file name

It's amazing how long you can miss something like this.

12 years agoSilence some warnings found on FreeBSD 8.2
Ned T. Crigler [Wed, 23 Mar 2011 18:28:47 +0000 (11:28 -0700)] 
Silence some warnings found on FreeBSD 8.2

Silence a warning in msg_has_ctrls which gcc in the new version of
FreeBSD warns about.

Also, gcc now warns about something of type time_t not matching the
%ld/%lu used in the format string. Fixed by adding casts to long or
unsigned long.

Signed-off-by: epiphani <redacted>
12 years agoAdd IPv6 CIDR support to klines.
Ned T. Crigler [Fri, 18 Mar 2011 01:54:11 +0000 (18:54 -0700)] 
Add IPv6 CIDR support to klines.

This patch adds IPv6 CIDR support using the new bitncmp and
inet_parse_cidr functions.

Signed-off-by: epiphani <redacted>
12 years agoAdd IPv6 CIDR support to /who and /rwho.
Ned T. Crigler [Fri, 18 Mar 2011 01:54:10 +0000 (18:54 -0700)] 
Add IPv6 CIDR support to /who and /rwho.

This patch adds IPv6 CIDR support using the new bitncmp and
inet_parse_cidr functions.

Signed-off-by: epiphani <redacted>
12 years agoAdd CIDR support to channel bans, O:lines and I:lines.
Ned T. Crigler [Fri, 18 Mar 2011 01:54:09 +0000 (18:54 -0700)] 
Add CIDR support to channel bans, O:lines and I:lines.

This patch adds IPv4 and IPv6 CIDR support to a few areas using the new
bitncmp and inet_parse_cidr functions.

Signed-off-by: epiphani <redacted>
12 years agoAdd bitncmp and inet_parse_cidr.
Ned T. Crigler [Fri, 18 Mar 2011 01:54:08 +0000 (18:54 -0700)] 
Add bitncmp and inet_parse_cidr.

These functions handle the matching and parsing of CIDR IPv4 and IPv6
addresses.

Also save the binary IPv6 address for remote clients, now that we will
be using it.

Signed-off-by: epiphani <redacted>
12 years agoAllow colons in klines.
Ned T. Crigler [Wed, 16 Mar 2011 00:39:41 +0000 (17:39 -0700)] 
Allow colons in klines.

Teach the userban code about IPv6 addresses.

Signed-off-by: epiphani <redacted>
12 years agoAllow connections to and from IPv6 servers.
Ned T. Crigler [Wed, 16 Mar 2011 00:39:40 +0000 (17:39 -0700)] 
Allow connections to and from IPv6 servers.

When using hostnames (instead of IP addresses) in a connect block, the
address family of the bind statement is used to determine whether the
resolver should use IPv4 or IPv6.

Signed-off-by: epiphani <redacted>
12 years agoReindent and cleanup lookup_confhost.
Ned T. Crigler [Wed, 16 Mar 2011 00:39:39 +0000 (17:39 -0700)] 
Reindent and cleanup lookup_confhost.

The previous indentation of this function made it difficult to understand.

Signed-off-by: epiphani <redacted>
12 years agoFix some issues when receiving a numeric IP address from a server.
Ned T. Crigler [Wed, 16 Mar 2011 00:37:04 +0000 (17:37 -0700)] 
Fix some issues when receiving a numeric IP address from a server.

Some htonl calls were missing when checking for the 0.0.0.1 IP address,
which indicates that a non-IPv4 address was passed through a server that
does not have the NICKIPSTR capability.

Also ensure that the hostip field is correctly set for numeric IP
addresses.

Signed-off-by: epiphani <redacted>
12 years agoFix relaying of NICKIPSTR NICK messages.
Ned T. Crigler [Wed, 16 Mar 2011 00:37:03 +0000 (17:37 -0700)] 
Fix relaying of NICKIPSTR NICK messages.

Signed-off-by: epiphani <redacted>
12 years agoFix some problems found on FreeBSD 6.4
Ned T. Crigler [Mon, 14 Mar 2011 19:35:14 +0000 (12:35 -0700)] 
Fix some problems found on FreeBSD 6.4

FreeBSD is apparently a lot stricter about the length of the socket
structure matching the address family.

Also add #include <sys/socket.h> to include/struct.h to get AF_INET and
AF_INET6 defined.

Signed-off-by: epiphani <redacted>
12 years agoMake resolving IPv6 hostnames work for clients.
Ned T. Crigler [Sun, 13 Mar 2011 00:43:19 +0000 (16:43 -0800)] 
Make resolving IPv6 hostnames work for clients.

Signed-off-by: epiphani <redacted>
12 years agoRefactor the functions in res.c in preparation for IPv6 support.
Ned T. Crigler [Sun, 13 Mar 2011 00:43:18 +0000 (16:43 -0800)] 
Refactor the functions in res.c in preparation for IPv6 support.

Signed-off-by: epiphani <redacted>
12 years agoUse improved hashing algorithms in the resolver.
Ned T. Crigler [Sun, 13 Mar 2011 00:43:17 +0000 (16:43 -0800)] 
Use improved hashing algorithms in the resolver.

These are Bob Jenkins' hash algorithms. The integer hash will allow us
to hash IPv6 addresses in the future.

Signed-off-by: epiphani <redacted>
12 years agoChange the resolver to use a larger maximum hostname length.
Ned T. Crigler [Sun, 13 Mar 2011 00:43:16 +0000 (16:43 -0800)] 
Change the resolver to use a larger maximum hostname length.

Since addresses in the ip6.arpa domain are longer than HOSTLEN
characters, use a larger maximum length in the resolver code.

Signed-off-by: epiphani <redacted>
12 years agoAllow IPv6 clients to connect to the server.
Ned T. Crigler [Thu, 10 Mar 2011 22:20:19 +0000 (14:20 -0800)] 
Allow IPv6 clients to connect to the server.

A port can be enabled for IPv6 by using bind ::0; (or some other IPv6
address) in the configuration block for that port.

Resolving IPv6 hostnames is not supported yet. The ipmask token in the
port block is also ignored.

Signed-off-by: epiphani <redacted>
12 years agoRefactor the functions in s_bsd.c in preparation for IPv6 client support.
Ned T. Crigler [Thu, 10 Mar 2011 22:20:18 +0000 (14:20 -0800)] 
Refactor the functions in s_bsd.c in preparation for IPv6 client support.

Signed-off-by: epiphani <redacted>
12 years agoRefactor the functions in s_auth.c in preparation for IPv6 client support.
Ned T. Crigler [Thu, 10 Mar 2011 22:20:17 +0000 (14:20 -0800)] 
Refactor the functions in s_auth.c in preparation for IPv6 client support.

Signed-off-by: epiphani <redacted>
12 years agoMake clones.c support non-IPv4 addresses.
Ned T. Crigler [Thu, 10 Mar 2011 22:20:16 +0000 (14:20 -0800)] 
Make clones.c support non-IPv4 addresses.

The code that detects clones based on the full IP address will work for
non-IPv4 addresses now.

Based on mamikk's old patch.

Signed-off-by: epiphani <redacted>
12 years agoIntroduce the possibility of multiple address families.
Ned T. Crigler [Mon, 7 Mar 2011 20:57:56 +0000 (12:57 -0800)] 
Introduce the possibility of multiple address families.

This patch adds an address family field to each client structure, which
is now checked in various places that expect to only be working with
IPv4 addresses, such as CIDR masking for /who and /rwho.

The IP address 0.0.0.1 is reserved to indicate that a non-IPv4 address
was passed through a server that does not have the NICKIPSTR capability.

Signed-off-by: epiphani <redacted>
12 years agoAdd cipntoa, a function to return a client's IP address as a string.
Ned T. Crigler [Mon, 7 Mar 2011 20:57:55 +0000 (12:57 -0800)] 
Add cipntoa, a function to return a client's IP address as a string.

This function allows us to avoid using touching the raw IP address for
an client when all we really want is the string version.

Also increase HOSTIPLEN to 45 characters, which will allow an IPv6
address to fit.

Based on the function from mamikk's old patch.

Signed-off-by: epiphani <redacted>
12 years agoMove zero IP checking into clones_add/clones_remove.
Ned T. Crigler [Mon, 7 Mar 2011 20:57:54 +0000 (12:57 -0800)] 
Move zero IP checking into clones_add/clones_remove.

The callers of clones_add and clone_remove were directly accessing the
client's IP address. Move this checking into the two functions, to make
it easier to change later.

Signed-off-by: epiphani <redacted>
12 years agoAdd NICKIPSTR capability.
Ned T. Crigler [Sun, 6 Mar 2011 22:39:14 +0000 (14:39 -0800)] 
Add NICKIPSTR capability.

Previously, the IP address for a client was sent to other servers as a
32-bit number.

This patch adds a new capability that indicates that a server is capable
of handling the IP address being sent as a string.

Signed-off-by: epiphani <redacted>
12 years agoRe-added SVSNOOP to let services temporary disable all o:lines on a given server.
Kobi Shmueli [Fri, 10 Dec 2010 05:55:35 +0000 (07:55 +0200)] 
Re-added SVSNOOP to let services temporary disable all o:lines on a given server.

Signed-off-by: epiphani <redacted>
12 years agoFixed problem with initconf() where the function would not call fclose after it was...
Juan Baez [Thu, 19 Aug 2010 18:19:25 +0000 (13:19 -0500)] 
Fixed problem with initconf() where the function would not call fclose after it was done with the config file.

Signed-off-by: epiphani <redacted>
12 years agoUpdate 005 numeric with +S channel mode
epiphani [Mon, 12 Jul 2010 14:54:02 +0000 (10:54 -0400)] 
Update 005 numeric with +S channel mode

Reported-by: John M. Burks (irc: nsx)
12 years agoFix compatibility with gcc 2.95 in zlink header include order
epiphani [Fri, 25 Jun 2010 15:21:10 +0000 (11:21 -0400)] 
Fix compatibility with gcc 2.95 in zlink header include order

12 years agoHad version strings backwards. This is the _real_ 1.8.9
epiphani [Fri, 18 Jun 2010 21:30:06 +0000 (17:30 -0400)] 
Had version strings backwards.  This is the _real_ 1.8.9

12 years agoUpdate patchlevel and CHANGES. This is 1.8.9
epiphani [Fri, 18 Jun 2010 21:15:47 +0000 (17:15 -0400)] 
Update patchlevel and CHANGES.  This is 1.8.9

12 years agoSignificant update of autoconf/configure scripts
epiphani [Fri, 18 Jun 2010 20:20:20 +0000 (16:20 -0400)] 
Significant update of autoconf/configure scripts

No actual functional changes, mostly housekeeping type updates.
For example, we once had our own epoll detector.  It didn't work well.
Now we use an autoconf macro someone else wrote.

12 years agoUpdate build_version for more common version string
epiphani [Fri, 18 Jun 2010 20:12:56 +0000 (16:12 -0400)] 
Update build_version for more common version string

This has been annoying me for a while.

12 years agoFix badly declared bircmodule_free() in hooks header
epiphani [Fri, 18 Jun 2010 19:10:32 +0000 (15:10 -0400)] 
Fix badly declared bircmodule_free() in hooks header

Thanks to Meekys for pointing this out.

12 years agoFixed a memleak bug on SVSHOST if used twice on the same user (reported by DiAvOl).
Kobi Shmueli [Fri, 28 May 2010 20:44:41 +0000 (23:44 +0300)] 
Fixed a memleak bug on SVSHOST if used twice on the same user (reported by DiAvOl).

Signed-off-by: epiphani <redacted>
12 years agoMade make install copy make-cert.cnf to INSTALL_DIR.
Kobi Shmueli [Fri, 28 May 2010 20:44:56 +0000 (23:44 +0300)] 
Made make install copy make-cert.cnf to INSTALL_DIR.

Signed-off-by: epiphani <redacted>
12 years agoFix safe_ssl_read/safe_ssl_write to return -1 for EWOULDBLOCK/EAGAIN.
Ned T. Crigler [Mon, 17 May 2010 16:09:43 +0000 (09:09 -0700)] 
Fix safe_ssl_read/safe_ssl_write to return -1 for EWOULDBLOCK/EAGAIN.

The safe_ssl_read and safe_ssl_write functions were setting errno and
then returning 0, which is incorrect. They should be returning -1
instead, since proper code only checks errno when -1 is returned from a
system call.

This patch should hopefully fix a bug that was causing SSL users to be
disconnected when a large number of bytes were being transferred from or
to the IRC server.

Signed-off-by: epiphani <redacted>
12 years agoFix regression in make install
epiphani [Tue, 25 May 2010 14:45:35 +0000 (10:45 -0400)] 
Fix regression in make install

I introduced this in 5198c564ed5bf53c028847e696f1ec0e2c3173fa

12 years agoUpdate CHANGES and patchlevel. This is 1.8.8
epiphani [Tue, 4 May 2010 19:55:35 +0000 (15:55 -0400)] 
Update CHANGES and patchlevel. This is 1.8.8

12 years agoFix possible null dereference in m_nick
epiphani [Tue, 4 May 2010 19:52:01 +0000 (15:52 -0400)] 
Fix possible null dereference in m_nick

This could be triggered by a pre-registration user issueing a NICK twice.

12 years agoFix the tools makefile for BSD's sed not doing -i properly
epiphani [Tue, 4 May 2010 17:12:51 +0000 (13:12 -0400)] 
Fix the tools makefile for BSD's sed not doing -i properly

12 years agoUpdate TODO and Patchlevel. This is 1.8.7.
epiphani [Tue, 4 May 2010 15:28:49 +0000 (11:28 -0400)] 
Update TODO and Patchlevel.  This is 1.8.7.

12 years agoUpdate notifcations for failed OPER attempts
epiphani [Tue, 4 May 2010 15:23:28 +0000 (11:23 -0400)] 
Update notifcations for failed OPER attempts

Do not provide hostnames for any failed OPER attempt to non-admin (+A) users.
Side effect:  +A users will receive two notices on failed OPER or OPERMASK attempts,
one with hostnames and one without.