Psotnic/Psotnik


psotnic is an IRCnet bot written in C++. The main goal of the project was to create a fast, stable and easy to use bot. Psotnic is a homonym to Polish word psotnik, which means “rascal” or “urchin”.

List of features:

  • anti-idle
  • 7 CTCP emulation types
  • kick4 and kick6
  • IPv6 support
  • clone check: host, ident, /24 ipv4 class, /64 ipv6 prefix, proxies (*!~*@*.isp.com)
  • SOCKS5 support
  • vanilla BNC support
  • shitlist (shits are enforced upon addition)
  • alternative slave support
  • module loading (each one is protected with MD5 sum)
  • 3 types of owners (permanent (+x), super owner (+s), owner (+n))
  • channel modes protection (only +n can change channel modes)
  • master can only op one person per mode
  • encrypted links between bots (blowfish)
  • encrypted config file and userlist (blowfish)
  • auto-limit
  • limit override protection (mass invite protection)
  • ban and limit enforcing
  • user level based protection (user gets kicked if he harms user with higher level)
  • mass, remote and slave joins
  • channel flags support
  • dynamic invites, bans and exempts
  • was op test
  • keepnick
  • no trust between bots
  • very fast oping (does not use botnet for oping) algorythm
  • getop (nearly not used for oping), getkey, getinvite, unban
  • all features can be controlled via .set and .chset command
  • channel locking (+i) when number of bots on channel reaches bellow critical level
  • CIDR ban support
  • bots can be updated via partyline
  • 15 characters long nicknames support
  • reop (+R) mode support
  • on join host resolver (Linux only, since 0.2.3)
  • config can be edited via partyline (since 0.2.3)
  • omnipresent hashtables make bot less CPU consuming (since 0.2.3)
  • new random number generator makes (xor shift) decision algorithm less CPU consuming (since 0.2.3)
  • source code (since 0.2.6)
  • ident spoofing for oidentd (since 0.2.8)
  • SSL support for IRC and partyline connections (since 0.2.9)

About this entry