about summary refs log tree commit diff
path: root/src
AgeCommit message (Collapse)Author
2010-06-29New "module" proc.c/proc.h for generic process handlingAlexander Barton
The new "module" proc.c is used for functions dealing with child processes. At the moment, it is only used by the asynchronous resolver. All the functions already implemented habe been migrated from the resolver code base, and the rest of the ngIRCd source code has been adepted to the new namespace and calling conventions. The goal is to develop "generic" process handling functions that can be used for other purposes as well, e.g. running processes on client connects etc.
2010-06-29Only #include resolve.h if it is really neededAlexander Barton
2010-06-26Fix redundant redeclaration of Conn_Count*() functionsAlexander Barton
The wrongly placed #endif lead to the following compiler warnings: conn.h:125: warning: redundant redeclaration of ‘Conn_Count’ conn.h:125: warning: previous declaration of ‘Conn_Count’ was here conn.h:126: warning: redundant redeclaration of ‘Conn_CountMax’ conn.h:126: warning: previous declaration of ‘Conn_CountMax’ was here conn.h:127: warning: redundant redeclaration of ‘Conn_CountAccepted’ conn.h:127: warning: previous declaration of ‘Conn_CountAccepted’ was here
2010-06-26const'ify Conn_WriteStr() functionAlexander Barton
2010-06-26const'ify Send_ListChange() function in irc-mode.cAlexander Barton
2010-06-26const'ify IRC_WriteStrXXX() and Get_Prefix() functionsAlexander Barton
2010-06-26const'ify command name variable in _COMMAND strcutureAlexander Barton
2010-06-26const'ify Client_TypeText()Alexander Barton
2010-06-25Implement user mode "c": receive connect/disconnect NOTICEsAlexander Barton
Users having the user mode "c" set receive NOTICE messages on each new client connection to the local server as well as disconnects. Only IRC operators (users having the mode "o" set) are allowed to set the 'c' user mode. These connect/disconnect messages can be useful for open proxy scanners -- BOPM (http://wiki.blitzed.org/BOPM) is now functional with ngIRCd, for example.
2010-06-25Refactor Wall_ServerNotice() into more generic Log_ServerNotice()Alexander Barton
Log_ServerNotice() sends a messages to all users having a given user mode set.
2010-06-25New function Conn_IPA(): get client IP address as stringAlexander Barton
2010-06-23Show SSL status in WHOIS, numeric 275Neale Pickett
"I've been wanting this for years and finally took the 5 minutes to patch it in. I took the response code (275) from whatever's running OFTC's IRC network." -- Neale Pickett <neale@woozle.org>, Fri, 11 Jun 2010 17:32:41 -0500 (OFTC is running Hybrid ircd.)
2010-05-22Don't access already freed memory in IRC_KILL()Alexander Barton
It is not possible to call Conn_Close() after Client_Destroy() has been called, because Conn_Close wants to access the CLIENT structure which then has been freed already. Fix IRC_KILL to use Conn_Close() for local clients and Client_Destroy() for remote clients only (and never both).
2010-05-14fix "beeing" typoFlorian Westphal
reported by Fabio Scotoni via bugzilla #101.
2010-05-07SSL/TLS: fix bogus 'socket closed' error messageFlorian Westphal
When we get there then the ssl handshake has failed, or we could not create a ssl context because ssl library initialization failed on startup. Reflect that in the log message.
2010-04-25Don't reset counters on RESTARTAlexander Barton
When ngIRCd restarts, all the connection counters are preserved now, as well as the command counters for example. It's unclear if resetting or not resetting is the "correct" behaviour, but it's quite clear that the behaviour should be consistent for all the counters ngIRCd uses ... And initializing "WCounter", the global but temporary write counter, is not necessarry at all: it is initialized (reset) before its use in the command parser (see parse.c).
2010-04-23New numeric RPL_STATSCONN (250): display connection statisticsAlexander Barton
The RPL_STATSCONN numeric (250) displays information about the highest simoultaneous connection count and the number of all accepted connections since the daemon started up. Used by ircd-Hybrid, Bahamut, and Unreal for example.
2010-04-23Display total number of served connections on daemon shutdownAlexander Barton
2010-04-23Enhace connection statistics countersAlexander Barton
This patch enables ngIRCd to count the highest maximum simultaneous connections and all the connections accepted since startup. New functions: - Conn_Count(): get current connections - Conn_CountMax(): maximum simultaneous connections - Conn_CountAccepted(): number of connections accepted
2010-04-23Conn_Init: code cleanupAlexander Barton
2010-04-23Only include <netinet/in_systm.h> if it existsAlexander Barton
2010-04-11Include netinet/in_systm.h alongside netinet/ip.hAlexander Barton
This fixes the following error when compiling on e.g. FreeBSD 6.x: In file included from conn.c:40: /usr/include/netinet/ip.h:160: error: syntax error before "n_long" /usr/include/netinet/ip.h:163: error: syntax error before "n_long"
2010-04-09Fix gcc warning "ignoring return value of ..."Alexander Barton
This patch fixes two warnings of gcc 4.4.3 when used with eglibc 2.11.1: ngircd.c: In function ‘NGIRCd_Init’: ngircd.c:801: warning: ignoring return value of ‘chdir’, declared with attribute warn_unused_result conn.c: In function ‘Simple_Message’: conn.c:2041: warning: ignoring return value of ‘write’, declared with attribute warn_unused_result The first by checking the return code and an appropriate error message, the second by "better" ignoring it (which is correct there!) ...
2010-04-09Only compile in Get_Error() if really neededAlexander Barton
This fixes "resolve.c:150: warning: ‘Get_Error’ defined but not used".
2010-04-02Updated some more copyright notices, it's 2010 already (part 2)Alexander Barton
Silly me forgot the most important place, the program output itself ...
2010-02-11Implement WEBIRC commandAlexander Barton
The WEBIRC command is used by some Web-to-IRC gateways to set the correct user name and host name of users instead of their own. Syntax: WEBIRC <password> <username> <hostname> <ip-address> The <password> must be set using the new configuration variable "WebircPassword" in the [Global] section of ngircd.conf. Please note that the <ip-address> is currently not used by ngIRCd (we don't store it in the CLIENT structure, only the resolved hostname).
2010-02-10Re-format Init_New_Client() functionAlexander Barton
2010-01-19Quote received messages of ERROR commands in log outputAlexander Barton
2010-01-17Implemented new "secure clients only" channel mode: +zAlexander Barton
Only clients using a SSL encrypted connection to the server are allowed to join such a channel. But please note three things: a) already joined clients are not checked when setting this mode, b) IRC operators are always allowed to join every channel, and c) remote clients using a server not supporting this mode are not checked either and therefore always allowed to join.
2010-01-16Clean up and document IRC_STATS() functionAlexander Barton
2010-01-16Clean up and document IRC_JOIN() and join_allowed() functionsAlexander Barton
2010-01-16Show our name (IRCD=ngIRCd) in ISUPPORT (005) numericAlexander Barton
Inspired by Hyperion IRC daemon.
2010-01-16Added missing modes to USERMODES #defineAlexander Barton
Now the numeric 004 correctly reports all the supported user and channel modes (user modes "r" and "w" were missing), e. g.: :a.irc.net 004 a a.irc.net ngircd-15 aiorsw biIklmnoPstv
2009-12-31setsockopt(): use IPPROTO_IP instead of SOL_IP to set IPTOS_LOWDELAYAlexander Barton
2009-12-30ReverseLookup(): fix documentation commentAlexander Barton
2009-12-30Move NewConnection handling from callbacks to New_Connection()Alexander Barton
2009-12-30Connection functions: add some more documentation commentsAlexander Barton
2009-12-30Clean up conn.{c|h} a little bitAlexander Barton
2009-11-07Remove limit on max number of configured irc operators.Florian Westphal
2009-10-17configtest: print ssl config options even when unsetFlorian Westphal
Print "SSLOptionVar =" instead of omitting the option when running --configtest with ssl enabled. This better matches the behaviour of other options, e.g. ChrootDir.
2009-09-30Make sure forwarded CONNECT commands are handled correctlyAlexander Barton
2009-09-30Generate WALLOPS message on operator-generated SQUITAlexander Barton
2009-09-30Enable SQUIT command for IRC OperatorsAlexander Barton
This patch enables IRC Operators to use the SQUIT command as specified in RFC 2812, section 3.1.8 "Squit". When forwarding SQUIT commands, the server connected to the target will drop the connection (not the target server itself!). Please note: - the configuration option "AllowRemoteOper" mus be enabled on the server disconnecting the target to allow forwarding of SQUIT commands. - if the remote server is configured to establish the connection, it will just do this; so the disconnect is not permanent in this case!
2009-09-30Use functions provided by op.c "module"Alexander Barton
Local functions Check_Oper() and No_Privileges() have been replaced by global functions in op.c "module": Op_Check() and Op_NoPrivileges().
2009-09-30New "module" op.c/op.h for IRC operator related functionsAlexander Barton
The new "module" op.c is used to implement functions related to IRC Ops. At the moment, these two functions are available: - Op_Check() to check for a valid IRC Op, and - Op_NoPrivileges() to generate "permission denied" messages.
2009-09-30Allow forwarding of CONNECT commands.Alexander Barton
The syntax of the CONNECT command now is: - CONNECT <server-id> - CONNECT <server-id> <port> - CONNECT <server-id> <port> <target> - CONNECT <server-id> <port> <host> <my-pwd> <peer-pwd> - CONNECT <server-id> <port> <host> <my-pwd> <peer-pwd> <target> Note: the configuration option "AllowRemoteOper" mus be enabled on the target server to allow forwarding of CONNECT commands.
2009-09-30Check_Oper(): check origin of forwarded messages instead of server.Alexander Barton
2009-09-30No_Privileges(): handle forwarded messages.Alexander Barton
2009-09-30IRC_SendWallops(): support format string and variable parameter lists.Alexander Barton
2009-09-30CONNECT, DISCONNECT: generate WALLOPS messagesAlexander Barton