From ab278aca29eebc23eb6538fb5060f51afb8dca86 Mon Sep 17 00:00:00 2001 From: "B. Watson" Date: Thu, 2 Apr 2026 03:57:58 -0400 Subject: Rewrite permute_nick() in asm. 5867 bytes free. --- src/irc.c | 22 +--------------------- 1 file changed, 1 insertion(+), 21 deletions(-) (limited to 'src/irc.c') diff --git a/src/irc.c b/src/irc.c index 2fdb8b8..9c2ccd8 100644 --- a/src/irc.c +++ b/src/irc.c @@ -363,27 +363,7 @@ static void do_mode(void) { do_catchall(0); } -/* permutes last character (doesn't add one), so for "Bob" you get: - Bo_, Bo1 through Bo9, BoA through BoZ - Gives a total of 36 replacement nicks to try. - Eventually we run out and start repeating, but by then the IRC - server will have disconnected us. - */ -static void permute_nick(void) { - static char *last; - - last = conf->nick + strlen(conf->nick) - 1; - - if((*last >= '1' && *last < '9') || (*last >= 'A' && *last < 'Z')) { - (*last)++; - } else { - switch(*last) { - case '_': *last = '1'; break; - case '9': *last = 'A'; break; - default: *last = '_'; break; - } - } -} +extern void permute_nick(void); /* see: https://defs.ircdocs.horse/ */ static void do_forward_chan(void) { -- cgit v1.2.3