Commit Graph

176 Commits

Author SHA1 Message Date
Alexander Barton 2c2c93e311 Include "mcheck.h" when using mtrace(). 2008-08-18 23:27:56 +02:00
Alexander Barton c769cbecb6 Enable GNU libc "memory tracing" when compiled with debug code.
This patch lets ngIRCd activate "memory tracing" of the GNU libc when
compiled with debug code (configure: --enable-debug) and the functionality
is available on the system.
(http://www.gnu.org/software/libc/manual/html_node/Allocation-Debugging.html)
2008-08-13 16:00:57 +02:00
Alexander Barton dfc3de131c Make ngIRCd compile and run on NeXTSTEP 3.3 and OPENSTEP 4.2
by Steven D. Blackford <kb7sqi@aol.com>:

"I wanted to let you know that I've done a quick port of ngircd-0.12.0 for
NEXTSTEP3.3/OPENSTEP4.2. There wasn't a lot of changes required to get it
to compile clean, but I did make the necessary changes so that I didn't
have to use -posix flag. The NeXT has a pretty buggy POSIX implementation
so I always try to work around it. :-)
Anway, here's the changes required to get it to compile."
2008-08-01 16:21:16 +02:00
Jari Aalto 818a206a42 Add option aliases -V (for --version) and -h (for --help).
This patch adds -h and -V short options (to complement the usage).

It is based on a patch attached to Debian bug #466063, see
<http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=466063>.

Idea by Jari Aalto <jari.aalto@cante.net>,
patch adapted by Alexander Barton <alex@barton.de>.
2008-05-18 16:19:41 +02:00
ashemira@ucsd.edu 5cf5ba31eb Added Cygwin uid kludge. (verified working) 2008-05-08 13:04:25 +02:00
Alexander Barton 33b1204349 Get rid of cvs-version.* and CVSDATE definition.
(cherry picked from commit b187fac244f4e14705f882ba7c43eef0238e2830)
2008-04-25 00:14:11 +02:00
Alexander Barton a0efcdccfa Updated copyright notice to read "2001-2008". 2008-04-20 15:48:22 +02:00
Florian Westphal abb1abeb77 Do not exit unconditionally if config file cannot be opened
ngircd will exit if the config file cannot be opened. While
thats okay if ngircd starts up for the first time, it isn't
when we are re-reading the config file after a /REHASH or SIGHUP.
2008-03-26 21:31:13 +01:00
Florian Westphal feb31e4200 IPv6 support.
all references to struct sockaddr/in_addr have been
removed from src/ngircd.
libngipaddr (in src/ipaddr/) hides all the gory details.
See src/ipaddr/ng_ipaddr.h for API description.
2008-02-26 23:50:35 +01:00
Alexander Barton 47ca178a21 Introduce option to configure the maximum nick name lenth in ngircd.conf
- New configuration option "MaxNickLength" to specify the allowed maximum
  length of user nick names. Note: must be unique in an IRC network!
- Enhanced the IRC+ protocol to support an enhanced "server handshake" and
  enable server to recognice numeric 005 (ISUPPORT) and 376 (ENDOFMOTD).
  See doc/Protocol.txt for details.
