CINXE.COM

Proxy IRC client and ICB server

<!-- https://www.benzedrine.ch/icbirc.html I get up at 5 in the morning, I fight traffic, I bust my hump all day, then I fight traffic again, then I pay my taxes - The End - Jack Arnold, The Wonder Years //--> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <meta name="description" content="Proxy IRC client and ICB server"> <meta name="keywords" content="ICB, IRC, client, server, proxy, chat, protocol"> <meta name="author" content="Daniel Hartmeier"> <meta name="robots" content="index, follow"> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <link rel="canonical" href="https://www.benzedrine.ch/icbirc.html"> <title>Proxy IRC client and ICB server</title> </head> <body text="#000000" bgcolor="#FFFFFF" link="#1919C0" vlink="#101030" alink="#FE0000"> <table width="100%"><tr><td> <table><tr><td valign=top height="62"> <img src="/logo.jpg" alt="[benzedrine.ch logo]"><br> </td></tr></table> </td></tr><tr><td> <table> <tr><td valign=top> <table cellspacing=2 cellpadding=1 border=0 width=175> <tr><td bgcolor="#C8C8FF" align=center><b>Contents</b></td></tr> <tr><td bgcolor="#F0F0FF"><a href="/index.html">Home</a></td></tr> <tr><td bgcolor="#F0F0FF"><a href="/dhartmei.html">Daniel Hartmeier</a></td></tr> <tr><td bgcolor="#F0F0FF"><a href="/pf.html">Packet Filter</a></td></tr> <tr><td bgcolor="#F0F0FF"><a href="/pfstat.html">pfstat</a></td></tr> <tr><td bgcolor="#F0F0FF"><a href="/mailinglist.html">Mailing list</a></td></tr> <tr><td bgcolor="#F0F0FF"><a href="/relaydb.html">Annoying spammers</a></td></tr> <tr><td bgcolor="#F0F0FF"><a href="/ackpri.html">Prioritizing ACKs</a></td></tr> <tr><td bgcolor="#F0F0FF"><a href="/transquid.html">Transparent squid</a></td></tr> <tr><td bgcolor="#E0E0FF"><a href="/icbirc.html">Proxy ICB/IRC</a></td></tr> <tr><td bgcolor="#F0F0FF"><a href="/milter-regex.html">milter-regex</a></td></tr> <tr><td bgcolor="#F0F0FF"><a href="/milter-spamd.html">milter-spamd</a></td></tr> <tr><td bgcolor="#F0F0FF"><a href="/milter-checkrcpt.html">milter-checkrcpt</a></td></tr> <tr><td bgcolor="#F0F0FF"><a href="/yubikey.html">login_yubikey</a></td></tr> <tr><td bgcolor="#F0F0FF"><a href="/dorabella.html">Dorabella</a></td></tr> <tr><td bgcolor="#F0F0FF"><a href="/tron.html">Tron</a></td></tr> <tr><td bgcolor="#F0F0FF"><a href="/planetwars.html">Planet Wars</a></td></tr> <tr><td bgcolor="#F0F0FF"><a href="/hexiom.html">Hexiom solver</a></td></tr> <tr><td bgcolor="#F0F0FF"><a href="/3D-ODRPP.html">3D-ODRPP</a></td></tr> <tr><td bgcolor="#F0F0FF"><a href="/polygon-partition.html">Polygon partition</a></td></tr> <tr><td bgcolor="#F0F0FF"><a href="/grid-puzzle.html">Mikero's grid puzzle</a></td></tr> <tr><td bgcolor="#F0F0FF"><a href="/darkstar.html">Dark Star</a></td></tr> <tr><td bgcolor="#F0F0FF"><a href="/misc.html">Misc</a></td></tr> <tr><td bgcolor="#F0F0FF"><a href="/statistics.html">Statistics</a></td></tr> </table><br> </td><td valign=top> <table width=25><tr><td><br></td></tr></table> </td><td valign=top bgcolor="#F0F0FF" width="100%"> <!--------------------------------------------------------------- --> <h2>Proxy IRC client and ICB server</h2><p> <h3>Introduction</h3> You probably know what <a href="http://www.irchelp.org/irchelp/new2irc.html">IRC</a> is, but <a href="http://www.icb.net/_jrudd/icb/history.html">ICB</a>?<p> &nbsp;&nbsp;&nbsp;<b>icb</b>, <i>n</i>. Internet citizen's band, an obscure teleconferencing system used primarily by alumni of certain universities.<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;(also called Internet CB or International CB)<p> <h3>Man page</h3> <pre> ICBIRC(8) OpenBSD System Manager's Manual ICBIRC(8) NAME icbirc - proxy IRC client and ICB server SYNOPSIS icbirc [-d] [-l listen-address] [-p listen-port] [-s server-name] [-P server-port] DESCRIPTION icbirc is a proxy that allows to connect an IRC client to an ICB server. The proxy accepts client connections, connects to the server, and for- wards data between those two connections. Commands from the IRC client are translated to ICB commands and forwarded to the ICB server. Messages from the ICB server are translated to IRC messages and forwarded to the IRC client. The options are as follows: -d Do not daemonize (detach from controlling terminal) and produce debugging output on stdout/stderr. -l listen-address Bind to the specified address when listening for client connections. If not specified, connections to any address are accepted. -p listen-port Bind to the specified port when listening for client connections. Defaults to 6667 when not specified. -s server-name Hostname or numerical address of the ICB server to connect to. -P server-port Port of the ICB server to connect to. Defaults to 7326 when not specified. Example: $ icbirc -s default.icb.net IRC (Internet Relay Chat) and ICB (Internet Citizen's Band) are two sepa- rate chat protocols. ICB is an older and simpler protocol, basically a subset of IRC. The two most significant differences (from the client's perspective) are: An ICB client can only join a single channel (called group). Joining a second channel automatically parts the first channel. An ICB channel can only have a single operator (called moderator). Giv- ing operator status to a second client automatically removes operator status from the first client. SUPPORTED COMMANDS icbirc supports the following IRC commands: PASS Set the default group, used during login. NICK Set or change nickname. USER Supply additional user information (like ident), used dur- ing login. LIST List all groups. WHOIS Shows information about a user. WHO Lists matching users. Arguments starting with '#' are in- terpreted as channel names (listing all users in the speci- fied channel), anything else is used for a simple string search within users' 'nick!ident@host'. JOIN Join a group. PRIVMSG Send an open or personal message. NOTICE Same as PRIVMSG. TOPIC Set group topic. KICK nick Boot nick from group. MODE +o nick Pass moderation to nick. QUIT Close client and server connection, wait for next client connection. Additionally, the command RAWICB can be used to send custom ICB commands. The proxy automatically prefixes the correct command length and replaces commas with ICB argument separators. For example: RAWICB hm,nick,msg Send msg to nick. SEE ALSO Internet Relay Chat Protocol, RFC 1459. Internet Relay Chat: Client Protocol, RFC 2812. Internet Relay Chat: Channel Management, RFC 2811. ICB Protocol, ftp://ftp.icb.net/pub/icb/src/icbd/Protocol.html. The History of ICB, http://www.icb.net/history.html. General guide to Netiquette on ICB, http://www.icb.net/_jrudd/icb/netiquette.html. HISTORY The first version of icbirc was written in 2003. AUTHORS Daniel Hartmeier &lt;daniel@benzedrine.ch&gt; CAVEATS ICB is not IRC. Depending on the ICB community on a particular server, netiquette rules vary greatly from common IRC rules (or lack thereof). Client scripts or other forms of automated client actions might generate noise or violate ICB community policies, and lacking support for some commands might confuse the script. Clients should be properly configured and tested on a dedicated server before connecting to a public server. In particular, WHOIS and WHO filtering is done on the proxy. Each such request causes the proxy to fetch the entire user list from the ICB serv- er (there are no ICB commands that take filters), hence automatic WHOIS requests from the IRC client can cause unwanted load on the ICB server (turn off 'WHOIS on JOIN' in the IRC client, if enabled). BUGS On ICB, a moderator (channel operator) can leave the group (channel) and rejoin later, preserving his status, as compared to IRC, where the chan- nel would be left operator-less in this case. The proxy does not cur- rently detect the operator status on rejoin in this case, and the IRC client will (temporarily) show the channel op-less. IPv6 is not supported yet. OpenBSD 3.4 Aug 6, 2003 3 </pre> <h3>Screenshot</h3> There are many IRC clients, I myself like <a href="http://www.xchat.org/">xchat</a>. The whole point of the proxy is that you can use whatever client you like. Tested with xchat, ircII, BitchX and mIRC. irssi works, too, with option lag_max_before_disconnect 0.<p> <img src="/icbirc.png" alt="[xchat screenshot]"><p> <h3>Sources</h3> <ul> <li><a href="/icbirc-2.2.tar.gz">icbirc-2.2.tar.gz</a> source tarball <i>MD5 a46f5099b1968fa9e38af1b922e6f783</i> <a href="icbirc-2.2.tar.gz.asc">GPG signature</a><br> <li><a href="/icbirc-2.1.tar.gz">icbirc-2.1.tar.gz</a> source tarball <i>MD5 f6efbe0cf8b3e4315a703ff1f7d9c209</i> <a href="icbirc-2.1.tar.gz.asc">GPG signature</a><br> <li><a href="/icbirc-2.0.tar.gz">icbirc-2.0.tar.gz</a> source tarball <i>MD5 64a983b6b24aa4310c4ec8f32d125579</i> <a href="icbirc-2.0.tar.gz.asc">GPG signature</a><br> <li><a href="/icbirc-1.9.tar.gz">icbirc-1.9.tar.gz</a> source tarball <i>MD5 ca1b4598f007c9eef5551394470a4977</i> <a href="icbirc-1.9.tar.gz.asc">GPG signature</a><br> <li><a href="/icbirc-1.8.tar.gz">icbirc-1.8.tar.gz</a> source tarball <i>MD5 dd26ef4f7bd807639c307d2a8f0d790c</i><br> <li>the <a href="http://www.openbsd.org/">OpenBSD</a> <a href="http://www.openbsd.org/ports.html">port</a> source is now available through the -current ports tree.<br> </ul> <p> <a href="http://www.opensource.org/licenses/bsd-license.php">BSD license</a> applies. <p> <h3>History</h3> <h4>2.2: Nov 21, 2024</h4> Include patches from OpenBSD ports tree, from Sebastien Marie &lt;semarie(at)kapouay.eu.org&gt;. <h4>2.1: Apr 25, 2016</h4> Return *** as nick in IRC error messages (where missing), add <a href="http://man.openbsd.org/OpenBSD-current/man2/pledge.2">pledge(2)</a> call on OpenBSD, from semarie@. <h4>2.0: Aug 21, 2015</h4> Merge OpenBSD port patches, originally from ray@ in 2009:<p> <i>Fix corruption that occurs when connecting and reconnecting to icbirc repeatedly. After a while, icbirc starts reusing the command buffer from a previous connection, causing all further connections to incorrectly parse commands.</i> <h4>1.9: Aug 20, 2015</h4> When receiving an IRC PING, additionally send an ICB NOOP, to detect a stalled server connection. Patch from Sebastien Marie &lt;semarie@openbsd.org&gt;. <h3>Related links</h3> <ul> <li><a href="http://www.icb.net/">Internet CB NETwork</a> authorative web site about ICB (links to the list of public servers)<br> <li><a href="http://www.icb.net/history.html">The History of ICB</a> by John Rudd and Jon Luini<br> <li><a href="http://www.icb.net/_jrudd/icb/netiquette.html">General guide to Netiquette on ICB</a><br> <li><a href="ftp://ftp.icb.net/pub/icb/src/icbd/Protocol.html">ICB Protocol</a> describes the format of ICB commands and messages<br> <li><a href="http://www.faqs.org/rfcs/rfc1459.html">RFC 1459</a> Internet Relay Chat Protocol<br> <li><a href="http://www.faqs.org/rfcs/rfc2812.html">RFC 2812</a> Internet Relay Chat: Client Protocol<br> <li><a href="http://www.faqs.org/rfcs/rfc2811.html">RFC 2811</a> Internet Relay Chat: Channel Management<br> </ul> <p> <!--------------------------------------------------------------- --> </td></tr> </table> </td></tr><tr><td> <center> <small> Last updated on Thu Nov 21 20:51:06 2024 by <a href="mailto:daniel@benzedrine.ch">daniel@benzedrine.ch</a><a href="/crawlertrap/index.html?no-prefetch">.</a><br><br> </small> </center> </td></tr> </table> </body> </html>

Pages: 1 2 3 4 5 6 7 8 9 10