| 2 |
|
|
| 3 |
|
$Id$ |
| 4 |
|
|
| 5 |
< |
Copyright (c) 1997-2005 IRCD-Hybrid Development Team |
| 5 |
> |
Copyright (c) 1997-2012 IRCD-Hybrid Development Team |
| 6 |
|
|
| 7 |
|
---------------------------------------------------------------------- |
| 8 |
|
|
| 21 |
|
|
| 22 |
|
***** EFNET NOTE ***** |
| 23 |
|
You should run ./configure with the option '--enable-efnet' to tweak |
| 24 |
< |
some options to be EFNet based. You must also use the example.efnet.conf |
| 24 |
> |
some options to be EFNet based. You must also use the example.efnet.conf |
| 25 |
|
instead of example.conf. |
| 26 |
|
********************** |
| 27 |
|
|
| 33 |
|
Config script. You must run ./configure before you can (sanely) build |
| 34 |
|
ircd-hybrid. |
| 35 |
|
|
| 36 |
< |
1. Read the RELNOTES file to find out about the exciting new features in |
| 37 |
< |
this version. Other good reads are doc/whats-new.txt, BUGS, |
| 38 |
< |
etc/example.conf, and README.FIRST. |
| 36 |
> |
1. Read the NEWS file to find out about the exciting new features in |
| 37 |
> |
this version. Other good reads are BUGS, etc/example.conf, and |
| 38 |
> |
README. |
| 39 |
|
|
| 40 |
< |
An example.conf for EFnet is in etc/ with the values "approved" as of |
| 41 |
< |
October 12th, 2003 called example.efnet.conf. |
| 42 |
< |
|
| 43 |
< |
2. Run the configure script. It will create include/setup.h and the |
| 44 |
< |
Makefiles to match your system. In hybrid-7, the paths are now handled |
| 40 |
> |
2. Run the configure script. It will create config.h and the |
| 41 |
> |
Makefiles to match your system. The paths are now handled |
| 42 |
|
with the --prefix option to configure. |
| 43 |
|
/usr/local/ircd is the default if no prefix is specified. |
| 44 |
|
|
| 56 |
|
Solaris. Linux /dev/poll is broken and will not work with this |
| 57 |
|
option. |
| 58 |
|
|
| 59 |
+ |
* --enable-epoll - Enables epoll(4) Signal I/O system. This is |
| 60 |
+ |
currently only available on 2.5.44 Linux kernel versions or |
| 61 |
+ |
later. |
| 62 |
+ |
|
| 63 |
|
* --enable-rtsigio - Enable the superior Linux RealTime Signal I/O |
| 64 |
|
system. This is currently only available on 2.4 Linux kernel |
| 65 |
|
versions or later. |
| 66 |
|
|
| 67 |
< |
* --enable-poll - Use POSIX poll(2). |
| 67 |
> |
* --enable-poll - Use POSIX poll(2). |
| 68 |
|
|
| 69 |
< |
* --enable-select - Use POSIX select(2). |
| 69 |
> |
* --enable-select - Use POSIX select(2). |
| 70 |
|
|
| 71 |
< |
* --enable-clobber - Don't preserve the old binaries on make install |
| 72 |
< |
|
| 73 |
< |
Incidentally, the order of listing above is the order of auto- |
| 73 |
< |
detection in configure. So if you do have kqueue but wish to |
| 74 |
< |
enable select(2) instead (bad idea), you must use --enable-select. |
| 71 |
> |
Incidentally, the order of listing above is the order of auto- |
| 72 |
> |
detection in configure. So if you do have kqueue but wish to |
| 73 |
> |
enable select(2) instead (bad idea), you must use --enable-select. |
| 74 |
|
|
| 75 |
|
* --enable-openssl - Enable the openssl dependent crypto functions. |
| 76 |
|
This will allow CHALLENGE to work and encrypted links. On systems |
| 79 |
|
must specify a path with this option |
| 80 |
|
(--enable-openssl=/path/to/openssl) |
| 81 |
|
|
| 82 |
+ |
|
| 83 |
|
These are optional or have default values that may be overridden: |
| 84 |
|
|
| 85 |
– |
* --disable-shared-modules - Disable module support. This option is |
| 86 |
– |
more secure, but reduces a lot of the flexibility in hybrid-7. |
| 87 |
– |
This may need to be used on some systems without a working |
| 88 |
– |
dlopen/dlsym. |
| 89 |
– |
|
| 85 |
|
* --enable-assert - Enable use of numerous debugging checks. This |
| 86 |
|
should not be used on any production servers for maximum speed |
| 87 |
< |
so as to prevent cores from things that shouldn't normally happen. |
| 93 |
< |
|
| 94 |
< |
* --enable-efence - Enable ElectricFence which is a memory debugger. |
| 95 |
< |
|
| 96 |
< |
* --enable-profile - Enable profiling support in ircd-hybrid. |
| 97 |
< |
|
| 98 |
< |
* --disable-block-alloc - Disable block allocations (only works with |
| 99 |
< |
ElectricFence). |
| 87 |
> |
so as to prevent cores from things that shouldn't normally happen. |
| 88 |
|
|
| 89 |
< |
* --enable-halfops - Enable halfops (%, mode +h) usage. Halfops |
| 90 |
< |
are similar to plain ops, but can't kick/deop plain ops. Halfops |
| 91 |
< |
may or may not kick/deop other halfops depending on if (+p) is |
| 92 |
< |
set. Halfops may not set (+/-p). |
| 89 |
> |
* --enable-halfops - Enable halfops (%, mode +h) usage. Halfops |
| 90 |
> |
are similar to plain ops, but can't kick/deop plain ops. Halfops |
| 91 |
> |
may or may not kick/deop other halfops depending on if (+p) is |
| 92 |
> |
set. Halfops may not set (+/-p). |
| 93 |
|
|
| 94 |
|
* --enable-small-net - Tunes the server for smaller networks by |
| 95 |
|
reducing the startup memory footprint. This should really only be |
| 96 |
|
used for *small* networks, as this tends to be a performance hit |
| 97 |
|
on larger networks. |
| 98 |
|
|
| 111 |
– |
* --enable-syslog=kill/squit/connect/users/oper, separated by |
| 112 |
– |
spaces, in quotes - Enables syslog logging, with events you specify |
| 113 |
– |
(none is okay too, and logs the most essential messages only.) |
| 114 |
– |
|
| 115 |
– |
* --enable-syslog-facility=FACILITY - Check with your sysadmin to see |
| 116 |
– |
what this should be; by default it is LOG_LOCAL4. If you get it wrong |
| 117 |
– |
initially, no problem; just edit the value in include/setup.h. |
| 118 |
– |
|
| 99 |
|
* --with-nicklen, |
| 100 |
< |
--with-topiclen - Respectively, sets the maximum NICK length and |
| 101 |
< |
maximum TOPIC length. Note that this must be consistent across your |
| 102 |
< |
entire network. Defaults are 9 and 120, respectively. |
| 103 |
< |
|
| 104 |
< |
* --with-maxconn - Sets the maximum number of connections the ircd |
| 125 |
< |
can support. Note that this also twiddles the HARD_FDLIMIT. |
| 126 |
< |
If HARD_FDLIMIT ends up being larger that FD_SETSIZE when using |
| 127 |
< |
select() for your I/O loop, s_bsd_select.c will refuse to compile |
| 128 |
< |
(and tell you to use poll instead). Take this error's advice and |
| 129 |
< |
use --enable-poll or something a bit more efficient. You'll be |
| 130 |
< |
happier at the end of the day for it. |
| 131 |
< |
|
| 132 |
< |
* --disable-zlib - Build the ircd without ziplinks support. |
| 133 |
< |
|
| 134 |
< |
* --disable-gline-voting - This is good for small networks or where |
| 135 |
< |
G-Line voting is not necessary. Please understand that by disabling |
| 136 |
< |
this, it will allow any operator with G-Line permissions to G-Line |
| 137 |
< |
someone without requiring the approval of 2 other operators. However, |
| 138 |
< |
it is useful if you use proxy scanners or services that do G-Lines. |
| 100 |
> |
--with-topiclen - Respectively, sets the maximum NICK length and |
| 101 |
> |
maximum TOPIC length. Note that this must be consistent across your |
| 102 |
> |
entire network. Defaults are 9 and 120, respectively. |
| 103 |
> |
|
| 104 |
> |
|
| 105 |
|
|
| 106 |
|
3. Run 'make'; this should build the ircd. |
| 107 |
|
|
| 108 |
< |
4. Run 'make install'; this will install the server, modules(1), and tools |
| 108 |
> |
4. Run 'make install'; this will install the server, modules, and tools |
| 109 |
|
in the path with the prefix specified when configure was ran. |
| 110 |
|
|
| 145 |
– |
(1) Unless the server was compiled without module support. |
| 146 |
– |
|
| 111 |
|
5. If you wish to install the contrib modules, run 'make install' in the |
| 112 |
|
contrib/ folder to compile and install the modules and help pages. |
| 113 |
|
|
| 114 |
< |
6. If you wish to enable the user log, oper log, and failed oper log, |
| 115 |
< |
kill log, kline log and the gline log issue these commands at the |
| 152 |
< |
shell prompt (in the prefix directory). |
| 153 |
< |
|
| 154 |
< |
$ touch logs/userlog |
| 155 |
< |
$ touch logs/operlog |
| 156 |
< |
$ touch logs/foperlog |
| 157 |
< |
$ touch logs/kill |
| 158 |
< |
$ touch logs/kline |
| 159 |
< |
$ touch logs/gline |
| 160 |
< |
|
| 161 |
< |
Note: If you use different names in ircd.conf, you must 'touch' |
| 162 |
< |
their specific names. |
| 163 |
< |
|
| 164 |
< |
7. If you are upgrading from Hybrid 5 or Hybrid 6, the config files |
| 165 |
< |
have changed drastically... |
| 114 |
> |
6. If you are upgrading from Hybrid 5 or Hybrid 6, the config files |
| 115 |
> |
have changed drastically. |
| 116 |
|
|
| 117 |
|
By default, the kline file is named kline.conf, the dline file is |
| 118 |
< |
named dline.conf, the xline file is called xline.conf, and the gline |
| 169 |
< |
file is called gline.conf. |
| 118 |
> |
named dline.conf, and the xline file is called xline.conf. |
| 119 |
|
|
| 120 |
|
The nick resv file is named nresv.conf, channel resv file is named |
| 121 |
|
cresv.conf. |
| 134 |
|
on you, PLEASE contact bugs@ircd-hybrid.org ASAP with a backtrace of |
| 135 |
|
the core. The Hybrid team can't fix bugs if no one tells us about them! |
| 136 |
|
|
| 188 |
– |
- http://forum.ircd-hybrid.org/ |
| 189 |
– |
We decided to create a phpBB-like forum about ircd-hybrid, where you |
| 190 |
– |
can get help from coders and admins, post your suggestions, modules etc. |
| 191 |
– |
|
| 137 |
|
- https://lists.ircd-hybrid.org/mailman/listinfo/hybrid |
| 138 |
|
Here you can subscribe to a mailing list for general discussion of Hybrid. |
| 139 |
|
|
| 146 |
|
|
| 147 |
|
1. Change to the directory containing the core file |
| 148 |
|
|
| 149 |
< |
2. Run gdb on the binary and the core file. With an unmodified Hybrid-7.2 |
| 149 |
> |
2. Run gdb on the binary and the core file. With an unmodified ircd-hybrid |
| 150 |
|
installation, an example command line is below (in the /usr/local/ircd |
| 151 |
|
directory) |
| 152 |
|
|