forked from jkominek/pircd
-
Notifications
You must be signed in to change notification settings - Fork 0
the perl irc daemon
License
kosmita123/pircd
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
_ _ _ __ (_) _ __ ___ __| | | '_ \ | || '__|/ __|/ _` | | |_) || || | | (__| (_| | | .__/ |_||_| \___|\__,_| _ _ |_| _ _ _ | |_| |_ ___ _ __ ___ _ _| | (_)_ _ __ __| |__ _ ___ _ __ ___ _ _ | _| ' \/ -_) | '_ \/ -_) '_| | | | '_/ _| / _` / _` / -_) ' \/ _ \ ' \ \__|_||_\___| | .__/\___|_| |_| |_|_| \__| \__,_\__,_\___|_|_|_\___/_||_| |_| http://github.com/jkominek/pircd by jay kominek (kominek@gmail.com) julian squires (julian@cipht.net) et al Yes. It really is an IRC daemon. It's written in Perl. ... You can breathe again. There. Very good. *** Pre-introduction I thought I'd pull this onto github, from sourceforge, where it had lingered for more than a decade. I doubt I'll do anything with it (though I updated the email addresses in it), but now at least if anyone starts making modifications, the features of github will let others find them more easily. Over the years a number of folks (certainly more than I ever expected when I first started working on it) wrote me to thank me. I'm glad it helped people. I hope it can continue to do so. For what it's worth, I'm against pull requests. I'll be flattered that you're interested, but I almost certainly will not be able to deal with them in a timely fashion. *** Introduction pircd is an IRC daemon written in Perl. I wrote it after realizing that Perl is the right language for IRC. IRC is chock full of various strings and other what not, all of which is easily parsed by Perl, where the C IRC daemons jump through all kinds of hoops and have really nasty looking code (have you ever looked at the Undernet IRC daemon? I gave up on trying to figure out how their extensions to the protocol work by looking at the code.) Whereas pircd is, in my opinion, very clean. Messages from the user are dispatched to the appropriate code via a lookup table to subroutine references, no excessively large if..elsif..else structure, no conversion of the strings into something that they are not (numeric values, if I remember how ircu does it). pircd is now reasonably complete. It lacks STATS output with any relation to reality, and interserver communication. As of this writing, it is 3810 lines long (counting comments and everything). I do not anticipate it getting past twice that with the addition of the remaining features. (interserver communication being the big one.) If you would like to know more about how pircd operates internally, please consult the included file, 'INTERNALS'. *** SSL pircd is one of very few IRC servers which support SSL. There are a few IRC clients out there which even support SSL, themselves. We don't yet any have sort of support for the verification of SSL certificates, though. (Optimally, opers would be required to have a certificate on file with the server in order to be allowed gain oper-status. But that is a ways off, at this point.) *** Requirements * Perl 5.004 and later. * The following Perl modules: Fcntl, Getopt::Long, IO::Select, IO::Socket, POSIX, Sys::Syslog, Tie::RefHash, UNIVERSAL IO::Socket::SSL if you want to use SSL In the future, I may make use of Compress::Zlib, also I imagine its use will be optional. * A computer * A port that you can bind to, preferably 6667 - Jay Kominek <kominek@gmail.com> Hail Eris!
About
the perl irc daemon
Resources
License
Stars
Watchers
Forks
Packages 0
No packages published
Languages
- Perl 100.0%