|
出错:configure: error: Cannot find a type with size of 16 bits
Unreal3.2-Selene (BETA12) Release Notes
======================================
I M P O R T A N T R E A D I N G
(YES, YOU WILL NEED TO READ ALL OF THIS)
* Unreal3.2-Selene is a lot different than Unreal3.1.1. Forget all you have
learned about setting up Unreal3.1.1 - this is a lot different. We have got
a new configuration format that integrates all the former config files,
ircd.conf, vhost.conf, chrestrict.conf, unrealircd.conf, into to one new
unrealircd.conf (what the ircd.conf is called now). See doc/ for more
information on the configuration format
* THIS IS A BETA VERSION, REPORT BUGS ON http://bugs.unrealircd.org
* We have introduced a new cloaking algoritm (+x), which makes it
incompatible with Unreal3.1.1 - these can however still link, but the
hostname will look different. This is made of three big numbers,
configured in the config file - and these MUST be the same on all servers
on the network. Keep these numbers secret, and the cloaking algorithm is
uncrackable (within 55 years, that is). The +x algorithm was changed slightly
to fix a method of cracking that was found. #define COMPAT_BETA4_KEYS to use the beta4
system for compatibility with older betas.
* If you use Linux and have problems where the IRCd complains that
MAXCONNECTIONS is larger than FD_SETSIZE, you need to get your root to
edit /usr/include/bits/types.h - #define __FD_SETSIZE 1024 to be some
number that is equal or higher than MAXCONNECTIONS. This is a problem with
Linux that it is hardcoded and non overrideable in some distributions. We
recommend you use FreeBSD or the variants of this if you need to run high
load IRC servers.
* We use autoconf to help with compiliation, and this should make us able
to a lot more platform (we have even ported to BeOS).
* We require a pthreads library for the SOCKS scan now - and this is now
done in the background (no more waiting!).
* The IRCd is now modularized, and you load modules with the loadmodule
command. You will most likely want to add these lines:
loadmodule "src/modules/commands.so";
loadmodule "src/modules/scan.so";
loadmodule "src/modules/scan_socks.so";
loadmodule "src/modules/scan_http.so";
If you would like to code a module, doc/ will contain a module guide,
and we got an example module in src/modules/m_dummy.c.
* We have some IPv6 support, and there are some minor bugs in it.
* The documentation is NOT yet 100% complete
* We have added snomask (similar to ircu), basically this allowed us to remove several modes. Modes +cfFk
je
are gone, but don't worry, you can still use them. They are now added like this:
/mode yournick +s +cF
You set the flags in the second parameter of the mode command for a mode change +s, setting -s with no
parameters removes all your snomask. You can remove a specific snomask by doing:
/mode yournick -s -c
The current snomasks are:
c - local connects
F - far connects
f - flood notices
k - kill notices
e - 'eyes' notices
j - 'junk' notices
v - vhost notices
G - gline/shun notices
n - nick change notices
q - deny nick (Q:line) rejection notices
It shouldn't be too hard to figure out, just play around with it a bit
* /who needs testing it was recoded and may contain bugs
* We have added alias {} which allows you to dynamically create commands such as /nickserv
Read example.conf for more information on how to create your own. To use standard ones include
one of the following files
aliases/ircservices.conf (IRCServices, Daylight)
aliases/epona.conf (Epona)
aliases/auspice.conf (Auspice)
aliases/generic.conf (Magick, Sirius, Wrecked)
aliases/operstats.conf (OperStats)
aliases/genericstats.conf (GeoStats, NeoStats)
* You can now use an IP in the oper::from and vhost::from fields even if the host resolves
* Added an http proxy scanner (scan_http.so)
* Added oper::snomask to specify default oper snomask modes
* /helpop text has been moved to a config directive, help {}. To keep the standard help
text you need to include help.conf so add
include "help.conf";
to your config file.
* To be able to use G:lines you must now have the can_gkline flag (or t if old style flags)
* Usermode +T (Tech Admin) has been removed, since it is 100% useless
* Added a make install to copy files to the installation location
* Removed ./ircd, ./killircd, crypt/mkpasswd, ./rehash and merged them into a new
./unreal [start|stop|rehash|mkpasswd]
for mkpasswd the format is
./unreal mkpasswd [method] [password]
* Added a new system for crypting passwords. You now do for example
password "my password" { crypt; };
This allows you to have some crypted passwords and others not. If you have SSL enabled
you may also use the md5 and sha1 methods.
* The old blackhole is now set::scan::endpoint and specifies an IP and port to tell
proxies to connect to.
* You can now specify a cipher list for SSL links (read doc/unreal32docs.html for more info)
* +I is now in invisibility.so so it is easily disabled
* set::socks has been replaced by set::scan (read doc/unreal32docs.html for more info)
* If you experince problems with the scanners, perhaps check out BOPM
(http://www.blitzed.org/bopm)
* log {} syslog support added (read doc/unreal32docs.html for more info)
* Added ripemd-160 password encryption support
* Enabled sha1 and md5 password encryption on Win32 regardless of whether SSL is used.
* Added WinNT/2k/XP service support (experimental)
To use this you use the unreal.exe utility:
unreal install -installs the service
unreal uninstall -uninstalls the service
unreal start -starts the service
unreal stop -stops the service
unreal restart -restarts the service
unreal rehash -rehashes the config file
Config errors and crashes are now logged to service.log when in service mode.
* Implimented a new win32 debugger to make fixing bugs much easier.
* Added a win32 installer to simplify installing under Windows.
* AKILL/RAKILL is depricated. Server command still works but will be removed eventually
(aliases to TKL G). For normal opers it notices that the commands are depricated.
* Made the config parser smarter when it comes to time values and size values. Entries are
no longer limited to 1d2h1m. You can now enter "1day 2 hours 1 minute" for example. See
doc/unreal32docs.html for more information.
Many older operating systems have an insecure TCP/IP stack
which may be vulnerable to IP spoofing attacks, if you run
an operating system that is vulnerable to such attacks
enable this option. If you aren't sure if your OS is vulnerable
you should still enable it.
Do you have an insecure operating system and therefore want to
use the server anti-spoof protection?
[No] ->
What directory are all the server configuration files in?
[/tmp/Unreal3.2] ->
What is the path to the ircd binary including the name of the binary?
[/tmp/Unreal3.2/src/ircd] ->
Would you like to compile as a hub or as a leaf?
Type Hub to select hub and Leaf to select leaf.
[Hub] ->
What is the hostname of the server running your IRCd?
[localhost.localdomain] ->
What should the default permissions for your configuration files be? (Set this to 0 to disable)
It is strongly recommended that you use 0600 to prevent unwanted reading of the file
[0600] ->
Do you want to support SSL (Secure Sockets Layer) connections?
[No] ->
Do you want to enable IPv6 support?
[No] ->
What listen() backlog value do you wish to use? Some older servers
have problems with more than 5, others work fine with many more.
[5] ->
How far back do you want to keep the nickname history?
[2000] ->
What is the maximum sendq length you wish to have?
[3000000] ->
How many buffer pools would you like?
This number will be multiplied by MAXSENDQLENGTH.
[9] ->
How many file descriptors (or sockets) can the IRCd use?
[1024] ->
Do you want use your OS's provided threads implementation (if not, it will maybe use the one Unreal finds)
If you experince problems with sudden lockups of the IRCd, and you're running Linux, you might want to say Yes here
A sideeffect, under Linux is that each thread is shown as a PID - meaning in ps it will show as a lot of ircd processes
You might want to know your sysadmins opinion on this if that is the case
[Yes] ->
Would you like any more parameters to configure?
Write them here:
[]->
./configure --enable-hub --enable-standardthreads --with-listen=5 --with-dpath=/tmp/Unreal3.2 --with-spath=/tmp/Unreal3.2/src/ircd --with-nick-history=2000 --with-sendq=3000000 --with-bufferpool=9 --with-hostname=localhost.localdomain --with-permissions=0600 --with-fd-setsize=1024 --enable-dynamic-linking
checking for gcc... gcc
checking for C compiler default output... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables...
checking for suffix of object files... o
checking whether we are using the GNU C compiler...
yes
checking whether gcc accepts -g... yes
checking if you have gcc 3.0 or higher... yes
checking if gcc has a working -pipe... no
checking for rm... /bin/rm
checking for cp... /bin/cp
checking for touch... /bin/touch
checking for openssl... /usr/bin/openssl
checking for install... /usr/bin/install
checking for crypt in -ldescrypt... no
checking for crypt in -lcrypt... no
checking for socket in -lsocket... no
checking for inet_ntoa in -lnsl... no
checking how to run the C preprocessor... gcc -E
checking for ANSI C header files... no
checking for sys/types.h... no
checking for sys/stat.h... no
checking for stdlib.h... no
checking for string.h... no
checking for memory.h... no
checking for strings.h... no
checking for inttypes.h... no
checking for stdint.h... no
checking for unistd.h... no
checking sys/param.h usability... no
checking sys/param.h presence... yes
configure: WARNING: sys/param.h: present but cannot be compiled
configure: WARNING: sys/param.h: check for missing prerequisite headers?
configure: WARNING: sys/param.h: proceeding with the preprocessor's result
checking for sys/param.h... yes
checking for stdlib.h... (cached) no
checking stddef.h usability... no
checking stddef.h presence... yes
configure: WARNING: stddef.h: present but cannot be compiled
configure: WARNING: stddef.h: check for missing prerequisite headers?
configure: WARNING: stddef.h: proceeding with the preprocessor's result
checking for stddef.h... yes
checking sys/syslog.h usability... no
checking sys/syslog.h presence... yes
configure: WARNING: sys/syslog.h: present but cannot be compiled
configure: WARNING: sys/syslog.h: check for missing prerequisite headers?
configure: WARNING: sys/syslog.h: proceeding with the preprocessor's result
checking for sys/syslog.h... yes
checking for unistd.h... (cached) no
checking for string.h... (cached) no
checking for strings.h... (cached) no
checking regex.h usability... no
checking regex.h presence... yes
configure: WARNING: regex.h: present but cannot be compiled
configure: WARNING: regex.h: check for missing prerequisite headers?
configure: WARNING: regex.h: proceeding with the preprocessor's result
checking for regex.h... yes
checking openssl/ssl.h usability... no
checking openssl/ssl.h presence... yes
configure: WARNING: openssl/ssl.h: present but cannot be compiled
configure: WARNING: openssl/ssl.h: check for missing prerequisite headers?
configure: WARNING: openssl/ssl.h: proceeding with the preprocessor's result
checking for openssl/ssl.h... yes
checking malloc.h usability... no
checking malloc.h presence... yes
configure: WARNING: malloc.h: present but cannot be compiled
configure: WARNING: malloc.h: check for missing prerequisite headers?
configure: WARNING: malloc.h: proceeding with the preprocessor's result
checking for malloc.h... yes
checking sys/rusage.h usability... no
checking sys/rusage.h presence... no
checking for sys/rusage.h... no
checking glob.h usability... no
checking glob.h presence... yes
configure: WARNING: glob.h: present but cannot be compiled
configure: WARNING: glob.h: check for missing prerequisite headers?
configure: WARNING: glob.h: proceeding with the preprocessor's result
checking for glob.h... yes
checking for gcc option to accept ANSI C... none needed
checking for an ANSI C-conforming const... no
checking for inline... no
checking for size_t... no
checking whether time.h and sys/time.h may both be included... no
checking whether struct tm is in sys/time.h or time.h... sys/time.h
checking for user_id_t in sys/types.h... yes
checking for short... no
checking size of short... 0
checking for int... no
checking size of int... 0
checking for long... no
checking size of long... 0
_______________________________________________________________________
| |
| UnrealIRCd Compile-Time Config |
|_______________________________________________________________________|
|_______________________________________________________________________|
| |
| Now all you have to do is type 'make' and let it compile. When that's |
| done, you will receive other instructions on what to do next. |
| |
|_______________________________________________________________________|
|_______________________________________________________________________|
| - The UnrealIRCd Team - |
| |
| * Stskeeps [email protected] |
| * codemastr [email protected] |
|_______________________________________________________________________|
[root@localhost Unreal3.2]#
[root@localhost Unreal3.2]#
[root@localhost Unreal3.2]# |
|