2007-11-21 12:16:33 +00:00
Florian Westphal ad7361dfe0 if ngircd doesn't run chrooted, it tries to chdir
to the users working directory (as returned by getpwuid()).
Failing to chdir to that directory isn't an error; so
log with LOG_INFO and prefix the message with "Notice".
2007-11-15 01:03:01 +00:00
Alexander Barton 9f65979979 2007 :-) 2007-04-09 01:24:05 +00:00
Florian Westphal fa7bb2790a moved invite/ban lists to channel structure 2006-12-07 17:57:20 +00:00
Alexander Barton 47e581e453 Updated copyright notice ;-) 2006-07-23 12:07:33 +00:00
Alexander Barton dd3a3bc603 Use some more specific data types (e. g. pid_t vs. int), make "SPLint" happy :-) 2006-05-10 21:24:01 +00:00
Alexander Barton 0570e13cac Minor whitespace fixes. 2005-11-21 16:31:30 +00:00
Alexander Barton e899c75d7e Updated copyright notice. 2005-09-02 17:12:58 +00:00
Alexander Barton ac96fe5877 Changed log level of "Initialization failed" message from ERR to ALERT. 2005-08-25 08:48:43 +00:00
Alexander Barton 77f54693ef Removed unnecessary #define of "LOCAL", now use plain C "static" instead. 2005-07-31 20:13:07 +00:00
Florian Westphal c7693f625e s/strcpy/strlcpy/ 2005-07-10 21:07:22 +00:00
Alexander Barton 8916b201fa Only setuid()/setgid() if it differs from current UID/GID.
Solves problems with Cygwin.
2005-07-08 23:19:20 +00:00
Alexander Barton ead79d3e39 Use "ServerUID" (and not internal variable name) for error message. 2005-07-08 21:04:39 +00:00
Alexander Barton 02b0a51517 Renamed "Rendezvous" to "Zeroconf". 2005-07-08 16:18:38 +00:00
Florian Westphal 733ef4c815 removed Resolve_Init() 2005-07-07 18:37:36 +00:00
Alexander Barton de395db8e3 Get rid of Log_SetDaemonized(). 2005-06-24 19:55:10 +00:00
Florian Westphal dbea187373 removed global variable NGIRCd_NoDaemon 2005-06-24 19:20:56 +00:00
Florian Westphal 9dc5e50226 fix embarassing cut&paste error (add missing } ) 2005-06-17 23:17:09 +00:00
Florian Westphal c06c815c28 fix "Can't get user information for UID" error message 2005-06-17 23:13:41 +00:00
Florian Westphal 04169f34cf only chdir() to users home when running as daemon 2005-06-17 20:35:45 +00:00
Florian Westphal bc2dac3c74 startup: fork only once, never run with uid 0. 2005-06-17 18:22:45 +00:00
Alexander Barton 45404a1644 Added some Doxygen documentation. 2005-06-01 21:52:18 +00:00
Florian Westphal 8adff59223 Remove INT, LONG, BOOLEAN, STATIC, CONST, CHAR datatypes.
use stdbool.h / inttypes.h if available.
2005-03-19 18:43:48 +00:00
Alexander Barton ec30cd4e5f Whitespace fixes. 2005-02-11 13:52:37 +00:00
Alexander Barton f2fbf206b6 Don't play games with FILE* stdin/out/err, only touch "real" descriptors. 2005-02-10 16:55:52 +00:00
Alexander Barton 1fdd5478c6 Renamed NGIRCd_FillVersion() to Fill_Version(); Code cleanups. 2005-02-10 13:09:11 +00:00
Alexander Barton 9537542647 Write "error file" (/tmp/ngircd-XXX.err) only if compiled with debug
code ("--enable-debug") and running as daemon process.
2005-02-10 12:49:04 +00:00
Alexander Barton 894cd2cd68 Don't create version information string each time a client connects but
insetead on server startup. By Florian Westphal.
2005-02-09 09:52:58 +00:00
Alexander Barton 8edeed8418 Make sure that errno of fopen() isn't overwritten by the logging code. 2005-02-07 19:31:34 +00:00
Alexander Barton 112102b10c New configuration variable "PidFile", section "[Global]": if defined,
the server writes its process ID (PID) to this file. Default: off.
Idea by Florian Westphal, <westphal@foo.fh-furtwangen.de>.
2005-02-04 14:24:20 +00:00
Alexander Barton 18c92d9de7 We are in the year 2005 now! :-) 2005-01-26 22:03:15 +00:00
Alexander Barton 8ca1e4d548 If ServerUID is defined change the working directory to the home directory
of this user.
2004-09-04 20:28:51 +00:00
Alexander Barton 3012c232eb Fixed resolver when using IDENT lookups, cleaned up code. 2004-05-11 00:01:11 +00:00
Alexander Barton 7281b8dd4d New "chroot" feature (from Benjamin Pineau), introducing new configuration
variables "ChrootDir" and "MotdPhrase".
2004-05-07 11:19:20 +00:00
Alexander Barton e9b0ec9148 Removed some debug code; translated some source code comments. 2004-01-19 21:54:59 +00:00
Alexander Barton 6cafa16a56 Fixed order of #include's: time.h moves up! ;-) 2004-01-17 03:15:45 +00:00
Alexander Barton f645e5b62e Adjusted copyright notice to include 2004. 2004-01-02 19:23:30 +00:00
Alexander Barton c9ccb66944 Added new short command line option "-t" as alternative to "--configtest". 2003-12-29 14:53:26 +00:00
Alexander Barton cb6279f102 Added IDENT option to version string. 2003-12-27 13:09:24 +00:00
Alexander Barton c40592d2ce Removed "USE_" prefixes of configuration #defines. 2003-12-26 15:55:07 +00:00
Alexander Barton 9a009b24da Fixed a compiler warning related to an unnecessary assert(). 2003-06-05 10:48:13 +00:00
Alexander Barton 62796722f1 Changed all PACKAGE's to PACKAGE_NAME and all VERSION's to PACKAGE_VERSION. 2003-03-31 15:54:21 +00:00
Alexander Barton 24df40eca7 Synchronize server connections with server configurations after reloading the configuration. 2003-03-27 01:22:44 +00:00
Alexander Barton 4a5b3f34a5 Enlarged buffer for version string ;-) 2003-03-07 14:50:13 +00:00
Alexander Barton 439c945d56 Added support for TCP Wrappers. 2003-03-07 14:35:52 +00:00
Alexander Barton 29bd35bc4f - Added optional support for Rendezvous. 2003-02-23 12:04:05 +00:00
Alexander Barton 5e3e3ad445 - Adjusted copyright banner to include 2003 :-) 2003-01-01 13:32:23 +00:00
Alexander Barton a2544e496c - Cleaned up handling of server configuration structures. 2002-12-30 00:01:42 +00:00
Alexander Barton 695631b298 - replaced a lot of strcpy() calls with strlcpy() which is more secure. 2002-12-26 17:04:54 +00:00
Alexander Barton 6626395c88 - replaced a lot of strcat() calls with strlcat() which is more secure. 2002-12-26 16:48:14 +00:00
Alexander Barton 0ced4181b0 - replaced all strncpy()'s and strncat()'s with strlcpy() and strlcat(). 2002-12-26 16:25:43 +00:00
Alexander Barton 3c738ed46d - definition of CONFIG_FILE and MOTD_FILE is now compatible with -Wtraditional. 2002-12-26 13:17:56 +00:00
Alexander Barton 43a4bc5b8b - New signal handler. 2002-12-19 04:29:59 +00:00
Alexander Barton 0f3f03b51d - fixed up broken $Id field in new file header ... 2002-12-12 11:31:21 +00:00
Alexander Barton fa7b3f0e4c - new file header format. 2002-12-12 11:30:23 +00:00
Alexander Barton 65f3adca21 - Unterstuetzung fuer komprimierte Server-Server-Links implementiert. 2002-11-26 23:07:24 +00:00
Alexander Barton cf2d479437 - NGIRCd_Reload() in NGIRCd_Rehash() umbenannt. 2002-11-22 23:31:23 +00:00
Alexander Barton e311cc0140 - Listen-Sockets werden ueber neue Funktion Conn_InitListeners() erzeugt.
- neue Funktion NGIRCd_Reload().
- Logging bei empfangenen Signalen verbessert.
- SIGHUP ruft nun NGIRCd_Reload() auf.
2002-11-22 17:59:43 +00:00
Alexander Barton 1c0ded41af - Rechtschreibfehler korrigiert ;-) 2002-11-18 18:49:34 +00:00
Alexander Barton 70c9c05153 - User und Gruppe werden nun sowohl numerisch als auch namentlich angezeigt. 2002-11-10 13:38:41 +00:00
Alexander Barton c7b55aa6f4 - verwendete Datentypen aufgeraumt: beispielsweise INT32 ist nun oft ein LONG. 2002-10-09 16:53:02 +00:00
Alexander Barton 25f32ce8b8 - bei CVS-Versionen wird nun das Datum der letzten CVS-Aenderung angezeigt,
Versionsnummer entsprechend angepasst.
2002-10-07 21:16:12 +00:00
Alexander Barton 74ff9828de - kleinere "code cleanups". 2002-10-03 21:49:59 +00:00
Alexander Barton 14cbca87c8 - IRC+-Protokoll ist nun abschaltbar; Versionsstring angepasst. 2002-09-07 17:57:17 +00:00
Alexander Barton 1c668252c9 - IRC+-Protokoll-Flags erweitert. 2002-09-03 23:53:19 +00:00
Alexander Barton ad1cbe34b4 - Anpassungen/Umstellung auf IRC+-Protokoll. 2002-09-03 20:39:54 +00:00
Alexander Barton c76e6769db - Server-Flag "o" ("OperCanUseMode") implementiert. 2002-09-02 21:06:11 +00:00
Alexander Barton 65b31ffbb2 - NGIRCd_ProtoID (Protokoll- und Server-ID) wird erzeugt. 2002-09-02 19:00:25 +00:00
Alexander Barton b788a3daa5 - Pre-defined Channels werden spaeter erzeugt. 2002-06-02 17:13:33 +00:00
Alexander Barton 9ec32d15ab - die "umask" des Servers wird nun auf 077 gesetzt;
- Hauptschleife geaendert.
2002-06-02 17:01:21 +00:00
Alexander Barton f7327524fc - Weitere Anpassungen an pre-ANSI-Compiler. 2002-05-30 16:52:20 +00:00
Alexander Barton ba258e65a0 - Anpassungen an pre-ANSI-Compiler. 2002-05-27 13:00:50 +00:00
Alexander Barton 991da8ea2f - der Sniffer (--sniffer) aktiviert nun automatisch den Debug-Modus mit. 2002-05-18 12:20:02 +00:00
Alexander Barton f73e403ae5 - Test auf POSIX Regular-Expression-Funktionen eingebaut. 2002-04-24 13:33:56 +00:00
Alexander Barton 75c0bd250e - stdlib.h wird nun includiert. 2002-04-04 13:03:55 +00:00
Alexander Barton 5b27e491d4 - URL der Homepage zu Versionstext hinzugefueht (aus branch-0-4-x). 2002-04-01 17:05:48 +00:00
Alexander Barton 85aad86906 - Kommandozeilen-Option "-f" wurde falsch geparsed. 2002-03-31 13:20:42 +00:00
Alexander Barton fe06f6e990 - Error-Log wird nach User-Wechsel mit Log_InitErrorfile() initialisiert.
- Einige Tippfehler korrigiert ...
2002-03-29 23:34:18 +00:00
Alexander Barton 07c3e62e11 - der Daemon kann nun seine UID und GID wechseln. 2002-03-29 22:56:40 +00:00
Alexander Barton 1c00ddffec - das Error-File wird nun komplett durch das Log-Modul verwaltet, der
Dateiname enthaelt nun die PID: so koennen mehrere Instanzen laufen.
2002-03-29 20:59:22 +00:00
Alexander Barton 72accd4ee5 - neuer Kommandozeilen-Parameter "--config"/"-f". 2002-03-28 14:15:33 +00:00
Alexander Barton a89dc54690 - neuer Kommandozeilen-Parameter "--configtest": gibt die verwendete Server-
Konfiguration aus. Diesbezuegliche Ausgaben bei "--help" sind entfallen.
2002-03-27 16:41:25 +00:00
Alexander Barton 95a4b1b158 - einige Anpassungen nach Code-Check mit SPLint ;-) 2002-03-25 19:11:01 +00:00
Alexander Barton 882c91280e - Versions-String um "Vendor" erweitert. 2002-03-12 22:08:24 +00:00
Alexander Barton 7049b60af4 - der System-Typ wird nun wieder korrekt ermittelt und verwendet. 2002-03-12 15:19:12 +00:00
Alexander Barton ca33cbda05 - externe portab-Header werden nicht mehr benoetigt/benutzt, dadurch
einige Aenderungen an diversen Source-Dateien und Headern.
- Dateien enthalten keine CVS-History mehr.
2002-03-12 14:37:51 +00:00
Alexander Barton d67d94ea04 - Handling von "--version" und "--help" nochmal geaendert ... 2002-03-10 17:50:48 +00:00
Alexander Barton 0903e7763c - bei "ngircd --version" werden nun die eincompilierten Pfade angezeigt. 2002-03-10 17:45:41 +00:00
Alexander Barton fe2bc90e45 - stderr wird nun in eine Datei umgelenkt (ngircd.err). Wenn der Server
nicht im Debug-Modus laeuft, so wird diese bei Programmende geloescht.
2002-03-06 15:36:04 +00:00
Alexander Barton fc186d77c1 - ueberfluessige Init- und Exit-Funktionen entfernt. 2002-02-27 23:24:29 +00:00
Alexander Barton 62266a8d46 - wenn ein System sigaction() nicht kennt, so wird nun signal() verwendet. 2002-02-25 11:42:47 +00:00