Hallo!
Soeben habe ich ngIRCd 0.5.4 freigegeben.
Änderungen seit 0.5.3:
- Fehler-Handling von connect() gefixed: der Server kann sich nun auch
unter A/UX wieder zu anderen verbinden.
- in den Konfigurationsvariablen ServerUID und ServerGID kann nun
nicht
nur die numerische ID, sondern auch der Name des Users bzw. der
Gruppe
verwendet werden. Beim Start des Daemons wird nun beides angezeigt.
- Besseres Logging von Prefix-Fehlern.
- angenommene Sockets werden nun korrekt auf "non-blocking"
konfiguriert,
beim Senden und Empfangen werden Blockierungen besser abgefangen.
- RPL_UMODEIS hat Code 221, nicht 211 ... *argl*
- select() in Try_Write() hat falschen (keinen!) Timeout verwendet;
die "Zeit-Aufloesung" des Servers sind zudem nun 2 Sekunden
(TIME_RES).
Insgesamt sollte die Reaktionszeit des Server nun besser sein.
Download:
- HTTP: <http://download.berlios.de/ngircd/ngircd-0.5.4.tar.gz
- FTP: <ftp://arthur.ath.cx/pub/Users/alex/ngircd/ngircd-0.5.4.tar.gz>
Patch von 0.5.3 auf 0.5.4:
- FTP:
<ftp://arthur.ath.cx/pub/Users/alex/ngircd/ngircd-0.5.3-0.5.4.patch.gz>
Grüße
Alex
--
Alexander Barton, Freiburg, Germany
http://www.barton.de/, alex(a)barton.de
Hallo zusammen!
- select() in Try_Write() hat falschen (keinen!) Timeout verwendet;
die "Zeit-Aufloesung" des Servers sind zudem nun 2 Sekunden (TIME_RES).
Insgesamt sollte die Reaktionszeit des Server nun besser sein.
"Zeit-Aufloesung" bedeutet: mindestens alle diese TIME_RES Sekunden, also im
Moment alle 2 Sekunden, prueft der Server, ob PINGs gesendet werden muessen,
ob Server (neu) connectiert werden muessen, ob irgend welche andere Timeouts
aufgetreten sind. Wenn Netz-Aktivitaet vorhanden ist, geschieht dies ggf.
frueher, d.h. das Interval ist zwischen 0 und TIME_RES Sekunden.
Gruesse
Alex
--
Alexander Barton, Freiburg, Germany
alex(a)barton.de, http://www.barton.de/
Folgende Erweiterung habe ich gerade in CVS-HEAD eingespielt:
- Der Server kann nun zur Laufzeit die Konfiguration neu einlesen:
dies
macht er nach dem Befehl RELOAD oder wenn ein HUP-Signal empfangen
wird.
Grüße
Alex
--
Alexander Barton, Freiburg, Germany
http://www.barton.de/, alex(a)barton.de
Änderungen in CVS-HEAD und branch-0-5-x:
- RPL_UMODEIS hat Code 221, nicht 211 ... *argl*
Faszinierend, daß das noch niemandem aufegallen ist. Das ist der
Status-Code, den der Server als Antwort für eine MODE-Abfrage für einen
Client zurück sendet ...
Grüße
Alex
--
Alexander Barton, Freiburg, Germany
http://www.barton.de/, alex(a)barton.de
Hi zusammen!
- angenommene Sockets werden nun korrekt auf "non-blocking"
konfiguriert,
beim Senden und Empfangen werden Blockierungen besser abgefangen.
Mit den "non-blocking" Sockets bestand da wohl noch ein gewisses
(hüstel) Problem. Fix ist in CVS-HEAD und branch-0-5-x ... hoffentlich
stimmer er so auch ;-)
Grüße
Alex
--
Alexander Barton, Freiburg, Germany
http://www.barton.de/, alex(a)barton.de
In CVS-HEAD und dem bvranch-0-5-x:
- Besseres Logging von Prefix-Fehlern.
Grüße
Alex
--
Alexander Barton, Freiburg, Germany
http://www.barton.de/, alex(a)barton.de
Hallo zusammen!
Neu in CVS-HEAD:
- unter HP-UX definiert das configure-Script nun _XOPEN_SOURCE_EXTENDED.
Dies ist offenbar für HP-UX 11.11 erforderlich ...
- Server identifizieren sich nun mit asyncronen Passwoertern, d.h. das
Passwort, welches A an B schickt, kann ein anderes sein als das,
welches B als Antwort an A sendet. In der Konfig.-Datei, Abschnitt
"Server", wurde "Password" dazu durch "MyPassword" und "PeerPassword"
ersetzt.
Bisher wurden Server-Paßwörter im Abschnitt [Server] mit der Variablen
"Password" konfiguriert. Durch diesen Patch müssen nun zwei Paßwörter
konfiguriert werden: das des eigenen Servers und das des "Peers": dazu
gibt es die beiden neuen Variablen "MyPassword" und "PeerPassword".
Server "A.server" Server "B.server"
Bisher: [Server] [Server]
Host=a.server.netHost=b.server.net
Name=A.server Name=B.server
Password=ThePwd Password=ThePwd
Neu: [Server] [Server]
Host=a.server.netHost=b.server.net
Name=A.server Name=B.server
MyPassword=ServerAPwd MyPassword=ServerBPwd
PeerPassword=ServerBPwd PeerPassword=ServerAPwd
Um die bisherige Semantik zu emulieren kann man einfach "MyPassword" und
"PeerPassword" auf den selben Wert setzen. Das ist jedoch NICHT
empfohlen, dieses Verfahren ist nicht "sicher":
Grund: Sendet "mein" Server A mein Passwort an den unbekannten Server B,
so kann dieser einfach mein Passwort, welches er gerade empfangen hat,
wieder an mich zurück schicken und ist authentifiziert. Nur mit
asyncronen Paßwörtern kann mein Server sein Gegenüber validieren.
Grüße
Alex
neu in CVS-HEAD:
- Fehler-Handling von connect() gefixed: der Server kann sich nun auch
unter A/UX wieder zu anderen verbinden. Prinzipiell ist der Fehler
auch
auf anderen Platformen vorhanden, greift dort aber nicht ...
- Dokumentation fuer A/UX ueberarbeitet.
Grüße
Alex
--
Alexander Barton, Freiburg, Germany
http://www.barton.de/, alex(a)barton.de
Ilja hat mir eine übersetzte Version der sample-ngircd.conf geschickt. Ich
habe diese ins Verzeichnis doc/en aufgenommen.
Vielen Dank!
Grüße
Alex
--
Alexander Barton, Freiburg, Germany
alex(a)barton.de, http://www.barton.de/
Updates in HEAD:
- in ServerUID und ServerGID kann nun nicht nur die numerische ID, sondern
auch der Name des Users bzw. der Gruppe verwendet werden.
Grüße
--
Alexander Barton, Freiburg, Germany
alex(a)barton.de, http://www.barton.de/