Bighecks to interact w/ UnrealIRCd 4.x as een leaf server to watch raw logs etc

Wazakindjes 3c08873245 Support for configuring SSL verify peer flag, shit out timestamps, better detection of 'ayy linq established m9', UTF-8 enc0de stdout, made channels optional and changed all comments to ; instead of # cuz fucked with some shit xd 9 months ago
.gitignore eb4fd68adc Added live conf thingy to gitignore lael 2 years ago
LICENSE 6a373c2dee Repo creati0n =] 2 years ago
README.md 3c08873245 Support for configuring SSL verify peer flag, shit out timestamps, better detection of 'ayy linq established m9', UTF-8 enc0de stdout, made channels optional and changed all comments to ; instead of # cuz fucked with some shit xd 9 months ago
ircl.pl 3c08873245 Support for configuring SSL verify peer flag, shit out timestamps, better detection of 'ayy linq established m9', UTF-8 enc0de stdout, made channels optional and changed all comments to ; instead of # cuz fucked with some shit xd 9 months ago
muh.conf.example 3c08873245 Support for configuring SSL verify peer flag, shit out timestamps, better detection of 'ayy linq established m9', UTF-8 enc0de stdout, made channels optional and changed all comments to ; instead of # cuz fucked with some shit xd 9 months ago

README.md

This is a quick and dirty script I maed to watch UnrealIRCd server connections in-depth. Cuz you know, sometimes the command format differs for servers when compared to regular users etc. xd

The code is undocumented as of yet cuz it's een alpha version still. So enjoy reading it and getting eye cancer or some shit. =]]]

Config

A simple plaintext file called muh.conf, must be kept in the same dir as the Perl skrip cuz I'm lazy. ;3 A bunch of values here should match something on UnrealIRCd's end, so keep that in mind fambi. ;];]

Simply copy muh.conf.example to muh.conf and change em to suit your needs (everything's explained in there yo).

Refer to the Unreal docs about snomasks and usermodes for a bit more in-depth info about those kek.

Usage

Simply run ./ircl.pl and watch 'em stdout yo. You can also send raw commands to the hub using stdin, but obviously you need some knowledge bout it etc. There are some placeholder thingies you can use to make life easier, they should be pretty self-explanatory:

  • <LNAME> (linkname)
  • <HUB>
  • <SID>
  • <UID>
  • <TIME> (current time in UNIX timestampus formatterino)
  • <NICK>
  • <IDENT>
  • <HOST>
  • <GECOS>

So, if you were to slam :<UID> PRIVMSG #ham :h0y in there, the user ayy would send that message etc. The UID is auto-generated, although there should only be one "user" on there anyways.

A bunch of shit is formatted too:

  • Basic crap like "hurr durr u connected fam": starts with **, bold text
  • Hints and shit like warnings but not really: starts with ==, "bold white" colour (but looks gray to me)
  • Outgoing hecks: starts with >>, cyan colour
  • Incoming bs: starts with <<, magenta colour
  • Errors: start with --, red colour
  • Interactively sent shit: starts with ++, bright green colour

Also, the script pings the IRCd about once every 30 seconds. =] If the hub shits itself the connection will be closed and the skrip will exit too.