405 |
|
} |
406 |
|
|
407 |
|
/* |
408 |
< |
** register_local_user |
409 |
< |
** This function is called when both NICK and USER messages |
410 |
< |
** have been accepted for the client, in whatever order. Only |
411 |
< |
** after this, is the USER message propagated. |
412 |
< |
** |
413 |
< |
** NICK's must be propagated at once when received, although |
414 |
< |
** it would be better to delay them too until full info is |
415 |
< |
** available. Doing it is not so simple though, would have |
416 |
< |
** to implement the following: |
417 |
< |
** |
418 |
< |
** (actually it has been implemented already for a while) -orabidoo |
419 |
< |
** |
420 |
< |
** 1) user telnets in and gives only "NICK foobar" and waits |
421 |
< |
** 2) another user far away logs in normally with the nick |
422 |
< |
** "foobar" (quite legal, as this server didn't propagate |
423 |
< |
** it). |
424 |
< |
** 3) now this server gets nick "foobar" from outside, but |
425 |
< |
** has alread the same defined locally. Current server |
426 |
< |
** would just issue "KILL foobar" to clean out dups. But, |
427 |
< |
** this is not fair. It should actually request another |
428 |
< |
** nick from local user or kill him/her... |
429 |
< |
*/ |
408 |
> |
* register_local_user |
409 |
> |
* This function is called when both NICK and USER messages |
410 |
> |
* have been accepted for the client, in whatever order. Only |
411 |
> |
* after this, is the UID message propagated. |
412 |
> |
* |
413 |
> |
* 1) user telnets in and gives only "NICK foobar" and waits |
414 |
> |
* 2) another user far away logs in normally with the nick |
415 |
> |
* "foobar" (quite legal, as this server didn't propagate |
416 |
> |
* it). |
417 |
> |
* 3) now this server gets nick "foobar" from outside, but |
418 |
> |
* has alread the same defined locally. Current server |
419 |
> |
* would just issue "KILL foobar" to clean out dups. But, |
420 |
> |
* this is not fair. It should actually request another |
421 |
> |
* nick from local user or kill him/her... |
422 |
> |
*/ |
423 |
|
void |
424 |
|
register_local_user(struct Client *source_p) |
425 |
|
{ |