Fork of https://bitbucket.org/mveety/irc7 with improved TLS support
git clone https://git.8pit.net/irc7.git
1.TH IRC 1 2.SH NAME 3ircsrv, irc \- internet relay chat client and ui 4.SH SYNOPSIS 5.B ircsrv 6[ 7.I -e 8] 9[ 10.I -t thumb 11] 12[ 13.I -c cert 14] 15[ 16.I -s service 17] 18[ 19.I -p port 20] 21[ 22.I -f file 23] 24[ 25.I -P pass 26] 27[ 28.I -n nickname 29] 30[ 31.I -r realname 32] 33.I server 34.br 35.B irc 36[ 37.I -S 38] 39[ 40.I -c charset 41] 42[ 43.I -t victim 44] 45[ 46.I -b lines 47] 48[ 49.I -n nick 50] 51[ 52.I -r file 53] 54[ 55.I /srv/serv 56[ 57.I /tmp/file 58]] 59.SH DESCRIPTION 60.I Ircsrv 61makes a connection to an irc server and reconnects if the connection 62gets broken. It posts a service to /srv and creates (if necessary) an 63append mode log file in /tmp. 64.PP 65The 66.I -e 67flag enables TLS. If you want to enable TLS you probably want to change 68the default TCP port as well, this can be done using the 69.I -p 70flag. If this flag is not specified the default port (6667) is being 71used. Besides changing the port you may also want to specify a thumbprint 72this thumbprint is used to check the TLS key presented by the server. See 73.IR thumbprint(6) 74for more information. The 75.I -c 76flag allows you to pass a certificate used to authenticate yourself 77with NickServ using CertFP. The certificate is presented to the server 78upon request. The 79.I -s 80flag changes the service name in /srv. By default the name is 81a concatenation of the username and the string 82.I irc 83\&. The same naming rules apply to the append mode log file created 84in /tmp, however the 85.I -f 86flag allows you to change the location of this file. If the 87.I -P 88flag is specified the given password is used to authenticate 89with the server. The 90.I -n 91flag is used to set the nickname, the default nickname is your 92username. Besides the 93.I -r 94flag allows you to change your realname. 95.PP 96.I Irc 97is a client program that makes use of the service provided by 98.I ircsrv 99and provides a user interface for sending and receiving100messages.101.PP102The command language understood by103.I irc104is as follows105.EX106/h this message107/H this message108/m privmsg #chan/nick message109/M mode #chan +nt110/j join [ #chan ]111/p part [ #chan ]112/q send parameters raw to the server113/l list [ #chan ]114/L names [ #chan ]115/n nick newnick116/N notice #chan/nick message117/t set [ victim ]118/T topic [ #chan [ newtopic ]]119/W whois nick120/w who nick (a shorter whois)121.EE122.PP123The124.I -c125flag sets character set conversion using126.IR tcs (1),127the128.I -r129flag will cause irc to replay the conversation from the raw file supplied as argument without user interaction,130the131.I -b132flag causes the client to display the last n lines of the default target or 133conversations if no target is set. Without any arguments134.I -b135prints the conversation from the very beginning. The flag136.I -S137prevents138.I irc139from enabling scrolling in the window by default. This should be used when run140in acme to prevent an error message. The141.I -t142flag sets the default target to which the messages are143sent by default if a line written to144.I irc145does not begin with /. Irc also prints messages to/from the target exclusively146if one is set. Irc prints only private messages if the target is set to "MSGS",147useful for being notified when a message is sent to your nick without148having to monitor all the status information.149.SH EXAMPLES150To start up ircsrv on a remote cpu server151.EX152cpu -c ircsrv glenda irc.freenode.net153.EE154.PP155To use ircsrv started earlier on a cpu server156.EX157import $cpu /srv158import $cpu /tmp159irc160.EE161.PP162To start/see/continue a conversation with a specific target (can be #chan or nick)163.EX164irc -t \'#plan9\'165irc -t f2f166.EE167.PP168To run irc within acme start irc inside 169"win -e":170.EX171win -e172irc -t f2f173.EE174.SH SOURCE175/sys/src/cmd/ircsrv.c176.br177/sys/src/cmd/irc.c178.SH SEE ALSO179.IR tcs (1),180.IR faces (1),181.IR nedmail (1)182.SH BUGS183Yes.