IRCServices 5.x and InspIRCd
From the makers of InspIRCd.
Contents |
Getting Started
To make IRCServices 5 work with InspIRCd, you must first get our services module from our SVN page, Here. Next, download ircservies from the IRCServices website (the latest version -- our protocol module requires you to use at least 5.0.48) untar it, move inspircd.c and inspircd10.c into the modules/protocol directory, and overwrite modules/protocol/Makefile with the Makefile.new from the tarball.
Run configure for ircservices as follows:
./configure
Modifying the Makefile
Once configure is complete and makefiles have been written, change to the modules/protocol directory and open the makefile in your favourite editor:
cd modules/protocol nano Makefile
You should change the makefile to match the Makefile.new which is given in the tarball for our ircservices module. You may be able to just cp it over the top, or you may have to merge the changes in by hand.
Configuration
You can now safely change to the base directory of ircservices and run make (or gmake if you are using FreeBSD). After running make, run make install as normal. Remember that if you are using BSD you will probably need to use gmake instead (GNU make) When configuring ircservices, you must ensure that you load the correct protocol module, as shown in the example below:
LoadModule protocol/inspircd
The inspircd module currently requires no configuration entries in modules.conf.
Link Blocks
Your next step should be to add the link blocks and uline blocks to your inspircd server. Here are some examples of correctly formatted link blocks for a services server:
<bind address="" port="7252" type="servers">
<link name="services-dev.chatspike.net"
ipaddr="127.0.0.1"
port="7252"
sendpass="XXXXX"
recvpass="XXXXX">
<uline server="services-dev.chatspike.net">
Remember to set recvpass and sendpass correctly to match your ircservices configuration.
Modules
You will also need to ensure you load certain modules to use ircservices. Because ircservices currently makes assumptions that the feature set of an ircd is static (whereas the feature set of inspircd is totally dynamic) your chosen options must match that the ircservices program assumes (sorry about this folks, my hands are tied -- feel free to edit the inspircd.c to suit your tastes, i will accept modified versions) the modules you require to make ircservices work correctly at current (unless someone submits modified inspircd.c files) are:
<module name="m_globops.so"> <module name="m_services.so"> <module name="m_spanningtree.so">
Optionally, the following modules may enhance services support:
<module name="m_operchans.so"> <module name="m_redirect.so"> <module name="m_chanprotect.so"> <module name="m_blockcolor.so"> <module name="m_banexception.so"> <module name="m_inviteexception.so"> <module name="m_cloaking.so"> <module name="m_knock.so"> <module name="m_noctcp.so"> <module name="m_nokicks.so"> <module name="m_nonotice.so"> <module name="m_nonicks.so"> <module name="m_noinvite.so"> <module name="m_censor.so"> <module name="m_stripcolor.so">
Also, the m_alias.so module is highly useful (but optional) for redirecting commands to services automatically.
Once all this is done, simply rehash your InspIRCd server with the /REHASH command, fire up ircservices, and you're good to go!

















