Commits
- Commit:
d93030ad27af9cd6a807de8f672ae73ec0e1dff8
- From:
- Alexander Barton <alex@barton.de>
- Date:
Make real use of the CLIENT_SERVICE client type.
This patch enables ngIRCd to handle IRC services as real services, and not
as "fake users":
- Set correct client type CLIENT_SERVICE for services,
- Change log messages to include correct client type,
- PRIVMSG: allow users to send messages to services,
- Send services nick names to other servers (as users).
Please note that this patch doesn't announce services as services in the
network, but as regular users (as before). Only the local server knows
of services as services (see LUSERS command, for example). It is up to
one of the next patches to fix this and to introduce the SERVICE command
in server to server communication.
The propagation of services as regular users between servers doesn't limit
the functionality of the IRC services and will be the fallback for servers
that don't support "real" services propagation in the future.
- Commit:
4e125fb67cf9d00a9da0bf4602a4e5c0745bf282
- From:
- Alexander Barton <alex@barton.de>
- Date:
Allow IRC services to change their nick names.
- Commit:
33f32dbd6707f15374ca626f036ab7ada9dbb112
- From:
- Alexander Barton <alex@barton.de>
- Date:
New function Client_TypeText() and Destroy_UserOrService().
Client_TypeText() is used to get correct naming ("Client", "Service", ...)
for log messages, and Destroy_UserOrService() is used to correctly destroy
user and services clients.
- Commit:
74aac88dbf674979795a90f855f96883b43d18e6
- From:
- Alexander Barton <alex@barton.de>
- Date:
Send_Message(): really enforce target client type.
- Commit:
0337b1ac1e128661b81901bdf2384e4ee51fa0df
- From:
- Alexander Barton <alex@barton.de>
- Date:
sample-ngircd.conf & ngircd.conf(5): document "ServiceMask" option.
- Commit:
02d76230743a63d29800afc4d2f1f2473e624793
- From:
- Alexander Barton <alex@barton.de>
- Date:
Allow ngIRCd to detect services connected to an "virtual services server".
Introduce a new configuration variable "ServiceMask" in SERVER blocks to
define a mask matching nick names that should be treated as services.
Regular servers don't need this parameter (leave it empty, the default),
but you should set it to "*Serv" when connection ircservices, for example.
This patch allows ngIRCd to detect services, it doesn't change the
functionality: you only get different log messages ;-)
- Commit:
c5342fb4670387fb7f7335e36ac3260c1e8ab514
- From:
- Alexander Barton <alex@barton.de>
- Date:
Centralize logging functions in Introduce_Client().
- Commit:
557be8c56b652751a1797f1ac1365f1ace38146a
- From:
- Alexander Barton <alex@barton.de>
- Date:
Get rid of INTRO_INFO structure again: we don't need it at all!
All the required information is already stored in the CLIENT structure
of new new connection, so pass this to Introduce_Client() and don't
invent an unneeded new structure ...
- Commit:
687784d276feecf3c87735eef180b7df61852823
- From:
- Alexander Barton <alex@barton.de>
- Date:
Announce_User(): support RFC 1459 compatibility mode.
- Commit:
92603f7c809c79f442edfd3413a5be7906d1eacb
- From:
- Alexander Barton <alex@barton.de>
- Date:
Introduce_Client(): send MODES in RFC 1459 mode, too.
- Commit:
d070ec08ab92cb60f6d0cb7375cebfc747c1ec0f
- From:
- Alexander Barton <alex@barton.de>
- Date:
numeric.c: whitespace fixes ...
- Commit:
a60465be3ec6e6960a981c5e2c21846839359653
- From:
- Alexander Barton <alex@barton.de>
- Date:
Server links: detect RFC 1459 mode direct after SERVER command
This patch allows ngIRCd to detect right after receiving the SERVER command
from the peer whether the RFC 1459 compatibility mode must be used or not.
And it fixes the announcement of users during establishing new server links
with such peers.
- Commit:
14048c471757ad63c9ca6aab38877bf4579a5062
- From:
- Alexander Barton <alex@barton.de>
- Date:
Send and handle NICK+USER commands for user registration (RFC 1459).
This patch enables ngIRCd to deal with NICK and USER commands following
RFC 1459 to register new clients, and to send these commands instead of one
full NICK command as specified in RFC 2813 on connections that are in RFC
1459 compatibility mode.
Can be useful for e. g. IRC services that simulate a RFC 1459 server.
- Commit:
f199d637246fcd64ebf44b12ffa89fc1375e0665
- From:
- Alexander Barton <alex@barton.de>
- Date:
New function IRC_WriteStrServersPrefixFlag_CB() using a callback function.
- Commit:
4f759d811347a578624dde37462b9a056cca0720
- From:
- Alexander Barton <alex@barton.de>
- Date:
New function Introduce_Client() to announce new local and remote users.
- Commit:
6bc2d3d06e9cb4da68ea4b63d9b6b219d88ab927
- From:
- Alexander Barton <alex@barton.de>
- Date:
New connection option CONN_RFC1459.
This new connection option CONN_RFC1459 indicates that the peer on this
link only supports the IRC protocol as defined in RFC 1459 and that the
compatibility mode (e. g. for outgoing commands like NICK) should be used.
- Commit:
a5735f68d7dd8cc7b106e0183b44002785dd8425
- From:
- Alexander Barton <alex@barton.de>
- Date:
New global function Conn_SetOption().
- Commit:
13f1d57e84c0c95876d69bde3b9990fb6c9ebaeb
- From:
- Alexander Barton <alex@barton.de>
- Date:
USER: servers and services can alter user information after registration.
This is required to do RFC 1459 style user registration on server links,
and is used by some services packages, too. See RFC 1459 section 4.1.3.
- Commit:
068d43352d98ca584af944c70a87134c28880c0e
- From:
- Alexander Barton <alex@barton.de>
- Date:
NICK: allow servers and services to use RFC 1459 syntax (2 parameters).
This patch allows servers and services to call the NICK command using the
syntax defined in RFC 1459 to register new users, with only two parameters.
See section 4.1.2.
Useful for some services packages, which emulate this protocol.
- Commit:
e56bd8ff89b224ba9d78dee69587643be909605b
- From:
- Alexander Barton <alex@barton.de>
- Date:
Whitespace fixes: remove trailing tabulator characters.
- Commit:
2fce881d969402642cffff1ee336a37dd404b212
- From:
- Florian Westphal <fw@strlen.de>
- Date:
conn-ssl.c: don't append a newline to ConnSSL_GetCipherInfo
- Commit:
ef3327d372c159bd2a395d6854843982a5e9c54d
- From:
- Florian Westphal <fw@strlen.de>
- Date:
TLS/SSL support: code changes.
This adds the required code to enable ssl/tls support
during compile and run time, respectively.
- Commit:
ebf5edfd8788037c39818461d09874a851b845fc
- From:
- Florian Westphal <fw@strlen.de>
- Date:
TLS/SSL support: documentation.
- Commit:
bdd44eb0ab7e6ee080989c672ce6deeffae987c2
- From:
- Florian Westphal <fw@strlen.de>
- Date:
TLS/SSL support: core files.
Contains support for both OpenSSL and GNU TLS.
Certificate Authentification is not yet supported.
- Commit:
c997e043259af2663f40349490729668c7b61256
- From:
- Florian Westphal <fw@strlen.de>
- Date:
Fix handling of MaxConnections option
Config option claimed to be 'number of connections' but in reality this
was treated as 'largest file descriptor allowed'.
This also fixes another bug in New_connection, where the
ng_ipaddr_tostr_r error path was missing a return statement.