mirror of
https://github.com/unrealircd/unrealircd.git
synced 2026-06-15 18:34:46 +02:00
Compare commits
553 Commits
stable
...
u31_chatfirst
| Author | SHA1 | Date | |
|---|---|---|---|
| 86f7e2e0e8 | |||
| 0b5838ffaa | |||
| 4cea0721ec | |||
| f093182370 | |||
| 085eb45175 | |||
| 2fae48a6fc | |||
| 345265ffa8 | |||
| 08584d495c | |||
| b04a23ca0b | |||
| ee664d26ce | |||
| 473c68a265 | |||
| 3632876ba7 | |||
| 10b7478eb6 | |||
| 869bc9bab9 | |||
| 867bd08b5d | |||
| 98683525d4 | |||
| cf36508493 | |||
| 722f5eeaf6 | |||
| 80800635a4 | |||
| 8896e5f3a0 | |||
| b818e63a09 | |||
| 3f4fd52cff | |||
| 5087e07097 | |||
| 5d7e4de313 | |||
| 825c12de9e | |||
| da592b1dba | |||
| ebcbf1f840 | |||
| 93ae6616d9 | |||
| 6c7f028594 | |||
| d94af7a977 | |||
| 8b7110a253 | |||
| 428312ee7d | |||
| b1f249cb75 | |||
| b3587542ba | |||
| 5690256e79 | |||
| e1cfa45db2 | |||
| 39b719d0e2 | |||
| f32e8c4a86 | |||
| eef2668ffb | |||
| 24afee2f4f | |||
| e4a59d36a8 | |||
| 0402c8320f | |||
| 17285e699b | |||
| c7173bb458 | |||
| ccc23e1eb2 | |||
| 078da1b9ee | |||
| b3d1a09808 | |||
| d2d29f2294 | |||
| 9d164e76a3 | |||
| 31471cf6ba | |||
| 2a35040f07 | |||
| 155310065b | |||
| cae7d1366d | |||
| 4dc498b9fb | |||
| 54ba7c7ed2 | |||
| d173324c0d | |||
| 799daac44d | |||
| 1cd81ae077 | |||
| 749a4340ca | |||
| 20c0e8d733 | |||
| 4bebd2cb31 | |||
| da4333aecf | |||
| c8b1de7cdb | |||
| ba924cb7bc | |||
| 0a58f33c27 | |||
| bbaa0b0416 | |||
| d42ae2b5b8 | |||
| b140153d57 | |||
| cd5548cab8 | |||
| ceb8171657 | |||
| 2d4846bfd6 | |||
| 25291cc457 | |||
| f8a112aa07 | |||
| 38bcec9991 | |||
| 367dfb5d3b | |||
| cd69044366 | |||
| 5747fda912 | |||
| 94927f5a7a | |||
| f634ce269b | |||
| 6fa75f2e9e | |||
| 9b14745e47 | |||
| 606967c718 | |||
| 3985a7ceed | |||
| 62cf839f2e | |||
| f0e2d2cb61 | |||
| 6d64f0b505 | |||
| d2d806697b | |||
| ae0dcf2bbf | |||
| cb0cbda5ed | |||
| 5d04afc6c2 | |||
| 9955724ef9 | |||
| 052bcc180d | |||
| b791a8eae9 | |||
| 143a7b6566 | |||
| fc2bf10e3a | |||
| 290495c0ad | |||
| 07a6922d5c | |||
| 59a23b3ce6 | |||
| df07c7f133 | |||
| 17932efad0 | |||
| 82a657a63e | |||
| 12c9891916 | |||
| 9511d161c6 | |||
| 1e39df2cb8 | |||
| 6cdc422490 | |||
| d6247b9a19 | |||
| a896d4f71d | |||
| ef7c0d6672 | |||
| 7adf05ab64 | |||
| 4eda3e1752 | |||
| d7a342fed1 | |||
| 8894015354 | |||
| 9019f35565 | |||
| 92cdd762c4 | |||
| 8dce2d175c | |||
| 2b78d45287 | |||
| fd6eed4477 | |||
| 7461b22a16 | |||
| 0588f18cbb | |||
| b318e6a66a | |||
| 4e26bd1379 | |||
| dba0d3b7c0 | |||
| 9159c377de | |||
| 4712fe781c | |||
| d0f4a514d4 | |||
| 6c59c5b733 | |||
| 8c96800c80 | |||
| 7df008ead4 | |||
| 7b068178a1 | |||
| e4a1669632 | |||
| bba7e664b6 | |||
| 108639b960 | |||
| 7a3d7c8b7f | |||
| 32f0e3f871 | |||
| 678ac0f7cf | |||
| f6a0415148 | |||
| 0505a1ff50 | |||
| 5b515b86b4 | |||
| af8b08775d | |||
| ae3936aca5 | |||
| 3a5e5ee45a | |||
| e6b2159245 | |||
| 4639a2b229 | |||
| 648677c637 | |||
| 0c9f2aa846 | |||
| ef3397baf6 | |||
| 293125eb84 | |||
| 7e8ecc7dac | |||
| 7debfeb86a | |||
| 02582580dd | |||
| 50d67017fc | |||
| 5b6dbb1e54 | |||
| 98c6c668ae | |||
| 9dfc0828f9 | |||
| 5a93d1a5e9 | |||
| f97882d2bb | |||
| 41e02c72a0 | |||
| e64c18860f | |||
| 6510adeb23 | |||
| f954969f7d | |||
| fea8930bb2 | |||
| d51af6f8b5 | |||
| 6d9e619b26 | |||
| 2fd3104391 | |||
| bea668a89f | |||
| c2de53cf85 | |||
| d0404fd0e8 | |||
| 4fb309fbde | |||
| e50d397e93 | |||
| 8735a0f6bf | |||
| b6e61e1302 | |||
| 2353bd2011 | |||
| 56dc3a3e1d | |||
| 856282da07 | |||
| cdea0263ac | |||
| 4400b32055 | |||
| 714c97b006 | |||
| 2c5abc8c2d | |||
| 00b464154b | |||
| e534e67628 | |||
| 10bc9a408b | |||
| 8a95221fae | |||
| 71bdc5c08d | |||
| 857b3c3a84 | |||
| 7eb9d0e71a | |||
| f4fde73489 | |||
| 14bb1968ba | |||
| ee31dd9fa0 | |||
| 30be1fa550 | |||
| aa0ac19e18 | |||
| 8c481239de | |||
| 8297e30cd4 | |||
| 0983f82c08 | |||
| 554f1a0c15 | |||
| e94bf80328 | |||
| 5b3b13772b | |||
| 32122c7018 | |||
| a1b617b6d0 | |||
| a46f14412d | |||
| 0f2dd2ef18 | |||
| bfb98ee28f | |||
| b0c04f4b43 | |||
| 362ec0b08d | |||
| b3fc0f5d6b | |||
| 40075204f0 | |||
| 9de62da6f3 | |||
| 98047de919 | |||
| 29b4c9c983 | |||
| 5392dd8acf | |||
| 8f561e9337 | |||
| 6a356f7e2d | |||
| 978dd4071e | |||
| 72cd2b5e99 | |||
| 0fdef4f961 | |||
| 73e45d7537 | |||
| 493ba9981f | |||
| cd4349598d | |||
| 537a91666e | |||
| b6dee3fd9d | |||
| 6cbcc627cf | |||
| 2bb36dd76c | |||
| e486efb289 | |||
| 5c0151f976 | |||
| c5b7e0c1e7 | |||
| 88c77ce89e | |||
| e85a37b814 | |||
| a7ee96c3ce | |||
| 377d9554d3 | |||
| ea41e25761 | |||
| f564867259 | |||
| 23438196eb | |||
| 55a0b03f03 | |||
| e68c66b260 | |||
| 7cbbef2e36 | |||
| ecdce7061b | |||
| 87ca77c48e | |||
| cca7cffb93 | |||
| bb4f0e3393 | |||
| d83fb7d37f | |||
| c07a9207ca | |||
| 7cde16eac1 | |||
| e03c9bdf42 | |||
| 582e6b9f30 | |||
| ad8a1bf785 | |||
| 3e6f1fce93 | |||
| 18dde16b11 | |||
| d3cfcdc6b0 | |||
| cccda143b1 | |||
| 649b5d812e | |||
| e3339d4003 | |||
| 1786f8f03b | |||
| c28527ade3 | |||
| 90f0809b44 | |||
| dc5f3390bc | |||
| 25760a38f1 | |||
| 18c669cf47 | |||
| ae21e16beb | |||
| 623f6a44a0 | |||
| 4981573f80 | |||
| cb5de25f7e | |||
| ae1a133435 | |||
| fc1a6c313b | |||
| 601d97dd93 | |||
| b69361e947 | |||
| c064f9d5e9 | |||
| fe866e500b | |||
| 0bb293925d | |||
| fe95cb9a1f | |||
| cd277778a3 | |||
| 7bc10582c5 | |||
| b93a3e9e93 | |||
| 06a6b4c07f | |||
| 34b46855a2 | |||
| 65393c21ca | |||
| 0c9fd1139c | |||
| d5da9ddb9e | |||
| 70873bcf00 | |||
| a3ec5a5fb8 | |||
| c0f596fbb7 | |||
| 4ae6cd2bf4 | |||
| 242d9ab45d | |||
| a4d4b20b2c | |||
| d42135097a | |||
| 9c4d0c511a | |||
| 85790c8442 | |||
| c0c478112f | |||
| 5406e9fa99 | |||
| 030b9c8291 | |||
| 4493453545 | |||
| df0a433709 | |||
| 6c3bbf0009 | |||
| bf7a3d3133 | |||
| fb602a74e4 | |||
| 040d480e99 | |||
| c90d13174d | |||
| 97e41a7e42 | |||
| 7b6582bdcc | |||
| 5fde2907f5 | |||
| 71ce47a71b | |||
| 98b483ee88 | |||
| 4ee74b07e3 | |||
| d33f4a8120 | |||
| b7920658e4 | |||
| 135b4d9d87 | |||
| 8af8d17d52 | |||
| d11a065d37 | |||
| 771dee3a5f | |||
| ea519e2a6d | |||
| 9ddffa08ea | |||
| 1e7c36aac0 | |||
| 3de653cbf2 | |||
| 4a08c9ba70 | |||
| b750382333 | |||
| 98eb86460b | |||
| 3026350806 | |||
| da3100e642 | |||
| 6c1cefed98 | |||
| 6f7b608fac | |||
| 081d14d3e9 | |||
| 1b47753c0f | |||
| 1ebe25c025 | |||
| 13790b01e3 | |||
| 004f9222a1 | |||
| c3e053033c | |||
| 5561c155de | |||
| 33c6e5c93b | |||
| b7ee74ec97 | |||
| 58f7ef9ca8 | |||
| 7f96ccb01e | |||
| 7666ceab87 | |||
| e7c69eca78 | |||
| d69bcc41fa | |||
| 4d616cf680 | |||
| dc1eb8bddf | |||
| c9e4ba4c98 | |||
| c1c1aa2909 | |||
| 6f9606b331 | |||
| 345f51b684 | |||
| d885489c48 | |||
| 4659dab89c | |||
| 760dc8dab8 | |||
| 5133d62d3c | |||
| eded88dd61 | |||
| bfb2ce7bce | |||
| 6854c9a063 | |||
| 25077eadc1 | |||
| 3f41561390 | |||
| e1499ca0ed | |||
| b61f000488 | |||
| 3ae66ae4e0 | |||
| 51a5fa808e | |||
| 236f8ed033 | |||
| a977359d9f | |||
| 6426522201 | |||
| 47ddee28a4 | |||
| 249edda423 | |||
| bde554aaf9 | |||
| 9ec9cba9d9 | |||
| f046832f10 | |||
| a055d59f9c | |||
| a41b0b5bbb | |||
| bf7aad741d | |||
| cb74571261 | |||
| 993180689a | |||
| aecec0e171 | |||
| 52a5b1b038 | |||
| 9b181f575f | |||
| 7a9cade496 | |||
| 009e5353e7 | |||
| 2988283c76 | |||
| 7f3125a0e2 | |||
| 07353dcf4b | |||
| 110e114d90 | |||
| 8abce466d6 | |||
| 6054bfabd2 | |||
| b1416fc0c0 | |||
| 160d1600a6 | |||
| 0ba15e3965 | |||
| 5fe68141ad | |||
| df0815f9bd | |||
| 10ad7e34f5 | |||
| fcfb9aa3d2 | |||
| b47a9f53cc | |||
| 8617d1ba4c | |||
| 9bccd6046d | |||
| 1c8ea8df8c | |||
| 3f4174bb96 | |||
| d1839df783 | |||
| 9390a647ed | |||
| 3856856120 | |||
| 587defb54e | |||
| 047a43253c | |||
| f1c9feb8f7 | |||
| 81ce6d38a2 | |||
| b57669903d | |||
| 0a7b6dfc3a | |||
| 56663f23e1 | |||
| 0af5d85de7 | |||
| 5e9f767c86 | |||
| 515945254c | |||
| 9d966aa4d0 | |||
| bf26a46b15 | |||
| 6124a68fde | |||
| 65118165d6 | |||
| 2e461cba19 | |||
| b89bcd31d9 | |||
| a78d71ee8b | |||
| 9e7138ace5 | |||
| 50a94daec7 | |||
| 401c3918af | |||
| eb842353cc | |||
| 6c67a4a6b1 | |||
| 3a385f679b | |||
| 30b6a30fc5 | |||
| 6dd738d91c | |||
| 61b2e99257 | |||
| 84d8b082c2 | |||
| fc26ef3e44 | |||
| 32eaeaaf36 | |||
| 8de5089b84 | |||
| 3d7b0b6a0b | |||
| 04e9baae17 | |||
| 8a93ea7376 | |||
| fa2a2c2234 | |||
| 36154d7b10 | |||
| 5fcadbef9b | |||
| ce9e5c4c84 | |||
| d6fe0776a2 | |||
| d5fd9a6ce9 | |||
| 32fc008943 | |||
| 78545d38dc | |||
| 620c7e403d | |||
| 8ba0a10294 | |||
| 8b0a1de92f | |||
| b776a4d148 | |||
| a0dcb79a3a | |||
| 63e1fa2418 | |||
| f2d364aa8a | |||
| 9eeb7a2fc4 | |||
| 7144188368 | |||
| 2525edca20 | |||
| 279842d017 | |||
| 62323727a8 | |||
| 645a04aec3 | |||
| b8f0063629 | |||
| 07104d2d7d | |||
| 68aba326e1 | |||
| 9b0f6b2a9c | |||
| 384b7357cd | |||
| 4c039afe84 | |||
| 4e96e013ac | |||
| 62fe14251b | |||
| f7acfa8736 | |||
| 0a5bb85f2c | |||
| 0423078b67 | |||
| 1e250927a2 | |||
| 711ffb5c62 | |||
| 2265903961 | |||
| 65cdea5cfe | |||
| e3234d5671 | |||
| 4dd196bbc6 | |||
| 0b85e10148 | |||
| a35dd03e50 | |||
| 4a1cded0fd | |||
| 5c87943196 | |||
| f09b334e86 | |||
| 985561c522 | |||
| 0b7c79b488 | |||
| b3d8eb3104 | |||
| b6cb4e3661 | |||
| 031a342e60 | |||
| 023d869ffd | |||
| 4dcaaec5a3 | |||
| 614587cb7c | |||
| 1d750653ab | |||
| a278e31c9f | |||
| 39a02452d2 | |||
| 2016740b47 | |||
| 84c8525bc7 | |||
| 4feb893c3f | |||
| a30af17cb8 | |||
| 1d41fae3ca | |||
| a31694c45a | |||
| bb015165bc | |||
| da53d2f0bf | |||
| a80e94f246 | |||
| a34dd526f2 | |||
| 38a9332ce1 | |||
| 956939e79b | |||
| 227a0375e7 | |||
| 8afe521a85 | |||
| a1e3d57d9e | |||
| c3dcf78497 | |||
| 3edeb401a7 | |||
| f267677ce5 | |||
| c3773ecd9f | |||
| 51f84140fc | |||
| b88cec9d5f | |||
| e6b7e409ce | |||
| 422dbf746f | |||
| 7e3d2d8ea7 | |||
| 12d99c8026 | |||
| a75432c9ca | |||
| bc87b99853 | |||
| c2d9acd82e | |||
| afcea0d1ec | |||
| 0a2e7468d0 | |||
| d725dd805d | |||
| c8ac2db9f8 | |||
| f1b988d04b | |||
| e24344bde1 | |||
| 565266a205 | |||
| d76006aea2 | |||
| 36b89e78bc | |||
| 4c499f8417 | |||
| 989a5462d8 | |||
| 4ffba555f3 | |||
| 34d0a3591d | |||
| 01a0cbe628 | |||
| f2a31c5e21 | |||
| 7a78d5afff | |||
| c2d59695ed | |||
| 546af36469 | |||
| b7b6e232ce | |||
| b7d9439bdc | |||
| a1cc97be8d | |||
| 0b3d4164fe | |||
| d7231c1801 | |||
| 017bd482f1 | |||
| c763583d33 | |||
| 48f9384a82 | |||
| 2f8f56c191 | |||
| c53039ed41 | |||
| adced2cf58 | |||
| 4dc224d3ff | |||
| c66be9025d | |||
| 588614da96 | |||
| a59c66fd49 | |||
| 651ec98abc | |||
| 59337acc04 | |||
| 769f767b05 | |||
| 19a1e80ba8 | |||
| 58d92222ae | |||
| 5b22717119 | |||
| 1f747eb73a | |||
| 4f33019ee9 | |||
| 36e9700f16 | |||
| 843b580a40 | |||
| 5d21b18d82 | |||
| 0d30ef8540 | |||
| e33b064e3d | |||
| ef4e2489ce | |||
| df5beefe8d |
+19
-6
@@ -1,6 +1,19 @@
|
||||
|=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=|
|
||||
| UnrealIRCd 3.0 |
|
||||
| Configuration |
|
||||
|=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=|
|
||||
| http://unreal.tspre.org |
|
||||
|=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=|
|
||||
Welcome to the UnrealIRCd configuration program. This program
|
||||
will help you compile your IRC server by asking you questions
|
||||
regarding your system and how you want the ircd to function.
|
||||
|
||||
If you need help setting up your server, mail
|
||||
supporters@lists.unrealircd.org or ask on IRC:
|
||||
/server irc.ircsystems.net, /join #unreal-support
|
||||
|
||||
Regardless, please read Unreal.nfo first along with all documentation
|
||||
and FAQ's in doc/. If you do not do this, we will NOT help you!
|
||||
|
||||
If the code is changed in any way, or the version string is modified,
|
||||
we will _NOT_ support the product. (Unless of course you got explicit
|
||||
permission from one of the UnrealIRCd coders.)
|
||||
|
||||
Finally, unofficial UnrealIRCd/32 builds (if it doesn't say "genuine"
|
||||
in the display) are _NOT_ supported.
|
||||
|
||||
-Luke (maintainer of UnrealIRCd 3.1.x)
|
||||
|
||||
@@ -0,0 +1,30 @@
|
||||
|
||||
Unreal3.1.4-Meadows Release Notes
|
||||
===================================
|
||||
|
||||
* This is yet another significant upgrade over the last version. Most notable
|
||||
compatibility wise is the backporting of the new host cloaking from 3.2.
|
||||
As a result of this, we strongly recommend that you convert all of your servers
|
||||
to 3.1.4 and avoid running a network with mixed versions. They'll link fine
|
||||
and operate okay, but the differences in cloaking will make it easier for
|
||||
individuals to evade bans by simply switching servers.
|
||||
|
||||
* Also, before this version if a 3.2 server with IPv6 enabled was linked to the
|
||||
network, and a client connected using IPv6, it caused 3.1.x servers to segfault,
|
||||
as the cloaking routine was unable to deal with IPv6 format addresses. This is
|
||||
also corrected in this version
|
||||
|
||||
* Please Note: There have been a couple of configuration file changes! This is
|
||||
IMPORTANT. Your IRCd WILL NOT START if you don't change the cloak key values found
|
||||
in unrealircd.conf. Additionally, it would be prudent to note that there is a
|
||||
new directive in unrealircd.conf, exempt_all, which permits exempt lines in
|
||||
ircd.conf to match glines in addition to klines. It defaults to 1. Finally, both
|
||||
version numbers in the .network file and unrealircd.conf have been changed. In
|
||||
unrealircd.conf, because of the 4 new directives. In the .network file because
|
||||
we removed techadmin, and the host directive for it. We will NOT bring techadmin
|
||||
back. If you don't like it, readd it yourself, and be sure to note that we won't
|
||||
provide support for modified versions of Unreal.
|
||||
|
||||
* The rest of the changes can be found (obviously) in the Changes file.
|
||||
|
||||
* Finally, read Unreal.nfo as usual AND THE DOCS in doc/.
|
||||
@@ -0,0 +1,17 @@
|
||||
|-------------------------------------------------------------------------|
|
||||
| Congratulations on your new SSL self-signed certificate for your IRCd. |
|
||||
| However, wouldn't it be better that you get your certifcate signed by |
|
||||
| some kind of Certification Authority (CA), so your users can check that |
|
||||
| they are really connected to the real server, so they feel secure? |
|
||||
| |
|
||||
| An initiative has been started, to help this problem, as more and more |
|
||||
| SSL-enabled IRC servers will be started in the future, and people will |
|
||||
| have trouble authenticating that they are really at the right server. |
|
||||
| This initiative is called OpenIRC CA - They offer you to sign |
|
||||
| SSL certificates for use with your IRCd for free, |
|
||||
| so your users can be sure that they can trust you and your server. |
|
||||
| To get a signed certificate from them please visit the website |
|
||||
| http://www.openirc-ca.eu.org |
|
||||
| | Press enter to continue |
|
||||
---------------------------------------------------------------------------
|
||||
|
||||
@@ -0,0 +1,17 @@
|
||||
|
||||
_ _ _ ___________ _____ _
|
||||
| | | | | |_ _| ___ \/ __ \ | |
|
||||
| | | |_ __ _ __ ___ __ _| | | | | |_/ /| / \/ __| |
|
||||
| | | | '_ \| '__/ _ \/ _` | | | | | / | | / _` |
|
||||
| |_| | | | | | | __/ (_| | |_| |_| |\ \ | \__/\ (_| |
|
||||
\___/|_| |_|_| \___|\__,_|_|\___/\_| \_| \____/\__,_|
|
||||
|
||||
Update Script v2.0
|
||||
|
||||
What download program do you want to use?
|
||||
-----------------------------------------
|
||||
|
||||
Type "wget" for wget
|
||||
Type "lynx" for lynx
|
||||
|
||||
>
|
||||
Vendored
+52
@@ -0,0 +1,52 @@
|
||||
--leave-preprocessor-space
|
||||
--dont-break-procedure-type
|
||||
--no-space-after-function-call-names
|
||||
--brace-indent0
|
||||
--indent-level8
|
||||
-ip8
|
||||
--dont-line-up-parentheses
|
||||
--continuation-indentation4
|
||||
--case-indentation2
|
||||
--no-space-after-casts
|
||||
--blank-lines-after-procedures
|
||||
--no-blank-lines-after-declarations
|
||||
--braces-on-struct-decl-line
|
||||
--paren-indentation0
|
||||
--case-brace-indentation0
|
||||
--line-length80
|
||||
--declaration-indentation5
|
||||
-T size_t
|
||||
-T aClass
|
||||
-T TS
|
||||
-T aClient
|
||||
-T aServer
|
||||
-T anUser
|
||||
-T aChannel
|
||||
-T Mode
|
||||
-T aConfItem
|
||||
-T aMessage
|
||||
-T aMessageTree
|
||||
-T aGline
|
||||
-T aListingArgs
|
||||
-T snomask_t
|
||||
-T n_short
|
||||
-T n_long
|
||||
-T n_time
|
||||
-T u_char
|
||||
-T u_short
|
||||
-T u_long
|
||||
-T u_int
|
||||
-T dbuf
|
||||
-T dbufbuf
|
||||
-T aHashEntry
|
||||
-T Link
|
||||
-T Dlink
|
||||
-T VOIDSIG
|
||||
-T aHostent
|
||||
-T ResRQ
|
||||
-T aCache
|
||||
-T CacheTable
|
||||
-T cainfo
|
||||
-T reinfo
|
||||
-T RETSIGTYPE
|
||||
-T OPT_TYPE
|
||||
@@ -1,2 +0,0 @@
|
||||
List of helpers in the alpha/beta phase:
|
||||
* Headbang, Alpha/beta tester
|
||||
@@ -1,315 +1,423 @@
|
||||
/*
|
||||
* UnrealIRCd Changes File - (C) Carsten Munk 1999
|
||||
/*
|
||||
* UnrealIRCd Changes File - (C) Carsten Munk 1999-2002 &
|
||||
* The UnrealIRCd Team
|
||||
*
|
||||
* $Id$
|
||||
*
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 1, or (at your option)
|
||||
* any later version.
|
||||
*
|
||||
* any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||
*
|
||||
*/
|
||||
*** BUGS ***
|
||||
* When a +q sets +L it sets it but displays an error msg
|
||||
(??:
|
||||
*** Stskeeps (cmunk@rox-56506.fyremoon.net) has joined channel #a
|
||||
*** #a 951758184
|
||||
*** Mode change "+q Stskeeps" on channel #a by Stskeeps
|
||||
*** Mode change "-oaATcfebW" for user Stskeeps by Stskeeps
|
||||
*** Channel mode +l <max> is requried for +L to be set
|
||||
*** Mode change "+l 1" on channel #a by Stskeeps
|
||||
*** Mode change "+L #moo" on channel #a by Stskeeps
|
||||
)
|
||||
*
|
||||
*/
|
||||
|
||||
[ Unreal4.0 ]
|
||||
- Fixed a _serious_ bug in SERVER command, reported by Valen, Forrester,
|
||||
M0rpheus, JK, and Hiten.
|
||||
|
||||
*** Unreal3.0-Morrigan(fix) ***
|
||||
* NOTE: If your system clock is wrong you will have problems with TOPICs
|
||||
being set on all servers. That is because TOPICs which are _new_ are
|
||||
taken instead of old
|
||||
- Fixed +f not banning when * is specified
|
||||
- Fixed +q (chan owners) not being able to set +L (partially fixed)
|
||||
- Fixed /tsctl segfaulting the server
|
||||
- Fixed the killing bug. The cause was that when m_mode was called in the
|
||||
NICKv2 parsing routine, it sent out a :nick MODE :+x which was an unknown
|
||||
nick, and the NICK was being sent just after, causing it to kill the user
|
||||
(was a _huge_ bastard to find)
|
||||
- If someone changes their nick to irc and WebTV is enabled, problems
|
||||
occur FIX: deny change to that in m_nick (bug fixed)
|
||||
- Added lost unrealircd.bmp.gz file
|
||||
[ Unreal3.1.3 ]
|
||||
-----------------------------------------------------------
|
||||
Initial release, based on 3.1.1 code and lots of 3.2-beta
|
||||
functions that are actually sane
|
||||
-----------------------------------------------------------
|
||||
resolv.h line 76
|
||||
#if ((__GNU_LIBRARY__ == 6) && (__GLIBC__ >=2) && (__GLIBC_MINOR__ >= 2))
|
||||
#define res_init __res_init
|
||||
#endif
|
||||
Fixes compile error w/ later glibc
|
||||
--Luke
|
||||
===================================
|
||||
|
||||
*** Unreal3.0-Morrigan ***
|
||||
- Added the new GUI main coded by DrBin, first coding by {X}
|
||||
- Added v64net.network
|
||||
- Added 972-scripterz.network
|
||||
- Made NO_FDLIST compilation work as well
|
||||
- Fixed DCCDENY bug (p->mask, p->mask) (*slaps sts*)
|
||||
- +F not flood off if netsplit happens
|
||||
- Made TODO, made "Unable to write tunefile" show an error if *nix
|
||||
- Added stormdancing.network
|
||||
- send.c sendto_realops problem solved
|
||||
- Fixed a segfaulting bug in /tsctl reported by x-wartech
|
||||
- Fixed segfaulting bug with -oh bounce stuff in channel.c reported by Dana
|
||||
- Fixed +q bug reported by several people, inc DrBin
|
||||
- Added networks/fireirc.network
|
||||
- Fixed +f * option not banning correctly
|
||||
- Fixed fdlist on win32 problem
|
||||
- Added /HTM for high traffic mode status (partially added)
|
||||
- Added networks/digitalirc.network
|
||||
- G:lines expire every 5th second now
|
||||
- /stats T now show incoming and outgoing rate
|
||||
- Some HTM stuff
|
||||
- Some release stuff
|
||||
- Fixed up some NICKv2 stuff, more faster stuff:)
|
||||
- Moved old Changes stuff to Changes.old
|
||||
- Made so /path ~path or ".."'s in T:lines arent possible
|
||||
- Made it so certain files ie ircd.conf,oper.motd, unrealircd.conf, ircd.log
|
||||
can't be used in a T:line
|
||||
- Added dynconf option to specify SOCKS kill message & ban message & bantime
|
||||
- Fixed SOCKS exception bug (!!)
|
||||
- Fixed some indention in dynconf.c and a memory leak problem (what were you
|
||||
smoking code?:P)
|
||||
- iNAH bugfixes( call them fixes and ill smash you;))
|
||||
- Recoded color striping to be ALOT more accurate and faster
|
||||
- Using hybrid IsMember()
|
||||
- Fixed +F bug (again)
|
||||
- Added FDlists, does those work on win32?
|
||||
- De-Potvinized addline, addmotd, and addomotd (should run faster)
|
||||
- Made addline, addmotd, addomotd display to the user what was written
|
||||
- Removed /snote and /snotes (no one used them)
|
||||
- GPL stuff
|
||||
- Some comestic tkl fixes..
|
||||
- Fixed +F bug
|
||||
- Made +F connect notices more bandwidth friendly,
|
||||
only bad things:
|
||||
- Not showing port in connect +F
|
||||
- On servers rejoin you get +F flooded (will be fixed in an later
|
||||
release)
|
||||
- Made ALLOW_CHATOPS a unrealircd.conf option rather than a #define
|
||||
- Fixed a bug where you had to be +AC to see adminchats
|
||||
- chatops, adchat, nachat, techat, wallops no longer require a leading :
|
||||
- More TKL stuff..
|
||||
- m_chatops uses sendto_umode now, and also removed sendto_chatops
|
||||
- Remote rehashes now support the - flags, ex -dcc, -vhost etc
|
||||
- Fixed more G:Line stuff
|
||||
- Fixed G:Line bug with not expiring correctly - thanks Dark-Prince for
|
||||
being guinea pig, and to JojoII for finding it
|
||||
- Fixed +ix remote bug reported by RevPsych
|
||||
- /list can now make opers see +s channels
|
||||
- Did some SJOIN2 work..
|
||||
- Fixed /whois bug with WHOIS_Channels
|
||||
- Fixed a minor, yet annoying bug in the dynconf version system, thanks to GoNiS
|
||||
- Fixed bug: EpicII stripping too much of /oper fail notice
|
||||
- Fixed bug: SJOIN TS Change notice should not show when (ts == oldts)
|
||||
- Fixed WEBTV_NONOTICE bug with CTCPs - thanks rjameson
|
||||
- Fixed +h can +o themselves bug, thanks to Mikey, HERZ and many other
|
||||
people
|
||||
- Added TSP client/server
|
||||
- Fixed m_netinfo stuff..
|
||||
- Fixed a bug with the new m_names and +h (chanmode)
|
||||
- Removed .CHANGES.NEW2 - not in use anyways
|
||||
- Now using new m_names from bahamut by Lucas Madar (DarkRot)
|
||||
- Removed zombie code
|
||||
- Fixed up the MODE_ADMINONLY code
|
||||
- Fixed some bugs in can_send
|
||||
- Added TS Change notice to SJOIN
|
||||
- Fixed a +f bug, and fixed SJOIN resynch bug (serious)
|
||||
- Fixed up the remote rehash code a bit
|
||||
- Updated conf.doc
|
||||
- Added some WebTV stuff, read config.h
|
||||
- Removed the NO_DEFAULT_INVISIBLE define from config.h
|
||||
- Added MODE_I to unrealircd.conf, auto setting of +i when a user connects
|
||||
- Fixed a minor unrealircd.conf bug
|
||||
- Fixed up all SJOIN fuzz, made RESYNCMODES be 12
|
||||
- Fixed this bug:
|
||||
* After sync on other server
|
||||
*** Stskeeps is using modes +oiwghsaHATcCreWIdt
|
||||
should be:
|
||||
Stskeeps is using modes +owghskaATcfrebW
|
||||
parse.c line 404
|
||||
removed if (lifesux)
|
||||
--Luke
|
||||
===================================
|
||||
|
||||
- Made unrealircd.conf option to hide U:lines from non-opers in /links
|
||||
- Updated the unrealircd.conf and all the .network files to support the
|
||||
version system, and for unrealircd.conf to support HIDE_ULINES
|
||||
- Made a versioning system for unrealircd.conf and *.network (This will
|
||||
allow us to makesure _old_ versions are not being used when new features
|
||||
are added to the files)
|
||||
- TKL/zap bugfix!!
|
||||
- Channel mode +H errors in numeric 459 now, coded by Rev_Null- thanks
|
||||
- Moved RPL_WHOISSPECIAL to 320
|
||||
- Another TKL bug.
|
||||
- TKL bug fixed
|
||||
- Made TKL backwards compatible
|
||||
- TKLs are now syncing
|
||||
- Bug fixes..
|
||||
- Fixed TKL<->GLINE protocol problems
|
||||
- Renamed chmode +I to +V as it screwed up some clients thinking it was
|
||||
IRCnet..
|
||||
- Took out m_fjoin, not in use
|
||||
- Fixed up +e so it works with mIRC channel dialog now
|
||||
- Added channel mode +H, only setable by SkoAdmin, makes +I users unable to
|
||||
join channel - code&thanks to RevPsych & Rev_Null
|
||||
- Removed all MegaIRC references
|
||||
- Fixed VHOST desynch bug..
|
||||
- Removed aGline record
|
||||
- Fixed some idention in msg.h
|
||||
- Fixed warning in s_misc.c
|
||||
- Removes /ns, /cs, /ms, /os, /hs commands (not in use)
|
||||
- Fixed bug where /statserv needed a : for more than one param
|
||||
- Fixed so that /trace only cloaks hostname if it is an oper
|
||||
- Fixed token non case sensitive problem
|
||||
- Fixed warning in mp2parv..
|
||||
- Fixed DEBUGMODE compile bug..
|
||||
- Fixed BOTMOTD bug..
|
||||
- Fixed some bugs (1.16->1.17) and removed aClient->user->host and replaced
|
||||
it by realhost. Saves memory
|
||||
- Fixing up for beta release
|
||||
- Updated networks/networks.ndx
|
||||
- Reason in temp and static K:lines like |kc.gline will show user klined
|
||||
file kc.gline (only legal names are |kc.*)
|
||||
- Added e:lines to the docs
|
||||
- Added solargalaxy.network
|
||||
- Fixed a minor +S (chanmode) bug
|
||||
- Fixed a bug where if a channel was +n it would display a
|
||||
must be +v msg rather than no external msgs (thank Potvin for that one)
|
||||
- Made dccdeny's notice +e users when a file is rejected
|
||||
- Added NOTICE in m_sajoin/m_sapart (You were forced to join/part #)
|
||||
- Added e:lines, SOCKS check exception lines
|
||||
format: e:ip (not hostname):*:*
|
||||
- Added doc/faq entry about debian on sparcs..
|
||||
- added debian sparc support (read doc/faq)
|
||||
- SJOIN sortof working. Straight testing needed
|
||||
- made /botmotd use NOTICE AUTH (so all bots will see it)
|
||||
- fixed NICKv2 umode field when no mode bug..
|
||||
- added T (TechAdmin) to the SMO flags
|
||||
- fixed a little _mistake_ in the /dusers error message
|
||||
- fixed a bug where +c (chanmode) blocked all privmsgs :P
|
||||
- m_sjoin compiled, need to make it unreal3.0 compatible
|
||||
- added include/sjoin.h for SJOIN stuff
|
||||
- Deleted :server prefix from SWHOIS burst.
|
||||
- Added UMODE_SETHOST (+t), and set NICKv2 up to only send when a real
|
||||
virthost. Spares bandwidth:) +t is _not_ user setable
|
||||
- Removed UMODE_COFOUND, UMODE_WMASTER, not in use anymore.
|
||||
- Fixed up MODE_LINK, MODE_FLOODLIMIT syncronization,
|
||||
you can mode do /mode # -lf without parameters
|
||||
- Gave Unreal correct orgin (df4.6.5)
|
||||
- Gave /stats N,S a header
|
||||
- Added network solarxtreme.network
|
||||
- /stats N returns .network file information
|
||||
- /stats S returns unrealircd.conf information
|
||||
- Added a virtualhost field to NICKv2
|
||||
- Updated conf.doc
|
||||
- Removed all traces of CLIENT_COMPILE
|
||||
- Some Linux-ALPHA support.. i need accces to a alpha box :P
|
||||
Fixes done by Ramuh (irc.risanet.com) originally for UltimateIRCd,
|
||||
thanks to ShadowMastr for forwarding me..
|
||||
- Removed all traces of services.h..
|
||||
- NICKv2 working.. :)
|
||||
- Updated doc/faq slightly
|
||||
- Updated doc/example.conf with new lines an Oflags
|
||||
- Implemented NICKv2 (umode field in NICK)
|
||||
- Similar topics are sent along now .. was a bug ? (thanks Headbang,
|
||||
WonderWal, etc)
|
||||
- Fixed up compile warnings
|
||||
- Fixed channel.c warning in can_join
|
||||
- Removed SHOW_PASSWORD define, not in use anymore
|
||||
- Removed USE_CASETABLES define, not in use anymore
|
||||
- Removed TIMED_KLINE define, not in use anymore
|
||||
- Added OPER_NO_HIDING define
|
||||
- Removed RelicNet +z, unreal isnt at use at relicnet anyways and
|
||||
i still dont believe that potvin _thought_ he could make them use it?
|
||||
hah!
|
||||
- Added REMOVE_ADVERTISING define (off by default) , check include/config.h
|
||||
and src/s_user.c (m_message) for more info (by ice)
|
||||
- Fixed channel name similarity bug reported by IXpfah
|
||||
- Comment on Nickflood/joinflood thing (stskeeps): Services can do that?
|
||||
- Fixed up some version.c.SH stuff
|
||||
- Added SJOIN protoctl for preparing for SJOIN
|
||||
- Split up PROTOCTL_SUPPORTED in PROTOCTL_SERVER and PROTOCTL_CLIENT
|
||||
- Added networks/uzaynet.network
|
||||
- NOTICE auth, tells you that it found a bad SOCKS.
|
||||
- Made umode +d work correctly
|
||||
- Made it so users can't see the RPL_WHOISCHANNELS for a
|
||||
+I user
|
||||
- Fixed a bug in +I where a +I user couldn't see themself
|
||||
in /names
|
||||
- Fixed a minor bug in /chgident
|
||||
- Added bot.motd support on +B and /botmotd
|
||||
- /join 0 now shows "Left all channels" in reason why left
|
||||
- Added +H umode, hides oper status
|
||||
in /who /who 0 o /whois (so opers
|
||||
can spy on a channel and no one knows
|
||||
- win32: s_socks.c small problem fixed
|
||||
- Fixed a bug in the new zline code
|
||||
- Fixed a typo in the Win32 socks check (oops)
|
||||
- (development) added TODO.maybe
|
||||
- Added /vhost login password
|
||||
read the s_extra.c on vhost.conf format
|
||||
- vhost.conf, added /rehash -vhost
|
||||
- Removed s_user.c/m_message warning
|
||||
- SOCKS check functioning
|
||||
- Removed src/list2.c - not in use
|
||||
- Removed networks/agitated.network, no longer existing network
|
||||
- Added networks/bunker7.network
|
||||
- Deleted ircdbug
|
||||
- Renamed LICENCE to LICENSE
|
||||
- /version shows alpha while in development..
|
||||
- (development) added include/stamp.h for static development stamping
|
||||
- send.c optimations from ircu :)
|
||||
- Added codemastr as offical developer
|
||||
- Now using GPL v2
|
||||
- NOTICE AUTH problem solved, i hope
|
||||
- Took out UNIXPORT code
|
||||
- Removed traces of R_LINE* in config.h
|
||||
- SOCKS check in progress
|
||||
- Fixed the Blowbug
|
||||
- TSCTL svstime works now :P correctly that is
|
||||
- nick is using modes +rx
|
||||
instead of "nick is using modes [+rx]
|
||||
- Removed some lame brackets
|
||||
- /close sendto_ops() now
|
||||
- Fixed small SVSNICK bug (.)
|
||||
- Fixed +L resync bug..
|
||||
- df4.6.7 SVSNICK - fixes desynchs
|
||||
- Took out all the R_LINES code
|
||||
- Took out all SERVICES_MODE code
|
||||
- Took out all USE_SERVICES code
|
||||
- Added .crjava patch by Fish read include/config.h for more info..
|
||||
- Added IRCu .ack patch you can now use "ONE" in password line in I:Lines
|
||||
to ensure only one connecting from that kind of I:line per IP.
|
||||
- /Lusers <mask> is not working anymore.. took out possible flood thing..
|
||||
- /List - IRCops should be able to see +s now (thanks Headbang and others)
|
||||
- RPL_YOURHOST - Your host is server, running version x
|
||||
Removed [hostname].
|
||||
- RPL_MYINFO now selfupdates when adding new modes (channel and user)
|
||||
- Fixed umodestring
|
||||
- Umode +d avail to everyone now:P
|
||||
- Fixed channel mode +r defunctional bug
|
||||
(thanks to gdb and the coder-com people who learnt me to use gdb:P)
|
||||
- SVSFLINE <+/-/*> [mask] [reason]
|
||||
+ = add (mask + reason)
|
||||
- = delete (mask)
|
||||
* = wipe all services F:Lines
|
||||
(13/12/1999 working.)
|
||||
- Fixed server<->server token problem
|
||||
- Moved /info data to m_info_send
|
||||
- Made SIGSEGV do core too.. MAIL THEM TO ME ALONG WITH THE src/ircd FILE
|
||||
if it tells ya to!
|
||||
- Fixed "GLINE @moo.org 10 :moo\r" G:Line bug (they haunt me)
|
||||
- New F:Line system (dccdeny.conf)
|
||||
- Removed OLD F:lines
|
||||
- Fixed up /stats f/F
|
||||
- Made /rehash -dcc = rehashes dccdeny.conf
|
||||
/rehash -dyn = rehashes dynamic configuration (RISK OF TERMINATE:P)
|
||||
/rehash -rest = rehashes channel restrict config chrestrict.conf
|
||||
- New channel restrict system
|
||||
(chrestrict.conf)
|
||||
# = comment
|
||||
allow #moo = can join #moo
|
||||
msg message = shows message when cannot join cos of allow
|
||||
s_bsd.c
|
||||
first instance of HighscoreFD
|
||||
removed the define
|
||||
removed rhighest_fd as well
|
||||
removed all instances of HighscoreFD()
|
||||
changed rhighest_fd + 1 to MAXCONNECTION
|
||||
(100% cpu fix from 3.1.1)
|
||||
--Luke
|
||||
===================================
|
||||
|
||||
channel.c
|
||||
Took m_sjoin from 3.2
|
||||
removed lp2
|
||||
changed Member *lp to Link *lp;
|
||||
Changed other stuff (document later?)
|
||||
--Luke
|
||||
===================================
|
||||
|
||||
s_serv.c
|
||||
replaced m_server_estab with one from u32june12
|
||||
--Luke
|
||||
===================================
|
||||
|
||||
Fixed missing : on line 419 s_err.c (numeric 379)
|
||||
--Luke
|
||||
===================================
|
||||
|
||||
stole all m_chg* and m_set* functions from u32june12
|
||||
in s_unreal.c
|
||||
--Luke
|
||||
===================================
|
||||
|
||||
stole sdesc from latest beta in s_unreal.c
|
||||
--Luke
|
||||
===================================
|
||||
|
||||
line 1683 in s_serv.c
|
||||
added me to /info
|
||||
--Luke
|
||||
===================================
|
||||
|
||||
line 1342 res.c
|
||||
added line sts foolishly deleted that broke win32 resolver
|
||||
--Luke
|
||||
===================================
|
||||
|
||||
line 2161 in channel.c
|
||||
fixed mode segfault bug
|
||||
--Luke
|
||||
===================================
|
||||
|
||||
line 152, fixed #endif error
|
||||
aln.c
|
||||
--Luke
|
||||
===================================
|
||||
|
||||
-------------------------------------------------------------
|
||||
Beta2ish
|
||||
-------------------------------------------------------------
|
||||
line 341 ircd.c
|
||||
win32 hates SIGQUIT, #ifndef it out.
|
||||
--Zogg
|
||||
===================================
|
||||
|
||||
line 1298 s_bsd.c
|
||||
set_blocking() won't compile under msvc.
|
||||
Not important, #ifndef'd out for win32
|
||||
--Zogg
|
||||
===================================
|
||||
|
||||
line 234 in Makefile.dist
|
||||
fixed perms on ssl certs
|
||||
--Luke
|
||||
===================================
|
||||
|
||||
Added Zogg's win32 makefile that actually works.
|
||||
--Luke
|
||||
===================================
|
||||
|
||||
------------------------------------------------------------
|
||||
Beta3ish
|
||||
------------------------------------------------------------
|
||||
Changed line 179 in ssl.c to
|
||||
set_blocking(cptr->fd, NULL);
|
||||
otherwise random segfaults on ssl connect occur
|
||||
--Luke
|
||||
===================================
|
||||
|
||||
Changed line 223 in ssl.c to
|
||||
strcat(buf, (char *) my_itoa(bits));
|
||||
otherwise got warning on compile in bsd
|
||||
--Luke
|
||||
===================================
|
||||
|
||||
Put in rest of patch for mode propagation bug
|
||||
*whack*
|
||||
--Luke
|
||||
===================================
|
||||
|
||||
--------------------------------------------------------------
|
||||
Beta4
|
||||
--------------------------------------------------------------
|
||||
|
||||
Stole StripColors from 3.2-beta, resolves memory
|
||||
leak in 3.1.3
|
||||
--Luke
|
||||
===================================
|
||||
|
||||
Rearranged doc/ slightly (moved some more stuff to
|
||||
History
|
||||
--Luke
|
||||
===================================
|
||||
|
||||
s_user.c line 1946 - (char *)StripColors as per
|
||||
new StripColors function from 3.2-beta
|
||||
--Luke
|
||||
===================================
|
||||
|
||||
stole add_exbanid and add_banid from devel
|
||||
(other stuff was just weird)
|
||||
--Luke
|
||||
===================================
|
||||
|
||||
line 4748 in s_user.c for cases i and o added fix (svsmode)
|
||||
line 4651 too (svs2mode)
|
||||
for svsmode bug (thanks codemastr)
|
||||
--Luke
|
||||
===================================
|
||||
|
||||
line 829, 1035 in s_kline.c gline bug resolved
|
||||
(again codemastr)
|
||||
--Luke
|
||||
===================================
|
||||
|
||||
line 1583 res.c fixed dns l, only opers!
|
||||
(again codemastr)
|
||||
--Luke
|
||||
===================================
|
||||
|
||||
Modified ./Config to play nice with BSD
|
||||
(and yes, God forbid, SunOS 5.x *shudder*)
|
||||
--Luke
|
||||
===================================
|
||||
|
||||
added -lsocket when compiling fdmaxcounter
|
||||
in sunos 5.x, may produce crack induced result
|
||||
but at least it compiles now
|
||||
--Luke
|
||||
===================================
|
||||
|
||||
145, list.c added passwd fix
|
||||
deled cptr->passwd; above (line 135ish)
|
||||
--Luke
|
||||
===================================
|
||||
|
||||
*** 3.1.3 Released ***
|
||||
|
||||
[ Unreal 3.1.4 ]
|
||||
--------------------------------------------------
|
||||
The fixes and backports continue. Strange how much
|
||||
time maintaining Unreal can eat up...
|
||||
|
||||
Beta1
|
||||
--------------------------------------------------
|
||||
|
||||
Removed tech admin.
|
||||
This feature is useless bloat. If you want it back
|
||||
do NOT complain to any of the Unreal coders, feel
|
||||
free to reimplement it yourself. Do note, however,
|
||||
that if you modify the code in any way, shape, or
|
||||
form you immediately give up your ability to
|
||||
receive any type of support from us.
|
||||
--Luke
|
||||
===================================
|
||||
|
||||
Line 703 in ircd.c fixed...breaks
|
||||
gcc3 compatibility (thanks to shellz.net's
|
||||
NuC for reporting)
|
||||
--Luke
|
||||
===================================
|
||||
|
||||
Fixed issue in s_user.c where +H opers
|
||||
could be identified by normal users in
|
||||
a trivial manner (thanks to Magnet from
|
||||
epiknet)
|
||||
--Luke
|
||||
===================================
|
||||
|
||||
s_user.c fixes
|
||||
basically, /whois doesn't display snotice
|
||||
if you're +W and do it to yourself
|
||||
/who the same
|
||||
and "is a secure connection" is no longer
|
||||
bold (it was lame)
|
||||
--Luke
|
||||
===================================
|
||||
|
||||
s_serv.c fixes
|
||||
fixed map bug that allowed you to trivially
|
||||
find a hidden U lined server (hopefully)
|
||||
--Luke
|
||||
===================================
|
||||
|
||||
rmed zip.c (not used at all.)
|
||||
and zip.h and anything related to zip
|
||||
--Luke
|
||||
===================================
|
||||
|
||||
E lines now match glines, zlines, shuns
|
||||
(if you say yes in config)
|
||||
--Luke
|
||||
===================================
|
||||
|
||||
map bug still exists (earlier fix made it
|
||||
worse)...removed.
|
||||
--Luke
|
||||
===================================
|
||||
|
||||
/adchat bug that sends it to coadmins twice
|
||||
(coadmins are actually server admins as far
|
||||
as the ircd is concerned for most purposes, no
|
||||
need to send to both UMODES)
|
||||
--Luke
|
||||
===================================
|
||||
|
||||
rewrote m_kick almost entirely (it sucked)
|
||||
--Luke
|
||||
===================================
|
||||
|
||||
newdns.c removed - another useless file
|
||||
--Luke
|
||||
===================================
|
||||
|
||||
------------------------------------------------
|
||||
Beta2
|
||||
------------------------------------------------
|
||||
|
||||
ripped cloak.c from 3.2, and added Config
|
||||
options as needed.
|
||||
--Luke
|
||||
===================================
|
||||
|
||||
Fixed 3 svsnoops bugs, so it appears to be
|
||||
actually working now...
|
||||
--Luke
|
||||
===================================
|
||||
|
||||
+S users no longer show channels in /whois
|
||||
--Luke
|
||||
===================================
|
||||
|
||||
Added a gzline command. I use it with bopm on
|
||||
my network all the time, and am getting
|
||||
sick of readding it after each new release.
|
||||
Additionally, I think it's a useful command
|
||||
for anyone to have.
|
||||
--Luke
|
||||
===================================
|
||||
|
||||
Revamped operoverride stuff so it's consistent
|
||||
and somewhat sane. (also made NetAdmin.Chat
|
||||
NetAdminChat to keep with other forms)
|
||||
--Luke
|
||||
===================================
|
||||
|
||||
Fixed m_kick more
|
||||
--Luke
|
||||
===================================
|
||||
|
||||
Made "is a bot.." not bold
|
||||
--Luke
|
||||
===================================
|
||||
|
||||
Fixed a bug with \r\n being mistakenly parsed
|
||||
wrong. Thanks to John_z
|
||||
--Luke
|
||||
===================================
|
||||
|
||||
Added temp patch to m_kline to stop segfault
|
||||
--Luke
|
||||
===================================
|
||||
|
||||
------------------------------------------------
|
||||
Beta3
|
||||
------------------------------------------------
|
||||
|
||||
Backported check_pings with loop.do_ban_check from 3.2
|
||||
--Stskeeps
|
||||
===================================
|
||||
|
||||
Added nice fix to HCN so that BOPM works natively
|
||||
(it would still be wise to mod bopm yourself
|
||||
and have it scan all clients by using +F, as I've
|
||||
done, but whatever.)
|
||||
--Luke
|
||||
===================================
|
||||
|
||||
Moved cloak key definitions to .network file
|
||||
--Luke
|
||||
===================================
|
||||
|
||||
omfg, a patch that resolved some really interesting
|
||||
problems with really long parameter modes has been
|
||||
applied. (this in itself is a great reason to
|
||||
upgrade)
|
||||
--Luke
|
||||
===================================
|
||||
|
||||
Moved exempt_all option to unrealircd.conf, no longer
|
||||
a #define in settings.h & ./Config option.
|
||||
--Luke
|
||||
===================================
|
||||
|
||||
Made stop code error more stupid-people friendly
|
||||
--Luke
|
||||
===================================
|
||||
|
||||
Added code that shows nick changes on entire net
|
||||
when umode +j (JUNK). Also, went through channel.c
|
||||
and made all snotices look "nicer"
|
||||
--Luke
|
||||
===================================
|
||||
|
||||
Moved cloak keys to unrealircd.conf, since the
|
||||
.network files are public domain (in general).
|
||||
Go lynch Stskeeps if you don't like it.
|
||||
--Luke
|
||||
===================================
|
||||
|
||||
Actually added sample lines to unrealircd.conf
|
||||
for EXEMPT_ALL and CLOAK_KEY_n. Also, changed
|
||||
version number on both that and the .network
|
||||
file, as both have changed since 3.1.3.
|
||||
--Luke
|
||||
===================================
|
||||
|
||||
Useful /who patch incorporated, thanks to
|
||||
larne
|
||||
--Luke
|
||||
===================================
|
||||
|
||||
Rewrote all of /who, fuck everyone's patches
|
||||
mine are better!
|
||||
--Luke
|
||||
===================================
|
||||
|
||||
More /who madness! I've added an h flag, similar
|
||||
to the o flag that you can append on the end
|
||||
for opers, so for instance say you /who *bob* h
|
||||
it will display real hosts instead of masked ones
|
||||
in the replies.
|
||||
--Luke
|
||||
===================================
|
||||
|
||||
Oper invisibility is no longer enabled by default
|
||||
but is a provided option in ./Config
|
||||
--Luke
|
||||
===================================
|
||||
|
||||
Changed information flag shown in /version. R now
|
||||
appears if invisibility is compiled in (even if
|
||||
disabled in unrealircd.conf)
|
||||
--Luke
|
||||
===================================
|
||||
|
||||
rmed Config.c (broken, severely) and networks.ndx
|
||||
--Luke
|
||||
===================================
|
||||
|
||||
Added win32-compile-guide in doc/ for people wanting
|
||||
to compile their own version for windows.
|
||||
--Luke
|
||||
===================================
|
||||
|
||||
Once again we global when anyone that's not a local
|
||||
oper opers. I like this, if you don't email me and
|
||||
maybe I'll add a conf option for it.
|
||||
--Luke
|
||||
===================================
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
# distribution without the author's prior consent.
|
||||
#
|
||||
# $Id$
|
||||
IRCD_VERSION="Unreal3.0"
|
||||
IRCD_VERSION="Unreal3.1.4 Meadows"
|
||||
CONF_DATE=`date`
|
||||
LAST_VERSION="very very old"
|
||||
#
|
||||
@@ -33,6 +33,7 @@ STRINGH=undef
|
||||
STRINGSH=undef
|
||||
RUSAGEH=undef
|
||||
NOINDEX=undef
|
||||
FORCECORE=define
|
||||
NSTRERROR=undef
|
||||
NSTRTOKEN=undef
|
||||
NSTRTOK=undef
|
||||
@@ -42,8 +43,15 @@ NINETNETOF=undef
|
||||
GETTIMEOFDAY=undef
|
||||
LRAND48=undef
|
||||
STRTOUL=undef
|
||||
OPENSSL=""
|
||||
OPENSSL_OTHERPLACE=""
|
||||
REGEXP=""
|
||||
NEEDSKIPNAME=""
|
||||
CRYPTOLIB=""
|
||||
CRYPTOIRCD=""
|
||||
OPENSSLPATH=""
|
||||
CCPATH=''
|
||||
STRCASECMP=undef
|
||||
SIGNAL=''
|
||||
BLOCKING=''
|
||||
TMP=/tmp/.Configtmp$$.c
|
||||
@@ -59,12 +67,11 @@ DIR=`pwd`
|
||||
DEFOPT="-O -g"
|
||||
DEFCFLAGS="$DEFOPT"
|
||||
DEFLIBS="none"
|
||||
MKPASSWDLIBS="-lcrypt"
|
||||
OSNAME="an unrecgonized operating system"
|
||||
#
|
||||
IRCNET=""
|
||||
NOSPOOF="1"
|
||||
NOSPOOF_SEED01="0x12345678"
|
||||
NOSPOOF_SEED02="0x9abcdef0"
|
||||
KLINE_ADDRESS=""
|
||||
DPATH="$DIR"
|
||||
SPATH="$DIR/src/ircd"
|
||||
@@ -72,6 +79,9 @@ MODE_X=""
|
||||
TRUEHUB=""
|
||||
CRYPT_OPER_PASSWORD=""
|
||||
CRYPT_LINK_PASSWORD=""
|
||||
CRYPT_ILINE_PASSWORD=""
|
||||
CRYPT_XLINE_PASSWORD=""
|
||||
ENABLE_INVISOPER=""
|
||||
LISTEN_SIZE="5"
|
||||
MAXSENDQLENGTH="3000000"
|
||||
BUFFERPOOL="(9 * MAXSENDQLENGTH)"
|
||||
@@ -96,13 +106,18 @@ fi
|
||||
|
||||
clear
|
||||
|
||||
if [ "$LAST_VERSION" != "$IRCD_VERSION" ] ; then
|
||||
if [ -r .CHANGES.NEW ] ; then
|
||||
more .CHANGES.NEW
|
||||
echo $n "[Enter to begin]"
|
||||
read cc
|
||||
clear
|
||||
fi
|
||||
if [ -r .RELEASE.NOTES ] ; then
|
||||
more .RELEASE.NOTES
|
||||
echo $n "[Enter to begin]"
|
||||
read cc
|
||||
clear
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ "$1" = "-n" ] ; then
|
||||
if [ "$LAST_VERSION" != "$IRCD_VERSION" ] ; then
|
||||
@@ -134,6 +149,8 @@ case "$OS" in
|
||||
OSNAME="FreeBSD 2.2.x"
|
||||
CRYPT_OPER_PASSWORD=""
|
||||
CRYPT_LINK_PASSWORD=""
|
||||
CRYPT_ILINE_PASSWORD=""
|
||||
CRYPT_XLINE_PASSWORD=""
|
||||
echo "You are using FreeBSD 2.2.x; do NOT crypt passwords at this time"
|
||||
;;
|
||||
*FreeBSD*2.2*)
|
||||
@@ -142,7 +159,19 @@ case "$OS" in
|
||||
OSNAME="FreeBSD 2.2"
|
||||
CRYPT_OPER_PASSWORD=""
|
||||
CRYPT_LINK_PASSWORD=""
|
||||
echo "You are using FreeBSD 2.2; do NOT crypt passwords at this time"
|
||||
CRYPT_ILINE_PASSWORD=""
|
||||
CRYPT_XLINE_PASSWORD=""
|
||||
echo "You are using FreeBSD 2.2; do NOT crypt passwords at this time"
|
||||
;;
|
||||
*FreeBSD*4.0*)
|
||||
DEFCFLAGS="$DEFOPT"
|
||||
DEFLIBS="-lcrypt"
|
||||
OSNAME="FreeBSD 4.0"
|
||||
CRYPT_OPER_PASSWORD=""
|
||||
CRYPT_LINK_PASSWORD=""
|
||||
CRYPT_ILINE_PASSWORD=""
|
||||
CRYPT_XLINE_PASSWORD=""
|
||||
echo "You are using FreeBSD 4.0; You can use encrypted passwords now."
|
||||
;;
|
||||
*FreeBSD*3*)
|
||||
DEFCFLAGS="$DEFOPT"
|
||||
@@ -150,6 +179,8 @@ case "$OS" in
|
||||
OSNAME="FreeBSD 3.x"
|
||||
CRYPT_OPER_PASSWORD=""
|
||||
CRYPT_LINK_PASSWORD=""
|
||||
CRYPT_ILINE_PASSWORD=""
|
||||
CRYPT_XLINE_PASSWORD=""
|
||||
echo "You are using FreeBSD 3.x; You can use encrypted passwords now."
|
||||
;;
|
||||
*FreeBSD*)
|
||||
@@ -158,14 +189,26 @@ case "$OS" in
|
||||
OSNAME="FreeBSD"
|
||||
CRYPT_OPER_PASSWORD=""
|
||||
CRYPT_LINK_PASSWORD=""
|
||||
CRYPT_ILINE_PASSWORD=""
|
||||
CRYPT_XLINE_PASSWORD=""
|
||||
echo "You are using FreeBSD ; do NOT crypt passwords at this time"
|
||||
;;
|
||||
*OpenBSD*2*)
|
||||
DEFCFLAGS="$DEFOPT"
|
||||
DEFLIBS="none"
|
||||
MKPASSWDLIBS=""
|
||||
OSNAME="OpenBSD 2.x"
|
||||
CRYPT_OPER_PASSWORD=""
|
||||
CRYPT_LINK_PASSWORD=""
|
||||
CRYPT_ILINE_PASSWORD=""
|
||||
CRYPT_XLINE_PASSWORD=""
|
||||
;;
|
||||
*SCO_SV*)
|
||||
DEFCFLAGS="$DEFOPT -DSCOUNIX"
|
||||
DEFLIBS="-lsocket"
|
||||
OSNAME="SCO Openserver"
|
||||
NEEDSKIPNAME="Yep"
|
||||
echo "You're using SCO Unix. For more support, contact potvin@eliteircd.on.ca"
|
||||
echo "You're using SCO Unix. For more support, stskeeps@tspre.org"
|
||||
;;
|
||||
*Apple*)
|
||||
DEFCFLAGS="$DEFOPT"
|
||||
@@ -208,6 +251,11 @@ case "$OS" in
|
||||
DEFLIBS="-lsocket -lnsl -lresolv"
|
||||
OSNAME="Solaris 2.x (or SunOS 5.x)"
|
||||
;;
|
||||
*IRIX*)
|
||||
DEFCFLAGS="$DEFOPT -D_USE_BSD"
|
||||
DEFLIBS="-lbsd"
|
||||
OSNAME="IRIX"
|
||||
;;
|
||||
*Linux*)
|
||||
cat > $TMP << __EOF__
|
||||
#include <stdio.h>
|
||||
@@ -345,6 +393,14 @@ sed -e "s@^XCFLAGS=\(.*\)@XCFLAGS=$XCFLAGS@" Makefile > Makefile.tmp
|
||||
cp Makefile.tmp Makefile
|
||||
$RM -f Makefile.tmp
|
||||
#
|
||||
|
||||
# Fix mkpasswd Makefile
|
||||
#
|
||||
$RM -f crypt/Makefile.tmp
|
||||
sed -e "s@^LIBS=\(.*\)@LIBS=$MKPASSWDLIBS@" crypt/Makefile > crypt/Makefile.tmp
|
||||
cp crypt/Makefile.tmp crypt/Makefile
|
||||
$RM -f crypt/Makefile.tmp
|
||||
|
||||
cat <<__EOF__
|
||||
|
||||
If you need to use any extra libraries when compiling the server,
|
||||
@@ -389,7 +445,7 @@ if [ -r /usr/include/stdlib.h ] ; then
|
||||
else
|
||||
echo 'not found :('
|
||||
fi
|
||||
echo $n "...Looking for stddef.h...$c"
|
||||
echo $n "...Looking for /usr/include/stddef.h...$c"
|
||||
if [ -r /usr/include/stddef.h ] ; then
|
||||
STDDEFH=define
|
||||
echo 'found!'
|
||||
@@ -450,6 +506,56 @@ if [ -r /usr/include/sys/rusage.h ] ; then
|
||||
else
|
||||
echo 'not found (good!)'
|
||||
fi
|
||||
|
||||
echo $n "...Looking for /usr/include/openssl/ssl.h...$c"
|
||||
if [ -r /usr/include/openssl/ssl.h ] ; then
|
||||
OPENSSL=define
|
||||
echo 'found!'
|
||||
else
|
||||
echo 'not found (you will not be able to do secure connections'
|
||||
echo 'If you do have it, please type in ln -s <openssl include dir> /usr/include/openssl'
|
||||
fi
|
||||
|
||||
echo $n "...Looking for /usr/include/regex.h...$c"
|
||||
if [ -r /usr/include/regex.h ] ; then
|
||||
REGEX=define
|
||||
echo 'found!'
|
||||
else
|
||||
echo 'not found :('
|
||||
echo $n '*** configuring regex package ***' $n
|
||||
cd extras/regex
|
||||
./configure
|
||||
make
|
||||
cd ../..
|
||||
fi
|
||||
|
||||
if [ -r /usr/include/openssl/ssl.h ] ; then
|
||||
echo $n "...Looking where you got the openssl binary...$c"
|
||||
if [ -r /bin/openssl ] ; then
|
||||
OPENSSLPATH=/bin/openssl
|
||||
echo $OPENSSLPATH
|
||||
elif [ -r /usr/bin/openssl ] ; then
|
||||
OPENSSLPATH=/usr/bin/openssl
|
||||
echo $OPENSSLPATH
|
||||
elif [ -r /usr/sbin/openssl ] ; then
|
||||
OPENSSLPATH=/usr/sbin/openssl
|
||||
echo $OPENSSLPATH
|
||||
elif [ -r /usr/local/bin/openssl ] ; then
|
||||
OPENSSLPATH=/usr/local/bin/openssl
|
||||
echo $OPENSSLPATH
|
||||
elif [ -r /usr/local/ssl/bin/openssl ] ; then
|
||||
OPENSSLPATH=/usr/local/ssl/bin/openssl
|
||||
echo $OPENSSLPATH
|
||||
elif [ -r `which openssl` ] ; then
|
||||
OPENSSLPATH=`which openssl`
|
||||
echo $OPENSSLPATH
|
||||
else
|
||||
echo "Couldn't find it! (bad)"
|
||||
OPENSSLPATH=/bin/false
|
||||
OPENSSLPATH=/bin/false
|
||||
fi
|
||||
fi
|
||||
|
||||
#
|
||||
# to b or not to b
|
||||
#
|
||||
@@ -687,6 +793,38 @@ __EOF__
|
||||
fi
|
||||
fi
|
||||
#
|
||||
# Can we set the core size to unlimited
|
||||
#
|
||||
|
||||
echo $n "Can we set the core size to unlimited...$c"
|
||||
cat > $TMP <<__EOF__
|
||||
#include <sys/time.h>
|
||||
#include <sys/resource.h>
|
||||
#include <unistd.h>
|
||||
main() {
|
||||
struct rlimit corelim;
|
||||
corelim.rlim_cur = corelim.rlim_max = RLIM_INFINITY;
|
||||
if (setrlimit(RLIMIT_CORE, &corelim))
|
||||
exit(1);
|
||||
exit(0);
|
||||
}
|
||||
__EOF__
|
||||
|
||||
$COMP >/dev/null 2>&1
|
||||
if [ $? -ne 0 ] ; then
|
||||
echo " no"
|
||||
FORCECORE=undef
|
||||
else
|
||||
$EXEC
|
||||
if [ $? -ne 1 ] ; then
|
||||
echo " yes"
|
||||
else
|
||||
echo " no"
|
||||
FORCECORE=undef
|
||||
fi
|
||||
fi
|
||||
$RM -f $EXEC $TMP
|
||||
#
|
||||
# what do we need that isn't here already ?
|
||||
#
|
||||
echo "What else do I need that you don't have..."
|
||||
@@ -822,7 +960,7 @@ cat > $TMP <<__EOF__
|
||||
#endif
|
||||
main()
|
||||
{
|
||||
char *t = "1\0", *s;
|
||||
char t[] = "a\0", *s;
|
||||
s = strtok(t, ",");
|
||||
if (!strcmp(t, s))
|
||||
exit(0);
|
||||
@@ -886,8 +1024,25 @@ if [ $? -ne 0 ] ; then
|
||||
echo $n " inet_netof$c"
|
||||
NINETNETOF=define
|
||||
fi
|
||||
$RM -f $EXEC $TMP
|
||||
echo " "
|
||||
$RM -f $EXEC $TMP
|
||||
cat > $TMP << __EOF__
|
||||
#include <string.h>
|
||||
main()
|
||||
{
|
||||
strcasecmp("moo", "moo");
|
||||
}
|
||||
__EOF__
|
||||
$COMP
|
||||
# >/dev/null 2>&1
|
||||
if [ $? -ne 0 ] ; then
|
||||
echo $n " strcasecmp $c "
|
||||
STRCASECMP=undef
|
||||
else
|
||||
STRCASECMP=define
|
||||
fi
|
||||
$RM -f $EXEC $TMP
|
||||
|
||||
#
|
||||
#
|
||||
#
|
||||
@@ -958,6 +1113,7 @@ cat > $SETUP <<__EOF__
|
||||
#$STDDEFH STDDEFH
|
||||
#$SYSSYSLOGH SYSSYSLOGH
|
||||
#$NOINDEX NOINDEX
|
||||
#$FORCECORE FORCE_CORE
|
||||
#$NSTRERROR NEED_STRERROR
|
||||
#$NSTRTOKEN NEED_STRTOKEN
|
||||
#$NSTRTOK NEED_STRTOK
|
||||
@@ -966,6 +1122,7 @@ cat > $SETUP <<__EOF__
|
||||
#$NINETNETOF NEED_INET_NETOF
|
||||
#$GETTIMEOFDAY GETTIMEOFDAY
|
||||
#$LRAND48 LRAND48
|
||||
#$STRCASECMP GOT_STRCASECMP
|
||||
__EOF__
|
||||
if [ "$MALLOCH" = "undef" ] ; then
|
||||
echo "#undef MALLOCH" >> $SETUP
|
||||
@@ -1066,87 +1223,6 @@ while [ -z "$FOO" ] ; do
|
||||
esac
|
||||
done
|
||||
|
||||
if [ -n "$NOSPOOF" ] ; then
|
||||
|
||||
FOO=""
|
||||
runonce=""
|
||||
while [ -z "$FOO" ] ; do
|
||||
FOO="$NOSPOOF_SEED01"
|
||||
echo "For security, the nospoof code uses two special values, called"
|
||||
echo "seeds. Here, please enter one of them. The values are in"
|
||||
echo "hexidecimal (base 16) using the digits 0123456789abcdef. Each"
|
||||
echo "value can contain up to 8 digits, and should be specified in the"
|
||||
echo "form 0x12345678. If you use the defaults, that should be ok, but"
|
||||
echo "it is more secure if you choose your own special values and keep"
|
||||
echo "them secret."
|
||||
echo $n "[$FOO] -> $c"
|
||||
if [ -z "$AUTO_CONFIG" -o -n "$runonce" ] ; then
|
||||
read cc
|
||||
else
|
||||
cc=""
|
||||
runonce=Yes
|
||||
fi
|
||||
if [ -z "$cc" ] ; then
|
||||
cc=$FOO
|
||||
fi
|
||||
case "$cc" in
|
||||
0x[0-9a-fA-F][0-9a-fA-F][0-9a-fA-F][0-9a-fA-F][0-9a-fA-F][0-9a-fA-F][0-9a-fA-F][0-9a-fA-F])
|
||||
NOSPOOF_SEED01=$cc
|
||||
;;
|
||||
[0-9a-fA-F][0-9a-fA-F][0-9a-fA-F][0-9a-fA-F][0-9a-fA-F][0-9a-fA-F][0-9a-fA-F][0-9a-fA-F])
|
||||
NOSPOOF_SEED01=0x$cc
|
||||
;;
|
||||
*)
|
||||
echo " "
|
||||
echo "Read the instructions and try again... You did not enter the"
|
||||
echo "value correctly."
|
||||
echo ""
|
||||
FOO=""
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
FOO=""
|
||||
runonce=""
|
||||
while [ -z "$FOO" ] ; do
|
||||
FOO="$NOSPOOF_SEED02"
|
||||
echo "For security, the nospoof code uses two special values, called"
|
||||
echo "seeds. Here, please enter one of them. The values are in"
|
||||
echo "hexidecimal (base 16) using the digits 0123456789abcdef. Each"
|
||||
echo "value can contain up to 8 digits, and should be specified in the"
|
||||
echo "form 0x12345678. If you use the defaults, that should be ok, but"
|
||||
echo "it is more secure if you choose your own special values and keep"
|
||||
echo "them secret."
|
||||
echo $n "[$FOO] -> $c"
|
||||
if [ -z "$AUTO_CONFIG" -o -n "$runonce" ] ; then
|
||||
read cc
|
||||
else
|
||||
cc=""
|
||||
runonce=Yes
|
||||
fi
|
||||
if [ -z "$cc" ] ; then
|
||||
cc=$FOO
|
||||
fi
|
||||
case "$cc" in
|
||||
0x[0-9a-fA-F][0-9a-fA-F][0-9a-fA-F][0-9a-fA-F][0-9a-fA-F][0-9a-fA-F][0-9a-fA-F][0-9a-fA-F])
|
||||
NOSPOOF_SEED02=$cc
|
||||
;;
|
||||
[0-9a-fA-F][0-9a-fA-F][0-9a-fA-F][0-9a-fA-F][0-9a-fA-F][0-9a-fA-F][0-9a-fA-F][0-9a-fA-F])
|
||||
NOSPOOF_SEED02=0x$cc
|
||||
;;
|
||||
*)
|
||||
echo " "
|
||||
echo "Read the instructions and try again... You did not enter the"
|
||||
echo "value correctly."
|
||||
echo ""
|
||||
FOO=""
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
# this matches a NOSPOOF check waaaaaay up there
|
||||
fi
|
||||
|
||||
FOO=""
|
||||
runonce=""
|
||||
while [ -z "$FOO" ] ; do
|
||||
@@ -1224,7 +1300,7 @@ while [ -z "$FOO" ] ; do
|
||||
esac
|
||||
done
|
||||
|
||||
DOMAINNAME="box.name"
|
||||
DOMAINNAME=`hostname`
|
||||
FOO=""
|
||||
runonce=""
|
||||
while [ -z "$FOO" ] ; do
|
||||
@@ -1244,6 +1320,45 @@ while [ -z "$FOO" ] ; do
|
||||
done
|
||||
DOMAINNAME=$cc
|
||||
|
||||
if [ -n "$OPENSSL" ] ; then
|
||||
FOO=""
|
||||
runonce=""
|
||||
while [ -z "$FOO" ] ; do
|
||||
if [ -n "$CRYPTOIRCD" ] ; then
|
||||
FOO="Yes"
|
||||
else
|
||||
FOO="No"
|
||||
fi
|
||||
echo ""
|
||||
echo "Do you want to support SSL (Secure Sockets Layer) connections"
|
||||
echo $n "[$FOO] -> $c"
|
||||
if [ -z "$AUTO_CONFIG" -o -n "$runonce" ] ; then
|
||||
read cc
|
||||
else
|
||||
cc=""
|
||||
runonce=Yes
|
||||
fi
|
||||
if [ -z "$cc" ] ; then
|
||||
cc=$FOO
|
||||
fi
|
||||
case "$cc" in
|
||||
[Yy]*)
|
||||
CRYPTOIRCD="1"
|
||||
CRYPTOLIB="-lssl -lcrypto"
|
||||
;;
|
||||
[Nn]*)
|
||||
CRYPTOIRCD=""
|
||||
;;
|
||||
*)
|
||||
echo ""
|
||||
echo "You need to enter either Yes or No here..."
|
||||
echo ""
|
||||
FOO=""
|
||||
;;
|
||||
esac
|
||||
done
|
||||
fi
|
||||
|
||||
FOO=""
|
||||
runonce=""
|
||||
while [ -z "$FOO" ] ; do
|
||||
@@ -1317,6 +1432,113 @@ while [ -z "$FOO" ] ; do
|
||||
esac
|
||||
done
|
||||
|
||||
FOO=""
|
||||
runonce=""
|
||||
while [ -z "$FOO" ] ; do
|
||||
if [ -n "$CRYPT_XLINE_PASSWORD" ] ; then
|
||||
FOO="yes"
|
||||
else
|
||||
FOO="No"
|
||||
fi
|
||||
echo ""
|
||||
echo "Do you want to use encrypted Restart/Die passwords?"
|
||||
echo $n "[$FOO] -> $c"
|
||||
if [ -z "$AUTO_CONFIG" -o -n "$runonce" ] ; then
|
||||
read cc
|
||||
else
|
||||
cc=""
|
||||
runonce=Yes
|
||||
fi
|
||||
if [ -z "$cc" ] ; then
|
||||
cc=$FOO
|
||||
fi
|
||||
case "$cc" in
|
||||
[Yy]*)
|
||||
CRYPT_XLINE_PASSWORD="1"
|
||||
;;
|
||||
[Nn]*)
|
||||
CRYPT_XLINE_PASSWORD=""
|
||||
;;
|
||||
*)
|
||||
echo ""
|
||||
echo "You need to enter either Yes or No here..."
|
||||
echo ""
|
||||
FOO=""
|
||||
;;
|
||||
esac
|
||||
done
|
||||
FOO=""
|
||||
runonce=""
|
||||
while [ -z "$FOO" ] ; do
|
||||
if [ -n "$CRYPT_ILINE_PASSWORD" ] ; then
|
||||
FOO="Yes"
|
||||
else
|
||||
FOO="No"
|
||||
fi
|
||||
echo ""
|
||||
echo "Do you want to use encrypted I:line passwords?"
|
||||
echo $n "[$FOO] -> $c"
|
||||
if [ -z "$AUTO_CONFIG" -o -n "$runonce" ] ; then
|
||||
read cc
|
||||
else
|
||||
cc=""
|
||||
runonce=Yes
|
||||
fi
|
||||
if [ -z "$cc" ] ; then
|
||||
cc=$FOO
|
||||
fi
|
||||
case "$cc" in
|
||||
[Yy]*)
|
||||
CRYPT_ILINE_PASSWORD="1"
|
||||
;;
|
||||
[Nn]*)
|
||||
CRYPT_ILINE_PASSWORD=""
|
||||
;;
|
||||
*)
|
||||
echo ""
|
||||
echo "You need to enter either Yes or No here..."
|
||||
echo ""
|
||||
FOO=""
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
FOO=""
|
||||
runonce=""
|
||||
while [ -z "$FOO" ] ; do
|
||||
if [ -n "$ENABLE_INVISOPER" ] ; then
|
||||
FOO="Yes"
|
||||
else
|
||||
FOO="No"
|
||||
fi
|
||||
echo ""
|
||||
echo "Do you want to enable total invisibility (+I) mode for opers?"
|
||||
echo $n "[$FOO] -> $c"
|
||||
if [ -z "$AUTO_CONFIG" -o -n "$runonce" ] ; then
|
||||
read cc
|
||||
else
|
||||
cc=""
|
||||
runonce=Yes
|
||||
fi
|
||||
if [ -z "$cc" ] ; then
|
||||
cc=$FOO
|
||||
fi
|
||||
case "$cc" in
|
||||
[Yy]*)
|
||||
ENABLE_INVISOPER="1"
|
||||
;;
|
||||
[Nn]*)
|
||||
ENABLE_INVISOPER=""
|
||||
;;
|
||||
*)
|
||||
echo ""
|
||||
echo "You need to enter either Yes or No here..."
|
||||
echo ""
|
||||
FOO=""
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
FOO=""
|
||||
runonce=""
|
||||
while [ -z "$FOO" ] ; do
|
||||
@@ -1437,7 +1659,14 @@ while [ -z "$FOO" ] ; do
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
echo ""
|
||||
echo ""
|
||||
if [ "$OSNAME" = "Solaris 2.x (or SunOS 5.x)" ] ; then
|
||||
$CCPATH -lsocket -o src/fdmaxcounter src/fdmaxcounter.c
|
||||
else
|
||||
$CCPATH -o src/fdmaxcounter src/fdmaxcounter.c
|
||||
fi
|
||||
src/fdmaxcounter
|
||||
FOO=""
|
||||
runonce=""
|
||||
while [ -z "$FOO" ] ; do
|
||||
@@ -1450,6 +1679,8 @@ else
|
||||
fi
|
||||
echo ""
|
||||
echo "How many file descriptors (or sockets) can the irc server use?"
|
||||
echo "(The result above, if any - shows how many sockets that the ircd can use",
|
||||
echo " and can be used as an answer here)"
|
||||
echo $n "[$FOO] -> $c"
|
||||
if [ -z "$AUTO_CONFIG" -o -n "$runonce" ] ; then
|
||||
read cc
|
||||
@@ -1554,6 +1785,55 @@ else
|
||||
$RM -f Makefile.tmp
|
||||
fi
|
||||
|
||||
if [ -n "$CRYPTOLIB" ] ; then
|
||||
$RM -f Makefile.tmp
|
||||
sed -e "s@^CRYPTOLIB=\(.*\)@CRYPTOLIB=$CRYPTOLIB@" Makefile > Makefile.tmp
|
||||
cp Makefile.tmp Makefile
|
||||
$RM -f Makefile.tmp
|
||||
else
|
||||
$RM -f Makefile.tmp
|
||||
sed -e "s@^CRYPTOLIB=\(.*\)@CRYPTOLIB=@" Makefile > Makefile.tmp
|
||||
cp Makefile.tmp Makefile
|
||||
$RM -f Makefile.tmp
|
||||
|
||||
fi
|
||||
|
||||
if [ -n "$CRYPTOIRCD" ] ; then
|
||||
$RM -f Makefile.tmp
|
||||
sed -e "s@^OPENSSLPATH=\(.*\)@OPENSSLPATH=$OPENSSLPATH@" Makefile > Makefile.tmp
|
||||
cp Makefile.tmp Makefile
|
||||
$RM -f Makefile.tmp
|
||||
else
|
||||
$RM -f Makefile.tmp
|
||||
sed -e "s@^OPENSSLPATH=\(.*\)@OPENSSLPATH=@" Makefile > Makefile.tmp
|
||||
cp Makefile.tmp Makefile
|
||||
$RM -f Makefile.tmp
|
||||
fi
|
||||
|
||||
if [ -n "$OPENSSL_OTHERPLACE" ] ; then
|
||||
$RM -f Makefile.tmp
|
||||
sed -e "s@^OPENSSLINCLUDE=\(.*\)@OPENSSLINCLUDES=-I/usr/local/ssl/include/openssl@" Makefile > Makefile.tmp
|
||||
cp Makefile.tmp Makefile
|
||||
$RM -f Makefile.tmp
|
||||
else
|
||||
$RM -f Makefile.tmp
|
||||
sed -e "s@^OPENSSLINCLUDE=\(.*\)@OPENSSLINCLUDES=@" Makefile > Makefile.tmp
|
||||
cp Makefile.tmp Makefile
|
||||
$RM -f Makefile.tmp
|
||||
fi
|
||||
|
||||
if [ -n "$REGEX" ] ; then
|
||||
$RM -f Makefile.tmp
|
||||
sed -e "s@^REGEX=\(.*\)@REGEX=@" Makefile > Makefile.tmp
|
||||
cp Makefile.tmp Makefile
|
||||
$RM -f Makefile.tmp
|
||||
else
|
||||
$RM -f Makefile.tmp
|
||||
sed -e "s@^REGEX=\(.*\)@REGEX=../extras/regex/regex.o@" Makefile > Makefile.tmp
|
||||
cp Makefile.tmp Makefile
|
||||
$RM -f Makefile.tmp
|
||||
fi
|
||||
|
||||
$RM -f $EXEC $TMP
|
||||
|
||||
$RM -f ./core
|
||||
@@ -1588,28 +1868,48 @@ if [ -n "$CRYPT_OPER_PASSWORD" ] ; then
|
||||
else
|
||||
echo "#undef CRYPT_OPER_PASSWORD" >> $OPTIONS_H
|
||||
fi
|
||||
if [ -n "$CRYPTOIRCD" ] ; then
|
||||
echo "#define USE_SSL 1" >> $OPTIONS_H
|
||||
else
|
||||
echo "#undef USE_SSL" >> $OPTIONS_H
|
||||
fi
|
||||
if [ -n "$CRYPT_LINK_PASSWORD" ] ; then
|
||||
echo "#define CRYPT_LINK_PASSWORD 1" >> $OPTIONS_H
|
||||
else
|
||||
echo "#undef CRYPT_LINK_PASSWORD" >> $OPTIONS_H
|
||||
fi
|
||||
if [ -n "$CRYPT_ILINE_PASSWORD" ] ; then
|
||||
echo "#define CRYPT_ILINE_PASSWORD 1" >> $OPTIONS_H
|
||||
else
|
||||
echo "#undef CRYPT_ILINE_PASSWORD" >> $OPTIONS_H
|
||||
fi
|
||||
if [ -n "$CRYPT_XLINE_PASSWORD" ] ; then
|
||||
echo "#define CRYPT_XLINE_PASSWORD 1" >> $OPTIONS_H
|
||||
else
|
||||
echo "#undef CRYPT_XLINE_PASSWORD" >> $OPTIONS_H
|
||||
fi
|
||||
if [ -n "$ENABLE_INVISOPER" ] ; then
|
||||
echo "#define ENABLE_INVISOPER 1" >> $OPTIONS_H
|
||||
else
|
||||
echo "#undef ENABLE_INVISOPER" >> $OPTIONS_H
|
||||
fi
|
||||
if [ -n "$HUB" ] ; then
|
||||
echo "#define HUB 1" >> $OPTIONS_H
|
||||
else
|
||||
echo "#undef HUB" >> $OPTIONS_H
|
||||
fi
|
||||
|
||||
if [ -n "$REGEX" ] ; then
|
||||
echo "#define HAVE_REGEX 1" >> $OPTIONS_H
|
||||
else
|
||||
echo "#undef HAVE_REGEX" >> $OPTIONS_H
|
||||
fi
|
||||
|
||||
if [ -n "$NOSPOOF" ] ; then
|
||||
echo "#define NOSPOOF 1" >> $OPTIONS_H
|
||||
else
|
||||
echo "#undef NOSPOOF" >> $OPTIONS_H
|
||||
fi
|
||||
if [ -n "$NOSPOOF_SEED01" ] ; then
|
||||
echo "#define NOSPOOF_SEED01 $NOSPOOF_SEED01" >> $OPTIONS_H
|
||||
fi
|
||||
if [ -n "$NOSPOOF_SEED02" ] ; then
|
||||
echo "#define NOSPOOF_SEED02 $NOSPOOF_SEED02" >> $OPTIONS_H
|
||||
fi
|
||||
|
||||
if [ "$OSNAME" = "Linux (with GLIBC 2.x or greater)" ]; then
|
||||
echo "#define GLIBC2_x" >> $OPTIONS_H
|
||||
@@ -1632,12 +1932,13 @@ cat > $OPTIONS << __EOF__
|
||||
IRCNET="$IRCNET"
|
||||
LAST_VERSION="$IRCD_VERSION"
|
||||
NOSPOOF="$NOSPOOF"
|
||||
NOSPOOF_SEED01="$NOSPOOF_SEED01"
|
||||
NOSPOOF_SEED02="$NOSPOOF_SEED02"
|
||||
DPATH="$DPATH"
|
||||
SPATH="$SPATH"
|
||||
CRYPT_OPER_PASSWORD="$CRYPT_OPER_PASSWORD"
|
||||
CRYPT_LINK_PASSWORD="$CRYPT_LINK_PASSWORD"
|
||||
CRYPT_ILINE_PASSWORD="$CRYPT_ILINE_PASSWORD"
|
||||
CRYPT_XLINE_PASSWORD="$CRYPT_XLINE_PASSWORD"
|
||||
ENABLE_INVISOPER="$ENABLE_INVISOPER"
|
||||
LISTEN_SIZE="$LISTEN_SIZE"
|
||||
MAXSENDQLENGTH="$MAXSENDQLENGTH"
|
||||
BUFFERPOOL="$BUFFERPOOL"
|
||||
@@ -1652,6 +1953,16 @@ if [ "$OSNAME" = "Linux (with GLIBC 2.x or greater)" ]; then
|
||||
echo ""
|
||||
fi
|
||||
|
||||
if [ -n "$CRYPTOIRCD" ] ; then
|
||||
if [ ! -f server.req.pem ]; then
|
||||
echo "Using openssl in $OPENSSLPATH .."
|
||||
export OPENSSLPATH
|
||||
make pem
|
||||
cat .SICI
|
||||
read cc
|
||||
fi
|
||||
fi
|
||||
|
||||
cat << __EOF__
|
||||
|
||||
_____________________________________________________________________
|
||||
@@ -1670,7 +1981,8 @@ cat << __EOF__
|
||||
|_____________________________________________________________________|
|
||||
|_____________________________________________________________________|
|
||||
| - The UnrealIRCd Team - |
|
||||
| * Stskeeps stskeeps@tspre.org
|
||||
| * codemastr codemastr@tspre.org
|
||||
| * Stskeeps stskeeps@unrealircd.com |
|
||||
| * codemastr codemastr@unrealircd.com |
|
||||
| * Luke luke@unrealircd.com |
|
||||
|_____________________________________________________________________|
|
||||
__EOF__
|
||||
|
||||
@@ -1,20 +1,15 @@
|
||||
Send donations to:
|
||||
|
||||
Send donations to:
|
||||
------------------
|
||||
UnrealIRCd Project
|
||||
C/O Carsten Munk
|
||||
P.O.Box 52
|
||||
7400 Herning
|
||||
Denmark
|
||||
|
||||
(if you want to that is.. I mean .. I do my coding for fun.. -
|
||||
send a teddybear or something to my nephews or something for
|
||||
my nieces.. so they can keep quiet while I'm trying to do anything)
|
||||
|
||||
Disks, HD's, free internet time or alike are welcome ;p ;)
|
||||
|
||||
-- Techie (which HAD got 20 MB free HD space out of 400 MB on his own puter)
|
||||
(just got a 8.4gb and rh6.0 *_*)
|
||||
(and used 200 MB on his shell to code this :>) ..
|
||||
- oh and btw i'm male:P (*looks at BlueFlame^*)
|
||||
(if you want to that is .. it will just make us a little more able to code
|
||||
even more on this project. You will get in /credits if you do so).
|
||||
|
||||
-- Stskeeps
|
||||
|
||||
[ $Id$ ]
|
||||
|
||||
@@ -11,7 +11,7 @@ an IRC server.
|
||||
For more information on UnrealIRCD contact us at
|
||||
unreal-dev@lists.sourceforge.net
|
||||
|
||||
The UnrealIRCD is available from http://unreal.tspre.org
|
||||
The UnrealIRCD is available from http://www.unrealircd.com
|
||||
along with the latest copy of this document.
|
||||
|
||||
|
||||
@@ -48,6 +48,9 @@ AmigaOS 3.0 GCC egcs-2.91.66 (compile with -D_AMIGA)
|
||||
Windows NT/95 MSVC++ 4.0
|
||||
|
||||
Linux Mandrake Read FAQ
|
||||
|
||||
Linux 2.3.x gcc 2.95.2 glibc 2.1.3
|
||||
|
||||
=======================================================================
|
||||
Unpacking the Distribution
|
||||
|
||||
@@ -57,8 +60,8 @@ recap:
|
||||
The UnrealIRCD server comes tarred and gziped. To uncompress it and expand
|
||||
it, use the following commands at the Unix prompt:
|
||||
|
||||
gzip -d Unreal3.0.tar.gz
|
||||
tar -xvf Unreal3.0.tar
|
||||
gzip -d Unreal3.1.tar.gz
|
||||
tar -xvf Unreal3.1.tar
|
||||
|
||||
This will create a new directory called Unreal3.0 and unpack the source
|
||||
into it.
|
||||
|
||||
+40
-7
@@ -33,7 +33,8 @@ FROMDOS=/home/cmunk/bin/4dos
|
||||
#
|
||||
XCFLAGS=
|
||||
IRCDLIBS=
|
||||
|
||||
CRYPTOLIB=
|
||||
OPENSSLINCLUDES=
|
||||
#
|
||||
# use the following on MIPS:
|
||||
#CFLAGS= -systype bsd43 -DSYSTYPE_BSD43 -I$(INCLUDEDIR)
|
||||
@@ -97,6 +98,12 @@ IRCDDIR=/usr/local/lib/ircd
|
||||
# The rest are perfectly content with this.
|
||||
RES=
|
||||
|
||||
#
|
||||
# If your system is lacking regex, uncomment this line
|
||||
#
|
||||
#REGEX=../extras/regex/regex.o
|
||||
REGEX=
|
||||
|
||||
# [CHANGEME]
|
||||
# If you get a compile-time error dealing with u_int32_t, comment out
|
||||
# this line.
|
||||
@@ -115,6 +122,9 @@ STRTOUL=
|
||||
# override it here and see what happens.
|
||||
FD_SETSIZE=
|
||||
|
||||
# Where is your openssl binary
|
||||
OPENSSLPATH=
|
||||
|
||||
CFLAGS=-I$(INCLUDEDIR) $(XCFLAGS) $(NEED_U_INT32_T) $(FD_SETSIZE)
|
||||
|
||||
SHELL=/bin/sh
|
||||
@@ -133,7 +143,9 @@ MAKEARGS = 'CFLAGS=${CFLAGS}' 'CC=${CC}' 'IRCDLIBS=${IRCDLIBS}' \
|
||||
'BINDIR=${BINDIR}' 'INSTALL=${INSTALL}' \
|
||||
'INCLUDEDIR=${INCLUDEDIR}' 'IRCDDIR=${IRCDDIR}' \
|
||||
'MANDIR=${MANDIR}' 'RM=${RM}' 'CP=${CP}' 'TOUCH=${TOUCH}' \
|
||||
'RES=${RES}' 'SHELL=${SHELL}' 'STRTOUL=${STRTOUL}'
|
||||
'RES=${RES}' 'SHELL=${SHELL}' 'STRTOUL=${STRTOUL}' \
|
||||
'CRYPTOLIB=${CRYPTOLIB}' 'REGEX=${REGEX}' \
|
||||
'CRYPTOINCLUDES=${CRYPTOINCLUDES}'
|
||||
|
||||
server:
|
||||
build:
|
||||
@@ -152,10 +164,16 @@ build:
|
||||
@echo '| file "dynconf" using your favourite viewer or |'
|
||||
@echo '| editor. The file will contain instructions on how|'
|
||||
@echo '| to do the dynamic configuration :) |'
|
||||
@echo '| You might want to see include/config.h to adjust |'
|
||||
@echo '| some settings |'
|
||||
@echo '| |'
|
||||
@echo '| If you really like UnrealIRCd, and would like to |'
|
||||
@echo '| make a donation, please read the Donation file in|'
|
||||
@echo '| this archive. :) |'
|
||||
@echo '| |'
|
||||
@echo '| Thanks for using Unreal IRCd! If you are in need |'
|
||||
@echo '| for any kind of help regarding the IRCd email us |'
|
||||
@echo '| at unreal-dev@lists.sourceforge.net |'
|
||||
@echo '| for any kind of help regarding the IRCd please |'
|
||||
@echo '| read the Unreal.nfo file. |'
|
||||
@echo '|__________________________________________________|'
|
||||
|
||||
clean:
|
||||
@@ -174,8 +192,8 @@ clean:
|
||||
cleandir: clean
|
||||
rm -rf include/networks.h include/setup.h include/settings.h Makefile Settings
|
||||
|
||||
makex: fromdos
|
||||
chmod +x Config newnet bsdinstall ircd ircdcron/ircdchk killircd
|
||||
makex:
|
||||
chmod +x Config newnet ircd ircdcron/ircdchk killircd
|
||||
chmod +x makeconf rehash ircdreg
|
||||
|
||||
fromdos: cleandir
|
||||
@@ -186,7 +204,7 @@ fromdos: cleandir
|
||||
$(FROMDOS) -dv crypt/*
|
||||
$(FROMDOS) -dv ircdcron/*
|
||||
makedist: makex
|
||||
echo "Making UnrealIRCd compatible IRCd Dist."
|
||||
echo "Stamping.."
|
||||
|
||||
stamp: makedist
|
||||
echo "/* Auto created release stamping */" > include/stamp.h
|
||||
@@ -203,3 +221,18 @@ depend:
|
||||
install: all
|
||||
@echo "Now install by hand; make install is broken."
|
||||
|
||||
pem: src/ssl.cnf
|
||||
@echo "Generating certificate request .. "
|
||||
$(OPENSSLPATH) req -new -config src/ssl.cnf -out server.req.pem \
|
||||
-keyout server.key.pem -nodes
|
||||
@echo "Generating self-signed certificate .. "
|
||||
$(OPENSSLPATH) req -x509 -days 365 -in server.req.pem \
|
||||
-key server.key.pem -out server.cert.pem
|
||||
@echo "Generating fingerprint .."
|
||||
$(OPENSSLPATH) x509 -subject -dates -fingerprint -noout \
|
||||
-in server.cert.pem
|
||||
|
||||
@echo "Setting o-rwx & g-rwx for files... "
|
||||
chmod o-rwx server.req.pem server.key.pem server.cert.pem
|
||||
chmod g-rwx server.req.pem server.key.pem server.cert.pem
|
||||
@echo "Done!"
|
||||
|
||||
@@ -1,15 +0,0 @@
|
||||
Some notes to remember:
|
||||
-----------------------
|
||||
* Don't EVER try to link it to incompatible IRCds (this does not
|
||||
include services). It is *INCOMPATIBLE*. Please HEED this warning!!!
|
||||
|
||||
* If you need any help you can email me at stskeeps@tspre.org
|
||||
|
||||
* Please read the Changes file about release notes
|
||||
|
||||
* Bugs? Read Unreal.nfo
|
||||
|
||||
* Unreal IRCd is not meant to be a simple IRCd, rather an advanced
|
||||
IRCd, please read the documentation before asking questions
|
||||
|
||||
[ $Id$ ]
|
||||
@@ -0,0 +1,37 @@
|
||||
#!/bin/sh
|
||||
clear
|
||||
echo "Starting up UnrealIRCd Setup"
|
||||
echo ""
|
||||
echo "Press enter to proceed to setup..."
|
||||
read cc
|
||||
more -d Unreal.nfo
|
||||
echo "Press enter to proceed to FAQ..."
|
||||
read cc
|
||||
more -d doc/faq
|
||||
echo "Press enter to proceed to configuration..."
|
||||
read cc
|
||||
if [ "$1" != "-noconfig" ] ; then
|
||||
./Config
|
||||
fi
|
||||
|
||||
echo "Press enter to proceed to compiling..."
|
||||
read cc
|
||||
make
|
||||
echo "Press enter to proceed to ircd.conf making..."
|
||||
read cc
|
||||
./makeconf
|
||||
echo "Press enter to proceed to network configuration..."
|
||||
read cc
|
||||
clear
|
||||
echo "Do you want to use one of these network files, or make your own?"
|
||||
cd networks
|
||||
ls *.network
|
||||
echo "[Type "no" if you want to make your own]"
|
||||
read cc
|
||||
if [ "$cc" == "no" ] ; then
|
||||
./makenet
|
||||
fi
|
||||
echo "Press enter to proceed to dynamic ircd configuration..."
|
||||
read cc
|
||||
pico unrealircd.conf
|
||||
echo "You should be able to run UnrealIRCd using ./ircd now".
|
||||
@@ -1,21 +0,0 @@
|
||||
TODO: (Possible 3.1)
|
||||
* Limit calls to these functions using parse()
|
||||
0.00 3.91 0.00 6475 0.00 0.00 check_registered
|
||||
0.00 3.91 0.00 6827 0.00 0.00 check_registered_user
|
||||
* Optimize:
|
||||
0.00 3.91 0.00 1292 0.00 0.01 is_banned
|
||||
12.55 9.61 2.57 41320 0.06 0.10 check_lusers
|
||||
4.64 11.54 0.95 41566 0.02 0.02 count_channels
|
||||
3.08 13.96 0.63 850968 0.00 0.00 flush_connections
|
||||
(fdlists?)
|
||||
0.15 19.62 0.03 29 1.03 1.80 send_list
|
||||
* Add svsvline for global vlines
|
||||
* New /whowas system /who as well
|
||||
* Short MOTDs
|
||||
* B:Lines
|
||||
* Channel mode +d
|
||||
* Raising PING bug
|
||||
* Make alternative I/O engine using poll()
|
||||
* Remove some of the _little_ config.h defines and replace with
|
||||
unrealircd.conf lines, ex ADMINCHAT, REMOTE_REHASH
|
||||
* X-Windows GUI (how bad it can be but hey! :P)
|
||||
@@ -1,28 +0,0 @@
|
||||
|
||||
TSpre.org
|
||||
|
||||
Many here maybe not heard of the Story
|
||||
how IRC started (and how EFnet started)
|
||||
EFnet's name means "Eris-Free Network".
|
||||
Eris was a central hub at the fomer world-
|
||||
wide IRC network, that anyone could just add
|
||||
C:N pairs for and connect to.
|
||||
|
||||
I was inspired of the tought of a network
|
||||
where anyone could link without application and all
|
||||
that shit..
|
||||
|
||||
Combined with the IRCd i made (Unreal) and the tspre.org
|
||||
domain i got donated by Nutcais (my IRC bro). Ive decided to
|
||||
start the TSpre IRC network, where anyone with TSpre servers
|
||||
(dreamforge, IRCu p9, and their alike)
|
||||
|
||||
(mostly preffered is Unreal thou).. Its an experimental
|
||||
network where people can test out thier IRCds and
|
||||
wIRds without having to fill out apps and so on.
|
||||
|
||||
There are no real rules. So just have fun :)
|
||||
|
||||
See http://www.tspre.org for more info on this=)
|
||||
|
||||
--Stskeeps (stskeeps@tspre.org)
|
||||
+26
-16
@@ -1,27 +1,37 @@
|
||||
===============================================
|
||||
= UnrealIRCd v3.0 =
|
||||
= UnrealIRCd v3.1.4 =
|
||||
===============================================
|
||||
Was brought to you by:
|
||||
* Stskeeps <stskeeps@tspre.org>
|
||||
* codemastr <codemastr@tspre.org>
|
||||
|
||||
* Stskeeps <stskeeps@unrealircd.com>
|
||||
* codemastr <codemastr@unrealircd.com>
|
||||
* Luke <luke@unrealircd.com>
|
||||
|
||||
Precenses on the Internet:
|
||||
* http://unreal.tspre.org or http://unreal.sourceforge.net
|
||||
* ftp://unreal.sourceforge.net/pub/unreal
|
||||
* ftp://ftp.shadow-realm.org/pub/ircd/UnrealIRCd
|
||||
* http://www.unrealircd.com
|
||||
|
||||
CVS Repository:
|
||||
* Alpha versions (or beta)
|
||||
==========================
|
||||
cvs -z9 -d :pserver:anonymous@cvs.unreal.sourceforge.net:/cvsroot/unreal login
|
||||
(just press enter when it asks for password)
|
||||
cvs -z9 -d :pserver:anonymous@cvs.unreal.sourgeforge.net:/cvsroot/unreal co alpha
|
||||
CVS:
|
||||
To get anonymous access: (read only)
|
||||
"cvs -d :pserver:anonymous@cvs.ircsystems.net:/home/cmunk/ircsystems/cvsroot login"
|
||||
|
||||
press enter when asked for password
|
||||
|
||||
and to get latest stable:
|
||||
"cvs -d :pserver:anonymous@cvs.ircsystems.net:/home/cmunk/ircsystems/cvsroot checkout -r stable -d Unreal-stable unreal"
|
||||
|
||||
latest beta:
|
||||
"cvs -d :pserver:anonymous@cvs.ircsystems.net:/home/cmunk/ircsystems/cvsroot checkout -r beta -d Unreal-beta unreal"
|
||||
|
||||
* To get support
|
||||
================
|
||||
* IRC: /server irc.flirt.org 6667 - /join #unrealircd
|
||||
* IRC: /server irc.ircsystems.net 6667 - /join #unreal-support
|
||||
[Note: Please be patient after asking questions, we may do other stuff
|
||||
or we're away. Don't repeat questions, we heard you first time,
|
||||
READ THE TOPIC before you ask anything. We do this on a free
|
||||
base so we are volunteeringly helping you, but we are humans
|
||||
like you, and we got to have peace at times as well.]
|
||||
* Mailing list: unreal-support@lists.sourceforge.net (for support)
|
||||
|
||||
* READ doc/faq BEFORE ASKING QUESTIONS!
|
||||
|
||||
* Got a bug to report?
|
||||
======================
|
||||
* If the server crashes and dumps core do this:
|
||||
@@ -46,4 +56,4 @@ cvs -z9 -d :pserver:anonymous@cvs.unreal.sourgeforge.net:/cvsroot/unreal co alph
|
||||
* Mail it to unreal-dev@lists.sourceforge.net :) or catch one from
|
||||
the Unreal team online on IRC:)
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -0,0 +1,53 @@
|
||||
#
|
||||
# Unreal Internet Relay Chat Daemon
|
||||
# Copyright (C) Carsten V. Munk 2000
|
||||
#
|
||||
# NOTE: Those words are not meant to insult you (the user)
|
||||
# but is meant to be a list of words so that the +G channel/user mode
|
||||
# will work properly. You can easily modify this file at your will.
|
||||
# If you got words to add to this file, please mail badwords@tspre.org
|
||||
#
|
||||
#
|
||||
#
|
||||
#
|
||||
#
|
||||
#
|
||||
# This is some filling space, scroll down to see the words
|
||||
#
|
||||
#
|
||||
#
|
||||
#
|
||||
#
|
||||
#
|
||||
#
|
||||
#
|
||||
#
|
||||
#
|
||||
#
|
||||
#
|
||||
#
|
||||
#
|
||||
#
|
||||
#
|
||||
#
|
||||
pussy
|
||||
fuck
|
||||
whore
|
||||
slut
|
||||
shit
|
||||
asshole
|
||||
bitch
|
||||
cunt
|
||||
vagina
|
||||
penis
|
||||
jackass
|
||||
*fucker*
|
||||
faggot
|
||||
fag
|
||||
horny
|
||||
gay
|
||||
dickhead
|
||||
sonuvabitch
|
||||
*fuck*
|
||||
boobs
|
||||
tits
|
||||
@@ -0,0 +1,53 @@
|
||||
#
|
||||
# Unreal Internet Relay Chat Daemon
|
||||
# Copyright (C) Carsten V. Munk 2000
|
||||
#
|
||||
# NOTE: Those words are not meant to insult you (the user)
|
||||
# but is meant to be a list of words so that the +G channel/user mode
|
||||
# will work properly. You can easily modify this file at your will.
|
||||
# If you got words to add to this file, please mail badwords@tspre.org
|
||||
#
|
||||
#
|
||||
#
|
||||
#
|
||||
#
|
||||
#
|
||||
# This is some filling space, scroll down to see the words
|
||||
#
|
||||
#
|
||||
#
|
||||
#
|
||||
#
|
||||
#
|
||||
#
|
||||
#
|
||||
#
|
||||
#
|
||||
#
|
||||
#
|
||||
#
|
||||
#
|
||||
#
|
||||
#
|
||||
#
|
||||
pussy
|
||||
fuck
|
||||
whore
|
||||
slut
|
||||
shit
|
||||
asshole
|
||||
bitch
|
||||
cunt
|
||||
vagina
|
||||
penis
|
||||
jackass
|
||||
*fucker*
|
||||
faggot
|
||||
fag
|
||||
horny
|
||||
gay
|
||||
dickhead
|
||||
sonuvabitch
|
||||
*fuck*
|
||||
boobs
|
||||
tits
|
||||
-84
@@ -1,84 +0,0 @@
|
||||
#! /bin/sh
|
||||
#
|
||||
# $Id$
|
||||
# Old: @(#)install.sh 4.5 (Berkeley) 10/12/83
|
||||
#
|
||||
cmd=/bin/mv
|
||||
strip=""
|
||||
chmod="/bin/chmod 755"
|
||||
chown="chown -f root"
|
||||
chgrp="/bin/chgrp -f bin"
|
||||
while true ; do
|
||||
case $1 in
|
||||
-s ) strip="strip"
|
||||
shift
|
||||
;;
|
||||
-c ) cmd="/bin/cp"
|
||||
shift
|
||||
;;
|
||||
-m ) chmod="/bin/chmod $2"
|
||||
shift
|
||||
shift
|
||||
;;
|
||||
-o ) chown="/etc/chown -f $2"
|
||||
shift
|
||||
shift
|
||||
;;
|
||||
-g ) chgrp="/bin/chgrp -f $2"
|
||||
shift
|
||||
shift
|
||||
;;
|
||||
-d ) cmd="/bin/mkdir"
|
||||
shift
|
||||
;;
|
||||
* ) break
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
if [ ! ${2-""} ]
|
||||
then echo "install: no destination specified"
|
||||
exit 1
|
||||
fi
|
||||
if [ ${3-""} ]
|
||||
then echo "install: too many files specified -> $*"
|
||||
exit 1
|
||||
fi
|
||||
if [ $1 = $2 -o $2 = . ]
|
||||
then echo "install: can't move $1 onto itself"
|
||||
exit 1
|
||||
fi
|
||||
case $cmd in
|
||||
/bin/mkdir )
|
||||
file=$2/$1
|
||||
;;
|
||||
* )
|
||||
if [ '!' -f $1 ]
|
||||
then echo "install: can't open $1"
|
||||
exit 1
|
||||
fi
|
||||
if [ -d $2 ]
|
||||
then file=$2/$1
|
||||
else file=$2
|
||||
fi
|
||||
/bin/rm -f $file
|
||||
;;
|
||||
esac
|
||||
|
||||
case $cmd in
|
||||
/bin/mkdir )
|
||||
if [ ! -d "$file" ]
|
||||
then $cmd $file
|
||||
fi
|
||||
;;
|
||||
* )
|
||||
$cmd $1 $file
|
||||
if [ $strip ]
|
||||
then $strip $file
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
|
||||
$chown $file
|
||||
$chgrp $file
|
||||
$chmod $file
|
||||
+4
-2
@@ -23,15 +23,17 @@
|
||||
#
|
||||
|
||||
IRCDCONF = ../ircd.conf
|
||||
LIBS=-lcrypt
|
||||
|
||||
all: mkpasswd
|
||||
crypt: install
|
||||
|
||||
mkpasswd: mkpasswd.c
|
||||
cc -lcrypt -O mkpasswd.c -o mkpasswd
|
||||
cc ${LIBS} -O mkpasswd.c -o mkpasswd
|
||||
|
||||
install:
|
||||
crypter ${IRCDCONF}
|
||||
chmod 700 crypter
|
||||
./crypter ${IRCDCONF}
|
||||
@echo 'done.'
|
||||
|
||||
clean:
|
||||
|
||||
+23
-1
@@ -32,6 +32,8 @@ $tmpfile = "/tmp/ircd.conf.tmp";
|
||||
#
|
||||
$ircdconf = @ARGV[0];
|
||||
|
||||
$ircdout = "IRCDOUT";
|
||||
|
||||
print "crypting ",$ircdconf,"\n";
|
||||
@saltset = ('a' .. 'z', 'A' .. 'Z', '0' .. '9', '.', '/');
|
||||
|
||||
@@ -40,13 +42,33 @@ open ($ircdout, ">/tmp/ircd.conf.tmp") || die "open $!";
|
||||
|
||||
while ($text = <>) {
|
||||
#if its not an "O" line we can ignore it
|
||||
$text =~ /^o/i || print ($ircdout $text) && next;
|
||||
if ($text =~ /^o/i) {
|
||||
chop($text);
|
||||
@oline = split(':', $text);
|
||||
$salt = $saltset[rand(time)%64].$saltset[(rand(time)>>6)%64];
|
||||
$oline[2] = crypt(@oline[2], $salt);
|
||||
print ($ircdout join(':',@oline)."\n");
|
||||
}
|
||||
elsif ($text =~ /^n/i) {
|
||||
chop($text);
|
||||
@nline = split(':', $text);
|
||||
$salt = $saltset[rand(time)%64].$saltset[(rand(time)>>6)%64];
|
||||
$nline[2] = crypt(@nline[2], $salt);
|
||||
print ($ircdout join(':',@nline)."\n");
|
||||
}
|
||||
elsif ($text =~ /^x/i) {
|
||||
chop($text);
|
||||
@xline = split(':', $text);
|
||||
$salt1 = $saltset[rand(time)%64].$saltset[(rand(time)>>6)%64];
|
||||
$salt2 = $saltset[rand(time)%64].$saltset[(rand(time)>>6)%64];
|
||||
$xline[1] = crypt(@xline[1], $salt1);
|
||||
$xline[2] = crypt(@xline[2], $salt2);
|
||||
print ($ircdout join(':',@xline)."\n");
|
||||
}
|
||||
else {
|
||||
print $ircdout "$text";
|
||||
}
|
||||
}
|
||||
close ($ircdout);
|
||||
close ($ircdin);
|
||||
print "/bin/cp ",$tmpfile," ",$ircdconf,"\n";
|
||||
|
||||
+1751
File diff suppressed because it is too large
Load Diff
@@ -1,4 +1,7 @@
|
||||
[ $Id$ ]
|
||||
Take this with a grain of salt.. it's heaps old and this isn't Elite anymore
|
||||
|
||||
|
||||
---------------------------
|
||||
Version Elite2.0 ==========
|
||||
===========================
|
||||
@@ -0,0 +1,329 @@
|
||||
Written by ^MrMike^ (mike@sector001.org) for the UnrealIRCd
|
||||
Modified by codemastr to include a few other commands
|
||||
(note, this file will be updated in CVS asap)
|
||||
|
||||
PRIVMSG
|
||||
- Used to send a message to a person or a channel
|
||||
Syntax: MSG <nick>,<nick2>,<nick3>,<nick4> <text>
|
||||
Example: PRIVMSG Stskeeps :Hello. Unreal is a very good ircd.
|
||||
Example: PRIVMSG Stskeeps,codemastr,DrBin :Hello Unreal Coding Team
|
||||
|
||||
NOTICE
|
||||
- Mainly used for one-time communication or for the results of a command.
|
||||
Syntax: NOTICE <nick>,<nick2>,<nick3>,<nick4> <text>
|
||||
Example: NOTICE codemastr :Hi. How are you?
|
||||
Example: NOTICE codemastr,Stskeeps :Hi codemastr and Stskeeps.
|
||||
|
||||
MODE
|
||||
- Used to change the mode of a channel or a user. You can only change modes for channel you are an Operator or Half-Op on. Also, you can only changes user modes for yourself.
|
||||
Syntax: MODE <channel/user> <mode>
|
||||
Example: MODE #UnrealIRCD +tn
|
||||
Example: MODE #UnrealIRCD +ootn codemastr Stskeeps
|
||||
|
||||
NICK
|
||||
- Changes your "online identity" on a server. All those in the channel you are in will be alerted of your nickname change.
|
||||
Syntax: NICK <new nickname>
|
||||
Example: NICK |codemastr|
|
||||
|
||||
JOIN
|
||||
- Used to enter one or more channels on an IRC server. All occupants of the channel will be notified of your arrival.
|
||||
Syntax: JOIN <chan>,<chan2>,<chan3>
|
||||
Example: JOIN #UnrealIRCD
|
||||
Example: JOIN #UnrealIRCD,#OperHelp
|
||||
|
||||
PING
|
||||
- Determines the amount of lag (time it takes for a response to reach a person and come back) between yourself and someone else.
|
||||
Syntax: PING <user>
|
||||
Example: PING Stskeeps
|
||||
|
||||
WHOIS
|
||||
- Shows information about the user in question, such as their "name", channels they are currently in, their hostmask, etc.
|
||||
Syntax: WHOIS <user>
|
||||
Example: WHOIS DrBin
|
||||
|
||||
ISON
|
||||
- Used to determine of a certain user or users are currently on the IRC server based upon their nickname.
|
||||
Syntax: ISON <user> <user2> <user3> <user4>
|
||||
Example: ISON Stskeeps DrBin codemastr NickServ ChanServ OperServ MemoServ
|
||||
|
||||
USER
|
||||
- Used during registration to server (i.e. during inital connection sequence.)
|
||||
|
||||
PART
|
||||
- Used to part (or leave) a channel you currently occupy. All those in the channel will be notified of your departure.
|
||||
Syntax: PART <chan>,<chan2>,<chan3>,<chan4>
|
||||
Example: PART #UnrealIRCD
|
||||
Example: PART #UnrealIRCD,#OperHelp
|
||||
|
||||
QUIT
|
||||
- Disconnects you from the IRC server. Those in the channels you occupy will be notified of your departure. If you do not specify a reason, your nickname becomes the reason.
|
||||
Syntax: QUIT <reason>
|
||||
Example: QUIT Leaving!
|
||||
|
||||
USERHOST
|
||||
- Returns the userhost of the user in question. Usually used by scripts or bots to retrieve userhost information.
|
||||
Syntax: USERHOST <nickname>
|
||||
Example: USERHOST codemastr
|
||||
|
||||
SVSNICK
|
||||
- Can only be used by a U:Lined server (i.e. services). Changes the nickname of the user in question.
|
||||
Syntax: SVSNICK <nickname> <new nickname> :<timestamp>
|
||||
Example: SVSNICK Stskeeps Techie :963086432
|
||||
|
||||
SVSMODE
|
||||
- Can only be used by a U:Lined server (i.e. services). Changes the mode of the channel or user in question.
|
||||
Syntax: SVSMODE <channel/user> :<mode>
|
||||
Example: SVSMODE #UnrealIRCD :+o Stskeeps
|
||||
Example: SVSMODE codemastr :+i
|
||||
|
||||
LUSERS
|
||||
- Provides local and global user information (such as current and maximum user count).
|
||||
Syntax: LUSERS <server>
|
||||
|
||||
CHANSERV
|
||||
- Will send a secure message to ChanServ. Similar to /msg ChanServ, but more secure. May not work if server is configured improperly.
|
||||
|
||||
TOPIC
|
||||
- Sets/Changes the topic of the channel in question, or just display the current topic.
|
||||
Syntax: TOPIC <channel>
|
||||
Syntax: TOPIC <channel> <topic>
|
||||
Example: TOPIC #operhelp
|
||||
Example: TOPIC #UnrealIRCD Welcome to the Unreal IRCD Home Channel.
|
||||
|
||||
INVITE
|
||||
- Sends a user an invitation to join a perticular channel. You must be an operator on the channel in order to invite a user into it.
|
||||
Syntax: INVITE <user> <channel>
|
||||
Example: INVITE codemastr #OperHelp
|
||||
|
||||
KICK
|
||||
- Removes a user from a channel. Can only be used by Operators or Half-Ops. If no reason is specified, your nickname becomes the reason.
|
||||
Syntax: KICK <channel> <user> <reason>
|
||||
|
||||
WALLOPS
|
||||
- Sends a "message" to all those with the umode +w. Only IRCops can send wallops, while anyone can view them.
|
||||
Syntax: WALLOPS <message>
|
||||
|
||||
KILL
|
||||
- Forcefully disconnects a user from an IRC Sever. Can only be used by IRCops.
|
||||
Syntax: KILL <user> <reason>
|
||||
Example: KILL Clone5 Cloning is not allowed
|
||||
|
||||
AWAY
|
||||
- Sets your online status to "away".
|
||||
Syntax: AWAY <reason> (AWAY without a reason will unset you away)
|
||||
Example: AWAY Walking the dog...
|
||||
|
||||
SQUIT
|
||||
- Disconnects an IRC Server from the network
|
||||
Syntax: SQUIT <server>
|
||||
Example: SQUIT leaf.*
|
||||
|
||||
WHO
|
||||
- Searches user information (-i users only) for supplied information. IRCops are a ble to search +i users.
|
||||
Syntax: WHO <search>
|
||||
Example: WHO *.aol.com
|
||||
|
||||
WHOWAS
|
||||
- Retrieves previous 'WHOIS' information for users no longer connected to the server.
|
||||
Syntax: WHOWAS <nickname>
|
||||
Example: WHOWAS Stskeeps
|
||||
|
||||
LIST
|
||||
- Provides a complete listing of all channels on the network. If a search string is specified, it will only show those matching the search string.
|
||||
Syntax: LIST <search string>
|
||||
Example: LIST
|
||||
Example: LIST *ircd*
|
||||
|
||||
NAMES
|
||||
- Provides a list of users on the specified channel.
|
||||
Syntax: NAMES <channel>
|
||||
Example: NAMES #help
|
||||
|
||||
OPER
|
||||
- Attempts to give a user IRCop status.
|
||||
Syntax: OPER <uid> <pass>
|
||||
Example: OPER codemastr codeit
|
||||
|
||||
CONNECT
|
||||
- Links another IRC server to the one you are currently on. Remote connections are also possible.
|
||||
Syntax: CONNECT <server>
|
||||
Syntax: <CONNECT> <hub> <port> <leaf>
|
||||
Example: CONNECT leaf.*
|
||||
Example: CONNECT hub.* 6667 leaf.*
|
||||
|
||||
VERSION
|
||||
- Provides version information of the IRCD software in usage.
|
||||
Syntax: VERSION
|
||||
|
||||
STATS
|
||||
- Provides certain statistical information about the server (for example, u will provide uptime information).
|
||||
Syntax: STATS <letter>
|
||||
Example: STATS u
|
||||
|
||||
LINKS
|
||||
- Lists all of the servers currently linked to the network.
|
||||
Syntax: LINKS
|
||||
|
||||
ADMIN
|
||||
- Provides administrative information regarding the server.
|
||||
Syntax: ADMIN <server>
|
||||
|
||||
SAMODE
|
||||
- Allowed a services administrator to change the mode on a channel, without having operator status.
|
||||
Syntax: SAMODE <channel> <mode>
|
||||
Example: SAMODE #UnrealIRCD +m
|
||||
|
||||
SVSKILL
|
||||
- Can only be used by a U:Lined server. Forcefully disconnects a user from the network.
|
||||
Syntax: SVSKILL <user> <reason>
|
||||
Example: SVSKILL codemastr Goodbye
|
||||
|
||||
SVSNOOP
|
||||
- Can only be used by a U:Lined server. Enabled or disables whether Global IRCop functions exist on the server in question or not.
|
||||
Syntax: SVSNOOP <server> <+/->
|
||||
Example: SVSNOOP leaf.* -
|
||||
|
||||
MOTD
|
||||
- Displays the Message of the Day.
|
||||
Syntax: MOTD
|
||||
Syntax: MOTD <server>
|
||||
|
||||
KLINE
|
||||
- "Bans" a hostmask from connection to the IRC server.
|
||||
Syntax: KLINE <hostmask> <reason>
|
||||
Example: KLINE *@*.aol.com Abuse
|
||||
|
||||
UNKLINE
|
||||
- Removes a k:line from the server.
|
||||
Syntax: UNKLINE <hostmask>
|
||||
Example: UNKLINE *@*.aol.com
|
||||
|
||||
ZLINE
|
||||
- Disables all access to the IRC server from a specified IP.
|
||||
Syntax: ZLINE <ip>
|
||||
Example: ZLINE 127.0.0.1
|
||||
|
||||
UNZLINE
|
||||
- Removes a currently active z:Line.
|
||||
Syntax: UNZLINE <ip>
|
||||
Example: ZLINE 127.0.0.1
|
||||
|
||||
GLOBOPS
|
||||
- Sends a global "message" to all IRCops. Only viewable by IRCops (unlike WallOps, which can be viewed by normal users).
|
||||
Syntax: GLOBOPS <message>
|
||||
Example: GLOBOPS Going to be akilling those clones...
|
||||
|
||||
CHATOPS
|
||||
- GLOBOPS is usually reserved for important network information. Therefore, for Oper Chat, CHATOPS was invented. IRCops with the +c flag enabled will be able to send/receive CHATOPS messages.
|
||||
Syntax: CHATOPS <message>
|
||||
Example: CHATOPS How's everyone doing today?
|
||||
|
||||
LOCOPS
|
||||
- Similar to GLOBOPS, except only received by those IRCops local to your server.
|
||||
Syntax: LOCOPS <message>
|
||||
Example: LOCOPS Going to be adding a temp k:line for that user...
|
||||
|
||||
REHASH
|
||||
- Prompts the server to reread its configuration file (ircd.conf). Will also remove any temporarly lines (i.e. k:line).
|
||||
Syntax: REHASH
|
||||
|
||||
RESTART
|
||||
- Kills and restarts the irc daemon, disconnecting all users currently on that server.
|
||||
Syntax: RESTART
|
||||
Syntax: RESTART <password>
|
||||
|
||||
DIE
|
||||
- Kills the irc daemon, disconnecting all users currently on that server.
|
||||
Syntax: DIE
|
||||
Syntax: DIE <password>
|
||||
|
||||
RULES
|
||||
- Reads the rules.conf file and sends the contents to the user.
|
||||
Syntax: RULES
|
||||
|
||||
MAP
|
||||
- Provides a "network map" of the IRC network. Mainly used for routing purposes.
|
||||
Syntax: MAP
|
||||
|
||||
DALINFO
|
||||
- Original DALnet ircd credits.
|
||||
Syntax: DALINFO
|
||||
|
||||
MKPASSWD
|
||||
- Used for generating an encrypted password. Mainly used for encrypted O:Line passwords.
|
||||
Syntax: MKPASSWD <password>
|
||||
Example: MKPASSWD codeit
|
||||
|
||||
ADDLINE
|
||||
- Adds a line to the server's ircd.conf file. After added, you must REHASH the server for it to take affect.
|
||||
Syntax: ADDLINE <line>
|
||||
Example: ADDLINE C:127.0.0.1:server.dal.net:linking:7325:50
|
||||
|
||||
NACHAT
|
||||
- Similar to CHATOPS, but only Network Admins are able to send/recieve messages.
|
||||
Syntax: NACHAT <message>
|
||||
Example: NACHAT Linking a new server in a couple minutes...
|
||||
|
||||
KNOCK
|
||||
- For channels which are invite only, you can "knock" on the channel to request an invite.
|
||||
Syntax: KNOCK <channel> <message>
|
||||
Example: KNOCK #secret_chan I'm an op, let me in!
|
||||
|
||||
CREDITS
|
||||
- Credits for Unreal IRCD.
|
||||
Syntax: CREDITS
|
||||
|
||||
LICENSE
|
||||
- GPL information.
|
||||
Syntax: LICENSE
|
||||
|
||||
SVSJOIN
|
||||
- Forces a user to join a channel. Can only be used by a U:Lined server.
|
||||
Syntax: SVSJOIN <nick> <channel>
|
||||
Example: SVSJOIN codemastr #jail
|
||||
|
||||
SAJOIN
|
||||
- Forces a user to join a channel. Can only be used by a Services Admin.
|
||||
Syntax: SAJOIN <nick> <channel>
|
||||
Example: SAJOIN Stskeeps #OperHelp
|
||||
|
||||
SVSPART
|
||||
- Forces a user to leave a channel. Can only be used by a U:Lined server.
|
||||
Syntax: SVSPART <nick> <channel>
|
||||
Example: SVSPART codemastr #jail
|
||||
|
||||
SAPART
|
||||
- Forces a user to leave a channel. Can only be used by a Services Admin.
|
||||
Syntax: SAPART <nick> <channel>
|
||||
Example: SAPART Stskeeps #OperHelp
|
||||
|
||||
SETHOST
|
||||
- Changes the hostname of yourself. Only available to IRCops.
|
||||
Syntax: SETHOST <host>
|
||||
Example: SETHOST coder.tspre.org
|
||||
|
||||
SETIDENT
|
||||
- Changes the ident of yourself. Only available to IRCops.
|
||||
Syntax: SETIDENT <ident>
|
||||
Example: SETIDENT coder
|
||||
|
||||
SETNAME
|
||||
- Changes the "IRC Name" (or "Real Name") of yourself. Available to everyone.
|
||||
Syntax: SETNAME <name>
|
||||
Example: SETNAME Unreal Coding Team Member
|
||||
|
||||
CHGHOST
|
||||
- Changes the hostname of a user currently on the IRC network. Only available to IRCops.
|
||||
Syntax: CHGHOST <nick> <host>
|
||||
Example: CHGHOST codemastr coder.tspre.org
|
||||
|
||||
CHGIDENT
|
||||
- Changes the ident of a user currently on the IRC network. Only available to IRCops.
|
||||
Syntax: CHGIDENT <nick> <ident>
|
||||
Example: CHGIDENT codemastr coder
|
||||
|
||||
CHGNAME
|
||||
- Changes the "IRC Name" (or "Real Name") of a user currently on the IRC network. Only available to IRCops.
|
||||
Syntax: CHGNAME <nick> <name>
|
||||
Example: CHGNAME codemastr Unreal Coding Team Member
|
||||
|
||||
+303
-144
@@ -1,5 +1,5 @@
|
||||
esOriginally by Roddy Vagg -- roddy@dal.net
|
||||
modified for UnrealIRCD3.0
|
||||
Originally by Roddy Vagg -- roddy@dal.net
|
||||
modified for UnrealIRCD3.1 by codemastr
|
||||
|
||||
--------------------
|
||||
|
||||
@@ -40,7 +40,15 @@ modified for UnrealIRCD3.0
|
||||
7.7) .......................... Set SHOWOPERS Line
|
||||
7.8) .......................... Set KILLDIFF Line
|
||||
7.9) .......................... Set SHOWOPERMOTD Line
|
||||
7.10) .......................... Set HIDE_ULINES Line
|
||||
7.10).......................... Set HIDE_ULINES Line
|
||||
7.11).......................... Set ALLOW_CHATOPS Line
|
||||
7.12).......................... Set SOCKS_BAN_MESSAGE Line
|
||||
7.13).......................... Set SOCKS_QUIT_MESSAGE Line
|
||||
7.14).......................... Set SOCKSBANTIME Line
|
||||
7.15).......................... Set MAXCHANNELSPERUSER Line
|
||||
7.16).......................... Set WEBTV_SUPPORT Line
|
||||
7.17).......................... Set NO_OPER_HIDING Line
|
||||
7.18) ......................... Set AUTO_JOIN_CHANS Line
|
||||
8) ............................. network files
|
||||
8.1) .......................... Network Line
|
||||
8.2) .......................... Set ircnetwork Line
|
||||
@@ -52,7 +60,6 @@ modified for UnrealIRCD3.0
|
||||
8.8) .......................... Set sadmin_host Line
|
||||
8.9) .......................... Set netadmin_host Line
|
||||
8.10) ......................... Set coadmin_host Line
|
||||
8.11) ......................... Set techadmin_host Line
|
||||
8.12) ......................... Set hidden_host Line
|
||||
8.13) ......................... Set netdomain Line
|
||||
8.14) ......................... Set helpchan Line
|
||||
@@ -76,8 +83,8 @@ modified for UnrealIRCD3.0
|
||||
2) ircd.conf Basics:
|
||||
|
||||
When you compile your server, you must specify the correct paths to
|
||||
where you plan on keeping your ircd.conf, for simplicity it is recomended
|
||||
that you keep it in the same diretory as your ircd binary and other ircd
|
||||
where you plan on keeping your ircd.conf, for simplicity it is recommended
|
||||
that you keep it in the same directory as your ircd binary and other ircd
|
||||
files.
|
||||
note: You need only supply full pathnames for DPATH and SPATH, the
|
||||
other defines will only point to files under these directories so you
|
||||
@@ -89,7 +96,7 @@ modified for UnrealIRCD3.0
|
||||
When you have made your ircd.conf you may check it with the program
|
||||
`chkconf', this program is supplied with the source code release and will
|
||||
be installed into your ircd directory when you run `make install',
|
||||
`chkconf' will check your ircd.conf for errors so is a usefull tool for
|
||||
`chkconf' will check your ircd.conf for errors so is a useful tool for
|
||||
beginners to ircd.conf.
|
||||
Your ircd.conf will be made up of a series of lines, each line is used
|
||||
for a different purpose in the running of your server, some lines are
|
||||
@@ -97,12 +104,12 @@ modified for UnrealIRCD3.0
|
||||
start, these lines are listed below.
|
||||
You may enter comments in your ircd.conf with the use of a hash mark (#)
|
||||
at the beginning of a line, it is recommended that you make full use of
|
||||
this to add comments to everything you put in your ircd.conf so you dont
|
||||
this to add comments to everything you put in your ircd.conf so you don't
|
||||
have any problems later.
|
||||
eg: Put a contact email address and the name/nick of the server admin
|
||||
above each C/N line pair.
|
||||
When ircd reads the ircd.conf file, it does it upside down, so lines with
|
||||
higher prefrence should go lower in the file, this will be explained later.
|
||||
higher preference should go lower in the file, this will be explained later.
|
||||
|
||||
--------------------
|
||||
|
||||
@@ -116,7 +123,7 @@ modified for UnrealIRCD3.0
|
||||
to other servers. (note: you can run ircd stand alone)
|
||||
SUGGESTED: it is highly suggested that you use this line
|
||||
OPTIONAL: it's completely up to you whether to define this or not
|
||||
DISCOURAGED: you really really should not use this line if at all
|
||||
DISCOURAGED: you really should not use this line if at all
|
||||
possible.
|
||||
|
||||
Note that "*" in a field indicates an "unused" field.
|
||||
@@ -126,35 +133,18 @@ modified for UnrealIRCD3.0
|
||||
3.1) M Lines: [MANDATORY]
|
||||
|
||||
This line sets your server's name, description, and port number.
|
||||
If you are to be a part of DALnet you will be assigned 2 different
|
||||
DNS entries for your ircd machine, the 1st is for general public use
|
||||
and involves: <servername>.DAL.net
|
||||
The second is for use between servers for identification, these take
|
||||
the form of: <servername>.[<state>].<country>.DAL.net
|
||||
If your server is located in the US or Australia, you will be given
|
||||
a `state' field in your server's real name, otherwise your `state', or
|
||||
`area' will not be included.
|
||||
Most IRC networks default to port 6667 for their client connection's,
|
||||
but DALnet uses port 7000 as its standard, you should compile ircd with
|
||||
port 7000, not 6667, but you may open up port 6667 (it is recomended
|
||||
that you do) with a P line (see later). Your M line's port number
|
||||
should be the same as the number you defined in your config.h at compile
|
||||
time.
|
||||
The standard port number used by most networks and supported by most clients is
|
||||
6667. It is recommended that you specify this as your main port.
|
||||
|
||||
|
||||
Syntax:
|
||||
M:hostname:IP:Description Of Your Server:7000
|
||||
M:hostname:IP:Description Of Your Server:6667
|
||||
The 1st field should be the `real' name of your server, not the short
|
||||
name.
|
||||
The 2nd field is the IP the server should bind to - "*" if all interfaces
|
||||
on the server
|
||||
The 3rd field is your server's description, it is up to you what you
|
||||
put in this field, but a short description of its geographic location
|
||||
is recomended.
|
||||
The 4th field is the port number you compiled ircd with. This should be
|
||||
7000 for DALnet.
|
||||
The 2nd field is the IP the server should bind to. Use an "*" to bind to all interfaces on the server. The 3rd field is your server's description, it is up to you what you put in this field, but a short description of its geographic location is recommended. The 4th field is the port number you compiled ircd with. This generally should be 6667.
|
||||
|
||||
Example:
|
||||
M:disney.irc.net::Walt's IRC Server:7000
|
||||
M:Irc.yournet.com::My first IRC server:6667
|
||||
|
||||
--------------------
|
||||
|
||||
@@ -174,7 +164,7 @@ A:A little info about your server:Admin's nick/real name:contact address
|
||||
responsible for the server.
|
||||
|
||||
Example:
|
||||
A:Disney's IRC Server:Admin - Walt Disney:walt@RIP.org
|
||||
A:FooBar IRC Server:Admin - foobar:email - foo@bar.com
|
||||
|
||||
--------------------
|
||||
|
||||
@@ -183,10 +173,8 @@ A:Disney's IRC Server:Admin - Walt Disney:walt@RIP.org
|
||||
These lines define connection classes. They allow you to fine-tune
|
||||
your incomming and outgoing connections, both server and client types.
|
||||
These classes are for use with C, N, I and O lines, more on this in later
|
||||
sections. DALnet has a set of Y lines that each server must use for their
|
||||
server connections, these are listed below and again at the bottom of this
|
||||
document. Client connection classes are your responsibility, you must
|
||||
make up your own set of Y lines for client connections based on your own
|
||||
sections. Client and server connection classes are your responsibility, you
|
||||
must make up your own set of Y lines for client connections based on your own
|
||||
situation (netwise location, machine, etc).
|
||||
Connection classes define a number of parameters for connections, these
|
||||
include:
|
||||
@@ -210,7 +198,7 @@ A:Disney's IRC Server:Admin - Walt Disney:walt@RIP.org
|
||||
listed in the server's ircd.conf (see C/N lines) is missing and belongs
|
||||
on a conenction class that is holding less connections that defined by
|
||||
the max links field, the server will keep on trying to connect to
|
||||
the missing server. The ammount time between connection attempts is what
|
||||
the missing server. The amount time between connection attempts is what
|
||||
you define in this field.
|
||||
example:
|
||||
server1 and server2 are listed in server0's ircd.conf but the only
|
||||
@@ -226,10 +214,10 @@ A:Disney's IRC Server:Admin - Walt Disney:walt@RIP.org
|
||||
class will be allowed as this number on server connection classes is used for
|
||||
auto-connect purposes. As shown in the above example, when a missing server
|
||||
is listed for a particular connection class, and the class is not `full',
|
||||
your server will try and connect to this server untill it becomes visible
|
||||
your server will try and connect to this server until it becomes visible
|
||||
again. Servers being connected manually on a `full' connection class via the
|
||||
/connect command will be allowed as long as you compiled with MAXIMUM_LINKS
|
||||
high enough to accomidate all of your server connections. (you must compile
|
||||
high enough to accommodate all of your server connections. (you must compile
|
||||
as a HUB if you wish to hold more than one server connection, also see H
|
||||
lines later in this document).
|
||||
- Maximum sendq: SendQ defines the `que' of data waiting to be sent to the
|
||||
@@ -242,7 +230,7 @@ A:Disney's IRC Server:Admin - Walt Disney:walt@RIP.org
|
||||
0, it is `abnormal' for a sendq to be high for a client for a long period
|
||||
of time. When 2 servers connect, they must send their own data to
|
||||
eachother, this data includes: all the users on the server and already
|
||||
connected servers, channels, user modes, channel modes, topics (DALnet only)
|
||||
connected servers, channels, user modes, channel modes, topics
|
||||
etc. When there are many clients on a particular side of the connection, a
|
||||
sendq will build up, especially if the link is slow, or already congested
|
||||
(example: the link from Australia to the US). When the sendq built up reaches
|
||||
@@ -272,7 +260,7 @@ Y:1:90:0:20:10000
|
||||
The number of clients allowed to use this class is 20.
|
||||
Clients may only build up a sendq on the server of 10000 bits.
|
||||
|
||||
These are the standard server Y lines used on DALnet:
|
||||
These are some standard Y:lines that most networks use:
|
||||
|
||||
# Connecting a hub to a hub
|
||||
Y:20:10:300:1:3000000
|
||||
@@ -288,6 +276,10 @@ Y:45:60:20:1:2200000
|
||||
Y:42:240:0:0:2200000
|
||||
# Connecting an AU leaf to a US hub
|
||||
Y:43:240:60:1:2200000
|
||||
# Oper connection class
|
||||
Y:10:300:0:20:1000000
|
||||
#User connection class
|
||||
Y:1:90:0:256:500000
|
||||
|
||||
--------------------
|
||||
|
||||
@@ -298,7 +290,7 @@ Y:43:240:60:1:2200000
|
||||
may connect, and which connection class they will connect through.
|
||||
I lines, like C, N and O lines refer back to Y lines, as they allow
|
||||
connections, and each connection to ircd needs to be assigned to a
|
||||
connection class. If you dont provide a connection class, the connection
|
||||
connection class. If you don't provide a connection class, the connection
|
||||
will be governed by the defaults set at compile time in your config.h.
|
||||
When a client connects to the server, it gives its own information,
|
||||
this information includes username, nick and can include a password, the
|
||||
@@ -346,9 +338,9 @@ I:205.133.*::*.toledolink.com::1
|
||||
address starting with 205.133 OR with a hostname ending in
|
||||
.toledolink.com to connect to the server. remember, ircd uses the
|
||||
right-most match, so if I connect as rmiller@glass.toledolink.com
|
||||
(which is rmiller@205.133.127.8) I will show up on irc as
|
||||
(which is rmiller@205.133.127.8) I will show up on IRC as
|
||||
rmiller@glass.toledolink.com since that is the first match it found.
|
||||
(Even though the second match is valid). Any clients comming through
|
||||
(Even though the second match is valid). Any clients coming through
|
||||
on this line will use connection class 1.
|
||||
|
||||
I:*@205.133.*::*@*.toledolink.com::1
|
||||
@@ -374,11 +366,11 @@ I:NOMATCH::*@*.de::3
|
||||
I:NOMATCH::*@*.se::4
|
||||
I:NOMATCH::*@*.au::5
|
||||
I:129.180.*::*.une.edu.au::6
|
||||
In this example, conencting clients will 1st be matched against the mask
|
||||
In this example, connecting clients will 1st be matched against the mask
|
||||
*.une.edu.au, if they match they will be placed on connection class 6
|
||||
(note: if 6 is full, they will be rejected, they wont be passed on to the
|
||||
next I line), then tried against the IP 129.180.*, if they match, they will
|
||||
be placed on class 6. If the client dosen't match either of these masks, they
|
||||
be placed on class 6. If the client doesn't match either of these masks, they
|
||||
will be tried against the mask *.au, so if they are from Australia, but are
|
||||
not from *.une.edu.au they will be placed on class 5. This goes on through
|
||||
the other lines, being placed on the various connection classes if they match
|
||||
@@ -394,12 +386,12 @@ I:129.180.*::*.une.edu.au::6
|
||||
These lines provide rules as to who may gain Operator status on your server.
|
||||
O lines are much like I lines in their operation and syntax.
|
||||
Servers need not have any Operators as ircd, given well defined connection's
|
||||
can perform all of its functions automatically. Server admins have the
|
||||
can perform all of its functions automatically. Server admin's have the
|
||||
ability to `kill -HUP' the server's PID to rehash the config file, removing
|
||||
the need to use the /rehash command. However, a well running network such as
|
||||
DALnet needs operators to oversee the users of the server, and make sure
|
||||
users actually enjoy their time on IRC without being continually harrased
|
||||
etc by troublematers.
|
||||
the need to use the /rehash command. However, an efficient network needs
|
||||
operators to oversee the users of the server, and make sure
|
||||
users actually enjoy their time on IRC without being continually harassed
|
||||
etc by troublemakers.
|
||||
O lines give users power over the whole network, to use commands
|
||||
such as /kill, local Operators only have power on their local server, that
|
||||
is, the server where they can use the /oper command to make themselves +o.
|
||||
@@ -411,41 +403,76 @@ I:129.180.*::*.une.edu.au::6
|
||||
|
||||
Syntax:
|
||||
|
||||
O:hostname:password:nickname::class
|
||||
O:hostname:password:nickname:flags:class
|
||||
See I lines for rules about the hostname and using ident.
|
||||
If you use ident, a client matching the hostname must have ident running on
|
||||
their host to be able to +o themselves.
|
||||
If you compiled defining oper passwords to be crypted, you must 1st crypt
|
||||
the plaintext using mkpasswd, a program supplied with the ircd distribution.
|
||||
the plain text using mkpasswd, a program supplied with the ircd distribution.
|
||||
See src/crypt/README for more information on this.
|
||||
The nickname is the nickname they must pass with the /oper command
|
||||
ie:
|
||||
/oper <nickname> <password>
|
||||
The flags allow you to specify what access an oper will have with great
|
||||
control. This also allows you to give users Administrator access on your
|
||||
server. A set of standard FULL ACCESS flags is OaARDNz*^. See below for a
|
||||
complete list of flags.
|
||||
|
||||
The class is the connection class to be used when the user /oper's using
|
||||
the O line, they connect using the standard I -- Y lines, but when they
|
||||
/oper succusfully they are passed across to the new Y line.
|
||||
/oper successfully they are passed across to the new Y line.
|
||||
|
||||
Examples:
|
||||
|
||||
O:RIP.org:waltspass:Walt::10
|
||||
O:RIP.org:waltspass:Walt:OaARD:10
|
||||
This line will allow anyone on the host RIP.org (running ident or not) to
|
||||
issue the command `/oper Walt waltspass', at which point they will be moved
|
||||
over to class 10 and be made usermode +o.
|
||||
over to class 10 and be made an Admin with /restart and /die access.
|
||||
|
||||
Valid Flags:
|
||||
r = access to /rehash server
|
||||
R = access to /restart server
|
||||
D = access to /die server
|
||||
h = oper can send /help ops
|
||||
g = oper can send /globops
|
||||
w = oper can send /wallops
|
||||
l = oper can send /locops
|
||||
c = access to do local /squits and /connects
|
||||
L = access to do remote /squits and /connects
|
||||
k = access to do local /kills
|
||||
K = access to do global /kills
|
||||
b = oper can /kline users from server
|
||||
B = oper can /unkline users from server
|
||||
n = oper can send local server notices(/notice $servername message)
|
||||
G = oper can send global server notices(/notce $*.my.net message)
|
||||
S = oper can join unlimited amount of channels
|
||||
A = admin
|
||||
u = oper can set /umode +c
|
||||
f = oper can set /umode +f
|
||||
^ = oper can set /umode +I
|
||||
e = oper can set /umode +e
|
||||
W = oper can set /umode +W
|
||||
H = oper gets auto +x on /oper
|
||||
o = local oper, flags included: rhgwlckbBnuf
|
||||
O = global oper, flags included: oRDCK
|
||||
a = services admin, access to /samode
|
||||
C = co admin
|
||||
A = admin
|
||||
N = network admin access to remote /rehash and remote /restart and a bunch more
|
||||
* = flags included: AaNCTzSHW^
|
||||
--------------------
|
||||
|
||||
3.6) U Lines: [OPTIONAL]
|
||||
|
||||
These lines define which server(s) on the network your server is connected
|
||||
to will be able to `hack' channel modes.
|
||||
On DALnet, services.dal.net is given this power, this allows the server
|
||||
On most networks, services are given this power, this allows the server
|
||||
to change modes on channels without being a channel operator, the
|
||||
commonly used form is ChanServ changing channel modes while not in the
|
||||
channels.
|
||||
If you are connected to a network such as DALnet that requires you to have
|
||||
certain U lines and you don't have them, your server will cause problems
|
||||
to the other servers when the server(s) that require U lines attempt to
|
||||
change channel modes.
|
||||
It is very important that you add the U:lines required by your network, because
|
||||
if you don't it can lead to desync in channel modes as well as "mode setting
|
||||
wars".
|
||||
U lined servers also have the capability to add Akill's to your server,
|
||||
Akill's are much the same as the /kline command except that they show up
|
||||
as A: lines on /stats k.
|
||||
@@ -456,11 +483,9 @@ U:servername:*:*
|
||||
lined server's name.
|
||||
|
||||
Example:
|
||||
U:services.dal.net::
|
||||
U:services2.dal.net::
|
||||
Both these lines are required on all DALnet server's, they allow servers
|
||||
with the name's `services.dal.net' and `services2.dal.net' to hack channel
|
||||
modes.
|
||||
U:services.your.net:*:*
|
||||
This will allow services.your.net to "hack" channel modes and use certain
|
||||
U:line only commands.
|
||||
|
||||
--------------------
|
||||
|
||||
@@ -469,13 +494,13 @@ U:services2.dal.net::
|
||||
These lines are always used in pairs, one will not work without the other.
|
||||
C lines define who your server may connect to, while N lines define what
|
||||
servers may connect to you.
|
||||
When two servers connect, they both send eachother the `SERVER' command,
|
||||
When two servers connect, they both send each other the `SERVER' command,
|
||||
this command contains the server name and server info (set by M lines)
|
||||
along with this command is sent a password with the PASS command, C and N
|
||||
lines provide a set of rules governing the connection between servers
|
||||
given the details of the server and pass command's.
|
||||
When one a server initiates the connection, the other server will check
|
||||
the details of the incomming server against its N lines, if a match is
|
||||
the details of the incoming server against its N lines, if a match is
|
||||
found, the server will return the server and pass command's to the
|
||||
initiating server, which will also check its N lines for a match.
|
||||
For a server to initiate a connection, it must have a C line. C lines
|
||||
@@ -488,7 +513,7 @@ U:services2.dal.net::
|
||||
C:remote server's hostname/IP:password:remote server's name:port:class
|
||||
N:remote server's hostname/IP:password:remote server's name:host mask:class
|
||||
The remote server's hostname/IP should be the location on the internet that
|
||||
the server can be found. IP addresses are prefered as they are more secure,
|
||||
the server can be found. IP addresses are preferred as they are more secure,
|
||||
and can be a little quicker for the server. As with I and O lines, ident
|
||||
can be used with this 1st field to specify the username the ircd on the
|
||||
remote server is running from (if the remote server is running ident), to
|
||||
@@ -496,10 +521,10 @@ N:remote server's hostname/IP:password:remote server's name:host mask:class
|
||||
The password should be crypted if you compile ircd specifying that link
|
||||
passwords should be crypted. Your link passwords should be very secure, as
|
||||
they provide more power, if hacked, than Operator passwords do. However
|
||||
crypted link passwords can be very akward to keep track of.
|
||||
crypted link passwords can be very awkward to keep track of.
|
||||
Your C line password is the password used in the pass command, while your
|
||||
N line password will be used to check against the pass command used by
|
||||
incomming servers. So, your C line password should match the listed
|
||||
incoming servers. So, your C line password should match the listed
|
||||
server's N line password, and your N line password should match their C
|
||||
line password.
|
||||
If you compile your ircd specifying crypted link passwords, you only need
|
||||
@@ -513,10 +538,8 @@ N:remote server's hostname/IP:password:remote server's name:host mask:class
|
||||
with the SERVER command, so it must match the one given. The C and N line
|
||||
pair should have the same name for this field.
|
||||
The 4th field of C lines may contain the remote servers connection port.
|
||||
Even though DALnet runs all its servers with a standard port 7000 open,
|
||||
server -- server connections should be taken place through port 7325. It is
|
||||
not mandatory that you place a port number in this field. If you don't give
|
||||
a port number, the server will not try and autoconnect to the listed
|
||||
It is not mandatory that you place a port number in this field. If you don't
|
||||
give a port number, the server will not try and autoconnect to the listed
|
||||
server. If you do give a port number, the server will only try and
|
||||
autoconnect to the listed server if there is enough room on the connection
|
||||
class listed at the end of the C line (connection classes are covered in
|
||||
@@ -527,7 +550,7 @@ N:remote server's hostname/IP:password:remote server's name:host mask:class
|
||||
port number, any /connect command's will use this port unless another port
|
||||
number is given with the command.
|
||||
The 4th field of N lines is called the `host mask', this defined how many
|
||||
parts of your hostname the incomming server will mask to. So, if your
|
||||
parts of your hostname the incoming server will mask to. So, if your
|
||||
server's name is disney.us.dal.net, and you want the connecting server to
|
||||
see you as *.us.dal.net you will give a host mask of 1 in your N line. This
|
||||
field should normally be left blank.
|
||||
@@ -535,38 +558,38 @@ N:remote server's hostname/IP:password:remote server's name:host mask:class
|
||||
place the connection on. If your C line has a 42 in this field, and your
|
||||
server initiates a connection through this line, the connection will be
|
||||
placed on class 42, however, if You have a 42 in your C line and a 43 in
|
||||
your N line and an incomming server initiates a connection via this N
|
||||
your N line and an incoming server initiates a connection via this N
|
||||
line, the server connection will be placed on class 43.
|
||||
|
||||
Examples:
|
||||
C:143.53.233.32:mypass:somewhere.fr.dal.net:7325:35
|
||||
N:143.53.233.32:yourpass:somewhere.fr.dal.net::35
|
||||
C:143.53.233.32:mypass:somewhere.fr.your.net:7325:35
|
||||
N:143.53.233.32:yourpass:somewhere.fr.your.net::35
|
||||
This set will allow a server named somewhere.fr.dal.net to connect to your
|
||||
server if it has the IP address of 143.53.233.32 and gives a password of
|
||||
`yourpass'. This connection will be governed by connection class 35.
|
||||
If your server recieves the command /connect somewhere.*, it will try and
|
||||
If your server receives the command /connect somewhere.*, it will try and
|
||||
connect to the IP 143.53.233.32 through port 7325 and give the password
|
||||
`mypass'.
|
||||
|
||||
C:143.53.233.32:mypass:somewhere.fr.dal.net:7325:35
|
||||
N:143.53.233.32:yourpass:somewhere.fr.dal.net::35
|
||||
C:ircd@176.43.652.31:apass:elsewhere.jp.dal.net:7235:35
|
||||
N:ircd@176.43.652.31:THEpass:elsewhere.jp.dal.net::33
|
||||
C:143.53.233.32:mypass:somewhere.fr.your.net:7325:35
|
||||
N:143.53.233.32:yourpass:somewhere.fr.your.net::35
|
||||
C:ircd@176.43.652.31:apass:elsewhere.jp.your.net:7235:35
|
||||
N:ircd@176.43.652.31:THEpass:elsewhere.jp.your.net::33
|
||||
Both these set's will work as explained above, but if your Y line defining
|
||||
class 35 has `max links' set to 1, and one of these servers is connected to
|
||||
your server, your server will not try and autoconnect to the other since
|
||||
the Y line is `full', but it will accept any incomming connections from the
|
||||
the Y line is `full', but it will accept any incoming connections from the
|
||||
other server and any /connect commands given for this server. If your Y
|
||||
line allows for more connections but your C lines do not have port numbers,
|
||||
your server will not try and autoconnect.
|
||||
Since the second set in this example has a username, ident will be used to
|
||||
authenticate any connections made to this server. If the listed server does
|
||||
not run ident, or the incomming connection comes from another username, the
|
||||
not run ident, or the incoming connection comes from another username, the
|
||||
connection will be rejected.
|
||||
If a connection is made via the second set by your server, the connection
|
||||
will be ruled by connection class 35, if the other server initiates the
|
||||
connection, the connection will use class 33.
|
||||
Autoconnect C/N line pairs can be given prefrence over other pairs by placing
|
||||
Autoconnect C/N line pairs can be given preference over other pairs by placing
|
||||
them lower in your ircd.conf, the lower the line, the higher the priority
|
||||
when autoconnecting.
|
||||
Connection classes and C/N line set's allow you to refine your autoconnects
|
||||
@@ -577,16 +600,16 @@ N:ircd@176.43.652.31:THEpass:elsewhere.jp.dal.net::33
|
||||
|
||||
3.8) K Lines [OPTIONAL]
|
||||
|
||||
These lines restric access to certain users to your server based on
|
||||
These lines restrict access to certain users to your server based on
|
||||
user@host matches and time of the day.
|
||||
K lines can come in 3 forms, only one of which you can specify in your
|
||||
ircd.conf, this type will show up as K on /stats k, the other other types
|
||||
ircd.conf, this type will show up as K on /stats k, the other types
|
||||
are `AutoKill' which will show up as A on /stats k, and `kline' which will
|
||||
show up as k on /stats k. AutoKill's are set by U lined servers (see
|
||||
above), they act in the same way as K lines except that they are set
|
||||
remotly and are usually set on all servers, they dissapear when you
|
||||
remotely and are usually set on all servers, they disappear when you
|
||||
/rehash or restart your server. klines are set via the /kline command,
|
||||
they operate more like AutoKill's than K lines because they also dissapear
|
||||
they operate more like AutoKill's than K lines because they also disappear
|
||||
when you /rehash, or restart the server. The /kline command can be used on
|
||||
nicknames that appear on IRC, or you can use a user@host mask. If the
|
||||
/kline is done on an existing nickname, a kline will be set with that users
|
||||
@@ -628,9 +651,9 @@ K:*.lamer.org:|kc.spamming:*
|
||||
|
||||
K:*::*rad
|
||||
This K line will reject anyone with the username `rad', or anything ending
|
||||
in `rad'. This ban will dissalow anyone using `rad' running ident or not.
|
||||
in `rad'. This ban will disallow anyone using `rad' running ident or not.
|
||||
You must always take into account the ident character (`~') that is placed
|
||||
infront of usernames when their host is not running ident. If you place a
|
||||
in front of usernames when their host is not running ident. If you place a
|
||||
K line on a username `rad' the user will be banned only if they are running
|
||||
ident, but if this user can turn off ident they can appear as ~rad, this
|
||||
will allow them to bypass any ban of username `rad'. So, wildcards should
|
||||
@@ -642,24 +665,24 @@ K:*::*rad
|
||||
|
||||
3.9) Q Lines (server form) [DISCOURAGED]
|
||||
|
||||
Server form Q lines on DALnet servers are used to dissalow operators on
|
||||
Server form Q lines on servers are used to disallow operators on
|
||||
certain servers to use commands such as remote /kill's, and remote
|
||||
/connect's, this will effectivly restrict the operators on the server to
|
||||
local operator priveleges. These lines are usually only used for `test'
|
||||
server situations. If a server isn't officially part of DALnet, they may
|
||||
/connect's, this will effectively restrict the operators on the server to
|
||||
local operator privileges. These lines are usually only used for `test'
|
||||
server situations. If a server isn't officially part of a network, they may
|
||||
be temporarily linked and Q lined, this means the server can be tested
|
||||
while not posing a threat to the rest of DALnet. Q lines need only be
|
||||
while not posing a threat to the rest of the network. Q lines need only be
|
||||
placed on the hub connecting the `test' server.
|
||||
|
||||
Syntax:
|
||||
Q:*:*:servername
|
||||
The 1st 2 fields are currently unused. A Q line placed on a hub connected
|
||||
to the named server will dissalow operators on the server to affect other
|
||||
to the named server will disallow operators on the server to affect other
|
||||
DALnet users/servers.
|
||||
|
||||
Example:
|
||||
Q:::test-server.my.dal.net
|
||||
Q line a server with the name `test-server.my.dal.net'.
|
||||
Q:::test-server.my.net
|
||||
Q line a server with the name `test-server.my.net'.
|
||||
|
||||
--------------------
|
||||
|
||||
@@ -682,10 +705,10 @@ Q:*:reason why nick is quarantined:nickname
|
||||
|
||||
Examples:
|
||||
Q::No nicknames on MY server!:*
|
||||
This Q line will dissalow any nicknames on the server giving the reason:
|
||||
This Q line will disallow any nicknames on the server giving the reason:
|
||||
No nicknames on MY server!
|
||||
Only Operators will be allowed to use any nicknames, but since you must be
|
||||
a user before you can be +o, you will effectivly ban everyone from your
|
||||
a user before you can be +o, you will effectively ban everyone from your
|
||||
server.
|
||||
|
||||
Q::Do not use the Lords name in vain!:God
|
||||
@@ -693,7 +716,7 @@ Q::Do not use the Lords name in vain!:God
|
||||
that they must find a new nickname and will be given the reason:
|
||||
Do not use the Lords name in vain!
|
||||
|
||||
DALnet has a set of standard Q lines that should be in place on all
|
||||
Below are a set of standard Q lines that should be in place on all
|
||||
server's. They are as follows:
|
||||
|
||||
Q::Reserved for services:*Chan*S*rv*
|
||||
@@ -701,8 +724,9 @@ Q::Reserved for services:*Nick*S*rv*
|
||||
Q::Reserved for services:*Memo*S*rv
|
||||
Q::Reserved for services:*Oper*S*rv*
|
||||
Q::Reserved for services:*Help*S*rv*
|
||||
Q::Reserved for operators:DALnet
|
||||
Q::Reserved for services:*Stat*S*rv*
|
||||
Q::Reserved for operators:IRC*op*
|
||||
Q::Reserved for operators:*oper*
|
||||
Q::Causes problems with mIRC:Status
|
||||
|
||||
--------------------
|
||||
@@ -711,7 +735,7 @@ Q::Causes problems with mIRC:Status
|
||||
|
||||
These lines specify which servers are to behave as leaves, that is,
|
||||
servers that may not have any other servers connected to them.
|
||||
They will only be usefull if your server is a non-leaf (hub) server.
|
||||
They will only be useful if your server is a non-leaf (hub) server.
|
||||
Not only can you limit servers to leaves, but you can also specify
|
||||
what tree depth may appear after certain servers. If a server connects
|
||||
but tells your server that it has a larger tree depth behind it than is
|
||||
@@ -738,18 +762,18 @@ L:hostmask of disallowed servers:*:server name:depth
|
||||
|
||||
Examples:
|
||||
L:::leaf.de.dal.net
|
||||
This line will allow a server named `leaf.de.dal.net' to connect only as
|
||||
This line will allow a server named `leaf.de.your.net' to connect only as
|
||||
a leaf. So this server may not connect any other servers behind it.
|
||||
|
||||
L:::semi-hub.sg.dal.net:1
|
||||
This line will force the server named `semi-hub.sg.dal.net' to allow only
|
||||
This line will force the server named `semi-hub.sg.your.net' to allow only
|
||||
leaf servers to connect behind it. ie: to have a tree depth of 1.
|
||||
|
||||
L:*.us.dal.net::*.au.dal.net
|
||||
L:*.eu.dal.net::*.au.dal.net
|
||||
L:*.us.dal.net::*.au.your.net
|
||||
L:*.eu.dal.net::*.au.your.net
|
||||
These lines will make sure that any server with a name matching
|
||||
*.au.dal.net will not introduce any servers matching *.us.dal.net or
|
||||
*.eu.dal.net. This can be usefull for stopping certain hubs from letting
|
||||
*.au.your.net will not introduce any servers matching *.us.your.net or
|
||||
*.eu.your.net. This can be useful for stopping certain hubs from letting
|
||||
its autoconnects route the network badly.
|
||||
|
||||
--------------------
|
||||
@@ -763,7 +787,7 @@ L:*.eu.dal.net::*.au.dal.net
|
||||
|
||||
Syntax:
|
||||
H:servers which are allowed behind the hub:*:hub servername
|
||||
The 1st field defines what servernames the H lined server is allowed to
|
||||
The 1st field defines what server names the H lined server is allowed to
|
||||
introduce. Wildcards are allowed.
|
||||
The 2nd field is currently unused and should be left blank.
|
||||
The 3rd field should be the exact name of the server allowed to be a hub
|
||||
@@ -771,16 +795,16 @@ H:servers which are allowed behind the hub:*:hub servername
|
||||
the server's name includes a `*' (See N lines for host masking).
|
||||
|
||||
Examples:
|
||||
H:*::dal-hub.us.dal.net
|
||||
This line will allow the server with the name `dal-hub.us.dal.net' to act
|
||||
H:*::dal-hub.us.your.net
|
||||
This line will allow the server with the name `dal-hub.us.your.net' to act
|
||||
as a hub server while you are connected to it, there are no restrictions
|
||||
on the names of the servers it may introduce.
|
||||
|
||||
H:*.us.dal.net::usa-hub.us.dal.net
|
||||
This line will allow the server named `usa-hub.us.dal.net' to act as a hub
|
||||
H:*.us.dal.net::usa-hub.us.your.net
|
||||
This line will allow the server named `usa-hub.us.your.net' to act as a hub
|
||||
while your server is connected to it, but it is limited to introducing
|
||||
servers with names matching `*.us.dal.net', so any servers trying to
|
||||
connect to `usa-hub.us.dal.net' with a name such as `bad-link.nz.dal.net'
|
||||
servers with names matching `*.us.your.net', so any servers trying to
|
||||
connect to `usa-hub.us.your.net' with a name such as `bad-link.nz.your.net'
|
||||
will be rejected by your server.
|
||||
|
||||
--------------------
|
||||
@@ -811,8 +835,7 @@ P:hostmask or UNIX socket file:*:*:port number
|
||||
|
||||
Examples:
|
||||
P:*:::7325
|
||||
This will open up the DALnet server connection port and wait for
|
||||
connections. This line is mandatory if you run a server connected to DALnet
|
||||
This will open up port 7325.
|
||||
|
||||
P:*.net:::6665
|
||||
This line will open up port 6665 and wait for connections, connections from
|
||||
@@ -906,10 +929,10 @@ e:234.45.32.1:*:*
|
||||
|
||||
3.17) Summary:
|
||||
|
||||
Well, thats it for the lines you may use in your ircd.conf. Remember that
|
||||
Well, that's it for the lines you may use in your ircd.conf. Remember that
|
||||
ircd.conf is an art, just like any other type of programming. Some parts
|
||||
are particularly easy, but other's, like Y lines, can take a while to get
|
||||
used to. Given a little time experementing with lines on a network of
|
||||
used to. Given a little time experimenting with lines on a network of
|
||||
servers, you will become well versed in ircd.conf programming.
|
||||
|
||||
Good luck!
|
||||
@@ -1257,6 +1280,161 @@ Set HIDE_ULINES .........: 0
|
||||
|
||||
--------------------
|
||||
|
||||
7.11) Set ALLOW_CHATOPS Line
|
||||
|
||||
This line defines whether or not /chatops will be allowed to be used. When
|
||||
disabled /chatops as well as user mode +b will be disabled.
|
||||
|
||||
Syntax:
|
||||
Set ALLOW_CHATOPS .......: 1/0
|
||||
If this line is set to 1, then /chatops and +b are allowed, if it is set to 0,
|
||||
then /chatops and +b are disabled.
|
||||
|
||||
Examples:
|
||||
Set ALLOW_CHATOPS .......: 1
|
||||
This line will allow use of /chatops and +b.
|
||||
|
||||
Set ALLOW_CHATOPS .......: 0
|
||||
This line will disable /chatops and +b.
|
||||
|
||||
--------------------
|
||||
|
||||
7.12) Set SOCKS_BAN_MESSAGE Line
|
||||
|
||||
This line allows you to specify the reason to be used in the Z:line when a user
|
||||
is killed for an open proxy server. It is very important that this is set, if
|
||||
left NULL it can cause serious problems.
|
||||
|
||||
Syntax:
|
||||
Set SOCKS_BAN_MESSAGE ...: message
|
||||
In this line the word "message" should be replaced with the reason the user is
|
||||
being Z:lined, the default is "Insecure SOCKS Server".
|
||||
|
||||
Examples:
|
||||
Set SOCKS_BAN_MESSAGE ...: You are running an insecure SOCKS Server.
|
||||
This line will Z:line a user using an open SOCKS server with the reason, "You
|
||||
are running an insecure SOCKS Server."
|
||||
|
||||
--------------------
|
||||
|
||||
7.13) Set SOCKS_QUIT_MESSAGE Line
|
||||
|
||||
This line defines the message that will be used in the QUIT message the user
|
||||
will have when they are killed for an insecure SOCKS server.
|
||||
|
||||
Syntax:
|
||||
Set SOCKS_QUIT_MESSAGE ..: message
|
||||
In this line the word "message" will be used as the QUIT message for the user
|
||||
being killed.
|
||||
|
||||
Examples:
|
||||
Set SOCKS_QUIT_MESSAGE ..: User was running an insecure SOCKS Server.
|
||||
This line will use "User was running an insecure SOCKS Server." as the QUIT
|
||||
message for the user when they are found to be running an insecure SOCKS
|
||||
server.
|
||||
|
||||
--------------------
|
||||
|
||||
7.14) Set SOCKSBANTIME Line
|
||||
|
||||
This line lets you specify how long a user using an open SOCKS server will be
|
||||
Z:lined for.
|
||||
|
||||
Syntax:
|
||||
Set SOCKSBANTIME ........: time in seconds
|
||||
This line will ban a user for "time in seconds" seconds, it is important to
|
||||
remember that this is seconds, not minutes.
|
||||
|
||||
Examples:
|
||||
Set SOCKSBANTIME ........: 86400
|
||||
This line will Z:line all users running open SOCKS servers for 86400 seconds.
|
||||
|
||||
--------------------
|
||||
|
||||
7.15) Set MAXCHANNELSPERUSER Line
|
||||
|
||||
This line allows you to define the max amount of channels a user may join.
|
||||
Note, IRCd Agents can still join unlimited channels no matter what this is set
|
||||
to.
|
||||
|
||||
Syntax:
|
||||
Set MAXCHANNELSPERUSER ..: number of channels
|
||||
This line will allow users to join "number of channels", the recommended value
|
||||
is 10 but it is not required.
|
||||
|
||||
Examples:
|
||||
Set MAXCHANNELSPERUSER ..: 11
|
||||
This line will allow users to join 11 channels before they are given an error.
|
||||
|
||||
--------------------
|
||||
|
||||
7.16) Set WEBTV_SUPPORT Line
|
||||
|
||||
This line allows you to specify whether WebTV Support will be enabled or not.
|
||||
When WebTV Support is enabled the /NOTICE command is disabled also, anyone
|
||||
using /NOTICE will send a /PRIVMSG. Also, in addition to using /<command> users
|
||||
can /PRIVMSG irc <command> this is so WebTV users can also use commands.
|
||||
|
||||
Syntax:
|
||||
Set WEBTV_SUPPORT .......: 1/0
|
||||
When this line is set to 1, WebTV support will be enabled, when it is set to 0
|
||||
it will be disabled and the IRCd will support /NOTICE as it normally would.
|
||||
|
||||
Examples:
|
||||
Set WEBTV_SUPPORT .......: 1
|
||||
This line enables WebTV Support disabling /NOTICE and enabling /PRIVMSG irc
|
||||
<command>.
|
||||
|
||||
Set WEBTV_SUPPORT .......: 0
|
||||
This line disables WebTV Support and leaving /NOTICE alone.
|
||||
|
||||
--------------------
|
||||
|
||||
7.17) Set NO_OPER_HIDING Line
|
||||
|
||||
This line allows you to specify whether IRCops will be allowed to set
|
||||
themselves +I (if they have the ^ Oflag).
|
||||
|
||||
Syntax:
|
||||
Set NO_OPER_HIDING ......: 1/0
|
||||
If this line is set to 1 IRCops will not be able to use usermode +I, if this is
|
||||
set to 0 they may use usermode +I.
|
||||
|
||||
Examples:
|
||||
Set NO_OPER_HIDING ......: 1
|
||||
This line has use of usermode +I disabled.
|
||||
|
||||
Set NO_OPER_HIDING ......: 0
|
||||
This line has use of usermode +I enabled for IRCops.
|
||||
|
||||
--------------------
|
||||
|
||||
7.18) Set AUTO_JOIN_CHANS Line
|
||||
|
||||
This line allows you to force a user to join one or more channels when they
|
||||
connect to the server. Using this will not override modes if you set it to make
|
||||
a user join a +k channel they still need the password.
|
||||
|
||||
Syntax:
|
||||
Set AUTO_JOIN_CHANS .....: 0/<channel>[,channel2,...]
|
||||
When this line is set to 0 it will not make the user join any channels on
|
||||
connect. If this is set to a channel name it will name the user join that
|
||||
channel, to enter more than one channel use a comma separated list.
|
||||
|
||||
Examples:
|
||||
Set AUTO_JOIN_CHANS .....: 0
|
||||
This line makes it so the user will not be forced to join a channel when they
|
||||
connect to the server.
|
||||
|
||||
Set AUTO_JOIN_CHANS .....: #main
|
||||
This line will make the user join #main when they connect to the server.
|
||||
|
||||
Set AUTO_JOIN_CHANS .....: #main,#help
|
||||
This line will make the user join #main and help when they connect, you may
|
||||
specify as many channels as are defined in MAXCHANNELSPERUSER (see 7.15).
|
||||
|
||||
--------------------
|
||||
|
||||
8) network files:
|
||||
|
||||
The networks files allow you to specify some information specific about your
|
||||
@@ -1455,25 +1633,6 @@ Set coadmin_host ..: coadmin.starspace.net
|
||||
|
||||
--------------------
|
||||
|
||||
8.11) Set techadmin_host Line:
|
||||
|
||||
This allows you to specify a host that TechAdmins will receive when they
|
||||
/oper, this only works if iNAH (See section 8.17) is enabled. If this is left
|
||||
blank it can cause some problems in your IRCd so it is recommended that you
|
||||
fill in a value.
|
||||
|
||||
Syntax:
|
||||
Set techadmin_host : techadminhost
|
||||
This tells the server to switch the host of the TechAdmin to techadminhost when
|
||||
they /oper.
|
||||
|
||||
Examples:
|
||||
Set techadmin_host : techadmin.starspace.net
|
||||
This will make a TechAdmin's host change to techadmin.starspace.net when they
|
||||
/oper up if iNAH is enabled.
|
||||
|
||||
--------------------
|
||||
|
||||
8.12) Set hidden_host Line:
|
||||
|
||||
The Set hidden_host line allows you to specify what the masked part of a users
|
||||
|
||||
+521
-481
File diff suppressed because it is too large
Load Diff
@@ -61,65 +61,16 @@ A: T:Lines is a new Unreal feature that makes it able to show different
|
||||
7) Where can i download updates to Unreal?
|
||||
|
||||
A: Mostly you can download the newest version at
|
||||
http://unreal.tspre.org
|
||||
http://www.unrealircd.com
|
||||
|
||||
Versions may be spewed out regulary due to new features and bugs..
|
||||
|
||||
8) Why does it say "unlimit core failed" or something when I boot the IRCd?
|
||||
A: It's just a warning, mainly just ignore it.
|
||||
|
||||
9) I use Linux Mandrake and ./Config always hangs! What can I do??
|
||||
A: Go edit the Config script and remove those lines:
|
||||
-SNIP START-
|
||||
cat > $TMP <<__EOF__
|
||||
#$STRINGH STRINGH
|
||||
#$STRINGSH STRINGSH
|
||||
#ifdef STRINGH
|
||||
#include <string.h>
|
||||
#endif
|
||||
#ifdef STRINGSH
|
||||
#include <strings.h>
|
||||
#endif
|
||||
main()
|
||||
{
|
||||
char *t = "a", *s = strtok(t, ",");
|
||||
if (!strcmp(t, s))
|
||||
exit(0);
|
||||
exit(1);
|
||||
}
|
||||
__EOF__
|
||||
$COMP >/dev/null 2>&1
|
||||
if [ $? -ne 0 ] ; then
|
||||
echo $n " strtok$c"
|
||||
NSTRTOK=define
|
||||
else
|
||||
$EXEC
|
||||
if [ $? -ne 0 ] ; then
|
||||
echo $n " strtok$c"
|
||||
NSTRTOK=define
|
||||
fi
|
||||
fi
|
||||
$RM -f $EXEC $TMP
|
||||
--- SNIP END---
|
||||
And replace it by
|
||||
NSTRTOK=undef
|
||||
|
||||
This should get it to work=) (thanks to Joe Whipple for reporting this bug)
|
||||
---END----
|
||||
|
||||
10) Hosts show up as (null).network.net !!
|
||||
A: This is because you have forgotten to include the network file.
|
||||
The correct form is (in unrealircd.conf)
|
||||
Include ..........: <network file>
|
||||
|
||||
If this doesn't work .. seek me at irc.global-irc.net #unrealircd
|
||||
|
||||
11) The IRCd uses like 66.7% CPU !!!?
|
||||
A: Try run it with nice :
|
||||
/usr/bin/nice -n 19 src/ircd
|
||||
|
||||
if services go this way too just place ./<name> instead of src/ircd
|
||||
Any more support seek me at the default place:P
|
||||
If this doesn't work .. seek me at irc.ircsystems.net #unrealircd
|
||||
|
||||
12) My IRCd which runs on a FreeBSD says something about FDs and
|
||||
Max: 0 What shall I do??
|
||||
@@ -190,4 +141,4 @@ match.c:247: argument 'n' doesn't match prototype
|
||||
Then go into include/setup.h and add this line:
|
||||
#define GOT_STRCASECMP
|
||||
|
||||
(C) Carsten Munk 1999
|
||||
(C) Carsten Munk 1999-2000
|
||||
@@ -0,0 +1,109 @@
|
||||
|
||||
RPL_PROTOCTL (RPL_ISUPPORT):
|
||||
version: 2.1+ (new version: 3.1+)
|
||||
|
||||
This sends a numeric during client signon that lists various features that
|
||||
Unreal supports. This allows client and script writers to know what features
|
||||
they can use, and various parameters about the irc server. The numeric
|
||||
used is '005' to try and maintain some semblance of compatibility with
|
||||
DALnet which has a similar feature. The 005 numeric may be split across
|
||||
multiple lines if the length exceeds 512 characters.
|
||||
|
||||
The format is:
|
||||
:servername 005 target feature1 feature2... :are supported by this server.
|
||||
:servername 005 target feature200... :are supported by this server.
|
||||
|
||||
features are either a word describing the feature eg: 'SILENCE', or a word
|
||||
describing the feature and an equals and a list of parameters.
|
||||
eg: SILENCE=15 (says that we support silence, and we support up to 15 of
|
||||
them per user), or FOO=12,3 (says we support FOO with parameters 12 and 3)
|
||||
for example ircu2.10.08 lists:
|
||||
|
||||
:test.undernet.org 005 test SILENCE=15 WHOX WALLCHOPS USERIP CPRIVMSG
|
||||
CNOTICE MODES=6 MAXCHANNELS=10 MAXBANS=30 NICKLEN=9 TOPICLEN=160
|
||||
KICKLEN=160
|
||||
|
||||
-------------------------------------------------------------------------
|
||||
UnrealIRCd Supports:
|
||||
|
||||
:unreal.server 005 nick MAP KNOCK SAFELIST HCN WATCH=%i SILENCE=%i MODES=%i
|
||||
MAXCHANNELS=%i MAXBANS=%i NICKLEN=%i TOPICLEN=%i
|
||||
KICKLEN=%i CHANTYPES=# PREFIX=%s :are supported by this server
|
||||
|
||||
Feature "MAP"
|
||||
-------------
|
||||
|
||||
/map shows the servers as the server percieves them, who's connected
|
||||
to who in a pretty display, with number of users attached to each server
|
||||
|
||||
Numerics used:
|
||||
|
||||
RPL_MAP (006)
|
||||
RPL_MAPEND (007)
|
||||
|
||||
Feature "KNOCK"
|
||||
---------------
|
||||
|
||||
Command: /KNOCK #Channel :<Reason>
|
||||
|
||||
This command will only work if you are not a member of the channel and the
|
||||
+K (No knocks) mode is not on, and the channel is not +i (and you are not
|
||||
banned). This will send a notice to ops in the channel, about that the user
|
||||
"knocked".
|
||||
|
||||
Feature "SAFELIST"
|
||||
------------------
|
||||
|
||||
|
||||
This note means that the user will not get disconnected when doing a /list,
|
||||
as some IRC networks do
|
||||
|
||||
Feature "HCN"
|
||||
-------------
|
||||
|
||||
This is a special feature that you activate using /protoctl +HCN,
|
||||
that will cause +c notices when being oper, being in the Hybrid IRCd style
|
||||
|
||||
Feature "WATCH"
|
||||
---------------
|
||||
|
||||
Parameters: How many watch entries are possible
|
||||
|
||||
This will ensure the server is able to do the DALnet WATCH command
|
||||
|
||||
|
||||
Feature "SILENCE"
|
||||
-----------------
|
||||
Parameters: How many silence entries you can have
|
||||
Version: unknown, ircu2.9.32 at least.
|
||||
|
||||
Silence is a server side ignore. You can /silence +hostmask or
|
||||
/silence +nick, to add someone to your silence list, or use /silence
|
||||
-hostmask to remove it. /silence will list your 'silence list'.
|
||||
you can /silence nick, to see someone elses silence list (useful for
|
||||
helping someone). Silence is preferably used as a last resort as it
|
||||
tends to use server CPU time.
|
||||
|
||||
Syntax:
|
||||
SILENCE +hostmask
|
||||
SILENCE +nick
|
||||
SILENCE -hostmask
|
||||
SILENCE -nick
|
||||
SILENCE nick
|
||||
|
||||
reply:
|
||||
RPL_SILELIST 217
|
||||
RPL_ENDOFSILELIST 218
|
||||
|
||||
|
||||
Feature/Modifier "MODES"
|
||||
------------------------
|
||||
Parameters: How many modes with parameters you can use in one /mode buffer
|
||||
|
||||
|
||||
Feature/Modifier "MAXCHANNELS"
|
||||
------------------------------
|
||||
Parameters: How many channels a normal user can join (opers may have
|
||||
unlimited)
|
||||
|
||||
Feature/Modifier "MAXBANS"
|
||||
+1031
-378
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,16 @@
|
||||
Compiling UnrealIRCd 3.1.x for Windows
|
||||
--------------------------------------
|
||||
This document assumes you have a working build environment for
|
||||
Visual Studio .NET or Visual Studio 6.0. Other versions may work
|
||||
as well, but have not been tested.
|
||||
|
||||
1. Copy include/win32/settings.h and setup.h to include/
|
||||
2. Copy extras/regex/regex.h to include/
|
||||
3. Copy extras/regex/regex.c to src/
|
||||
4. Edit include/settings.h to your liking (pretty much change DOMAINNAME)
|
||||
5. Unzip src/win32/unrealircd.bmp.gz
|
||||
6. Execute "nmake makefile.win32"
|
||||
|
||||
Congratulations, you should have a functioning win32 binary.
|
||||
|
||||
--Luke (luke@unrealircd.com)
|
||||
@@ -1,4 +1,3 @@
|
||||
[ $Id$ ]
|
||||
Dynamic Configuration Guide
|
||||
|
||||
Okay first you have to go edit the file "unrealircd.conf" in
|
||||
@@ -15,7 +14,7 @@ copy the file "template.network" to the name you want to use for
|
||||
your network file and edit it.
|
||||
|
||||
If you experince any problems email me at stskeeps@tspre.org
|
||||
or try msg me at /server irc.global-irc.net : #UnrealIRCd
|
||||
or try msg me at /server irc.ircsystems.net : #UnrealIRCd
|
||||
My nick is mostly Stskeeps or Techie (or Nightwalker if i had a bad night:P)
|
||||
|
||||
--Stskeeps
|
||||
|
||||
+308
@@ -0,0 +1,308 @@
|
||||
/*
|
||||
** burst.c
|
||||
**
|
||||
** Nicolas Pioch, Dec 93
|
||||
** <Nicolas.Pioch@enst.fr>
|
||||
** Carsten V. Munk Nov 2000
|
||||
*/
|
||||
|
||||
#include <sys/types.h>
|
||||
#include <sys/time.h>
|
||||
#include <sys/socket.h>
|
||||
#include <sys/param.h>
|
||||
#include <sys/signal.h>
|
||||
#include <netinet/in.h>
|
||||
#include <sys/un.h>
|
||||
#include <netdb.h>
|
||||
#include <errno.h>
|
||||
#include <arpa/inet.h>
|
||||
#include <sys/ioctl.h>
|
||||
#include <ctype.h>
|
||||
#include <string.h>
|
||||
#include <fcntl.h>
|
||||
#include <stdio.h>
|
||||
|
||||
#ifdef POSIX
|
||||
#include <sys/select.h>
|
||||
#endif
|
||||
|
||||
#define MYBUFSIZE 2048
|
||||
|
||||
char *jupedservername, *uplinkservername, *jupereason;
|
||||
int options;
|
||||
char *password;
|
||||
typedef struct aClient {
|
||||
int socket;
|
||||
char buffer[MYBUFSIZE+1];
|
||||
int read;
|
||||
int write;
|
||||
} aClient;
|
||||
|
||||
void fatalrestart(aClient *robotptr, const char *s);
|
||||
|
||||
void fatal(const char *s) {
|
||||
perror(s);
|
||||
exit(1);
|
||||
}
|
||||
|
||||
typedef void (*signalhandler)(int);
|
||||
static void signal_catcher(int sig, int code, struct sigcontext *scp) {
|
||||
fprintf(stderr, "Caught signal %d with code %d\n", sig, code);
|
||||
|
||||
switch(sig) {
|
||||
case SIGFPE: /* Floating point exception */
|
||||
case SIGILL: /* Illegal instruction */
|
||||
case SIGSEGV: /* Segmentation violation */
|
||||
case SIGBUS: /* Bus error */
|
||||
case SIGSYS: /* Bad argument to system call */
|
||||
fatal("Fatal signal received, aborting...");
|
||||
break;
|
||||
|
||||
case SIGQUIT:
|
||||
case SIGINT:
|
||||
case SIGTERM: /* On se barre */
|
||||
fatal("AAAAAAAAArrrrrrrrgh!");
|
||||
break;
|
||||
}
|
||||
|
||||
signal(sig, (signalhandler)signal_catcher);
|
||||
}
|
||||
|
||||
|
||||
typedef union socket_address {
|
||||
struct sockaddr_un unixx;
|
||||
struct sockaddr_in inet;
|
||||
} socket_address;
|
||||
|
||||
void name_to_number(int address_family, const char *hostname, int port,
|
||||
socket_address *addr, int *len2) {
|
||||
u_long iaddr;
|
||||
int len;
|
||||
struct hostent *host;
|
||||
char *inaddr;
|
||||
bzero ((char *) addr, sizeof (socket_address) );
|
||||
|
||||
if ( address_family == AF_UNIX ) {
|
||||
strcpy(addr->unixx.sun_path,hostname);
|
||||
*len2=sizeof( struct sockaddr_un );
|
||||
} else {
|
||||
if ((hostname) && (hostname[0])) {
|
||||
if (hostname[0] >= '0' && hostname[0] <= '9') {
|
||||
iaddr = inet_addr(hostname);
|
||||
inaddr = (char *) &iaddr;
|
||||
len=sizeof(iaddr);
|
||||
} else {
|
||||
host=gethostbyname (hostname);
|
||||
if (!host)
|
||||
fatal("Unknown host");
|
||||
inaddr=host->h_addr_list[0];
|
||||
len=host->h_length;
|
||||
}
|
||||
bcopy(inaddr, (char *)&addr->inet.sin_addr, len);
|
||||
}
|
||||
addr->inet.sin_port=htons((u_short) port);
|
||||
*len2=sizeof(struct sockaddr_in);
|
||||
}
|
||||
addr->inet.sin_family = address_family;
|
||||
}
|
||||
|
||||
int read_data(aClient *robotptr) {
|
||||
int nbytes;
|
||||
|
||||
if ((nbytes=read(robotptr->socket, &(robotptr->buffer[robotptr->write]),
|
||||
(sizeof(robotptr->buffer) - robotptr->write - 1))) < 0)
|
||||
fatalrestart(robotptr, "read on socket");
|
||||
|
||||
if (nbytes == 0) {
|
||||
close(robotptr->socket);
|
||||
fatalrestart(robotptr, "Connection Closed");
|
||||
}
|
||||
|
||||
robotptr->write+=nbytes;
|
||||
robotptr->buffer[robotptr->write]=0;
|
||||
|
||||
return(nbytes);
|
||||
}
|
||||
|
||||
void send_data(int socketfd, const char *data, int length) {
|
||||
int length2;
|
||||
length2=write(socketfd, data, length);
|
||||
if (length2 != length)
|
||||
fprintf(stderr, "*** write truncated to %d chars...\n", length2);
|
||||
}
|
||||
|
||||
int create_client(const char *hostname, const int hostport) {
|
||||
int descript;
|
||||
socket_address hostaddr;
|
||||
int adlen;
|
||||
|
||||
if ((descript=socket(PF_INET, SOCK_STREAM, 0)) < 0)
|
||||
fatal("socket");
|
||||
|
||||
name_to_number(AF_INET, hostname, hostport, &hostaddr, &adlen);
|
||||
|
||||
if (connect(descript, &hostaddr.inet, adlen) < 0)
|
||||
fatal("connect");
|
||||
|
||||
return(descript);
|
||||
}
|
||||
|
||||
void parse_line(aClient *robotptr) {
|
||||
char *toparse;
|
||||
|
||||
toparse=(robotptr->buffer + robotptr->read);
|
||||
|
||||
printf("%s\n",toparse);
|
||||
/* Special handling for PING messages */
|
||||
if (!strncasecmp(toparse, "PING ", 5) || !strncasecmp(toparse, "8 ", 2)){
|
||||
toparse=strtok(toparse, "\r\n");
|
||||
toparse[1]='\0';
|
||||
send_data(robotptr->socket, toparse, strlen(toparse));
|
||||
return;
|
||||
}
|
||||
if (!strncasecmp(toparse, "AO", 2) || !strncasecmp(toparse, "NETINFO", 7))
|
||||
{
|
||||
if (!(options & 0x80))
|
||||
exit(1);
|
||||
}
|
||||
}
|
||||
|
||||
void parse_data(aClient *robotptr) {
|
||||
int next;
|
||||
|
||||
while((robotptr->read < robotptr->write)
|
||||
&& ((robotptr->buffer[robotptr->read] == '\r')
|
||||
|| (robotptr->buffer[robotptr->read] == '\n')))
|
||||
robotptr->read++;
|
||||
|
||||
for(next=robotptr->read; next<=robotptr->write; next++) {
|
||||
if ((robotptr->buffer[next] == '\r')
|
||||
|| (robotptr->buffer[next] == '\n'))
|
||||
break;
|
||||
}
|
||||
|
||||
if (next<robotptr->write) {
|
||||
robotptr->buffer[next]=0;
|
||||
next++;
|
||||
parse_line(robotptr);
|
||||
robotptr->read=next;
|
||||
parse_data(robotptr);
|
||||
}
|
||||
|
||||
if (robotptr->read == robotptr->write) {
|
||||
robotptr->read=robotptr->write=0;
|
||||
} else {
|
||||
bcopy((robotptr->buffer + robotptr->read),
|
||||
(robotptr->buffer), (robotptr->write-robotptr->read));
|
||||
robotptr->write-=robotptr->read;
|
||||
robotptr->read=0;
|
||||
}
|
||||
}
|
||||
|
||||
void run_client(aClient *robotptr) {
|
||||
fd_set mask, returnmask[3];
|
||||
int selectval;
|
||||
|
||||
FD_ZERO(&mask);
|
||||
FD_SET(robotptr->socket, &mask);
|
||||
|
||||
while (1) {
|
||||
bcopy((char *)&mask,(char *)returnmask,sizeof(fd_set));
|
||||
FD_ZERO(returnmask+1);
|
||||
bcopy((char *)&mask,(char *)(returnmask+2),sizeof(fd_set));
|
||||
|
||||
selectval=select(FD_SETSIZE,
|
||||
returnmask, returnmask+1, returnmask+2, NULL);
|
||||
|
||||
if (selectval) {
|
||||
read_data(robotptr);
|
||||
parse_data(robotptr);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
void initialize(aClient *robotptr) {
|
||||
char passphrase[MYBUFSIZE];
|
||||
robotptr->socket=create_client(uplinkservername, atol(jupereason));
|
||||
sprintf(passphrase,
|
||||
"PROTOCTL %s %s %s %s %s %s %s %s %s\r\n",
|
||||
(options & 0x1) ? "NOQUIT" : "",
|
||||
(options & 0x2) ? "TOKEN" : "",
|
||||
(options & 0x4) ? "NICKv2" : "",
|
||||
(options & 0x8) ? "SJOIN" : "",
|
||||
(options & 0x10) ? "SJOIN2" : "",
|
||||
(options & 0x20) ? "UMODE2" : "",
|
||||
(options & 0x40) ? "NS" : "",
|
||||
(options & 0x100) ? "SJ3" : "",
|
||||
(options & 0x200) ? "SJB64" : "");
|
||||
write(robotptr->socket, passphrase, strlen(passphrase));
|
||||
sprintf(passphrase, "PASS %s\r\nSERVER %s 1 :[Burst analysis].\r\n",
|
||||
password,jupedservername);
|
||||
write(robotptr->socket, passphrase, strlen(passphrase));
|
||||
}
|
||||
|
||||
void fatalrestart(aClient *robotptr, const char *s) {
|
||||
perror(s);
|
||||
close(robotptr->socket);
|
||||
sleep(10);
|
||||
initialize(robotptr);
|
||||
run_client(robotptr);
|
||||
}
|
||||
|
||||
int main(int argc, char* argv[]) {
|
||||
aClient robot;
|
||||
char *p;
|
||||
|
||||
if (argc != 6) {
|
||||
fprintf(stderr, "IRCd burst generator, by Carsten V. Munk 2000, based off jupe.c by Nicolas Pioch\n");
|
||||
fprintf(stderr,
|
||||
"Usage: %s <burstservername> <uplink> <port> <options> <password>\n", argv[0]);
|
||||
fprintf(stderr, "Options can be a combination of these:\n");
|
||||
fprintf(stderr, "1 = Enable NOQUIT 2 = Enable TOKEN\n");
|
||||
fprintf(stderr, "3 = Enable NICKv2 4 = Enable SJOIN\n");
|
||||
fprintf(stderr, "5 = Enable SJOIN2 6 = Enable UMODE2\n");
|
||||
fprintf(stderr, "7 = Enable NS 8 = Ignore end of burst\n");
|
||||
fprintf(stderr, "9 = Enable SJ3 a = Enable SJB64\n");
|
||||
fatal("incorrect argument count");
|
||||
exit(1);
|
||||
}
|
||||
|
||||
jupedservername=argv[1];
|
||||
uplinkservername=argv[2];
|
||||
jupereason=argv[3];
|
||||
password = argv[5];
|
||||
p = argv[4];
|
||||
for (; *p; p++)
|
||||
{
|
||||
if (*p == '1')
|
||||
options |= 0x1;
|
||||
if (*p == '2')
|
||||
options |= 0x2;
|
||||
if (*p == '3')
|
||||
options |= 0x4;
|
||||
if (*p == '4')
|
||||
options |= 0x8;
|
||||
if (*p == '5')
|
||||
options |= 0x10;
|
||||
if (*p == '6')
|
||||
options |= 0x20;
|
||||
if (*p == '7')
|
||||
options |= 0x40;
|
||||
if (*p == '8')
|
||||
options |= 0x80;
|
||||
if (*p == '9')
|
||||
options |= 0x100;
|
||||
if (*p == 'a')
|
||||
options |= 0x200;
|
||||
}
|
||||
/* installe le signal_catcher */
|
||||
signal(SIGTERM,(signalhandler)signal_catcher);
|
||||
|
||||
robot.read=robot.write=0;
|
||||
|
||||
initialize(&robot);
|
||||
run_client(&robot);
|
||||
|
||||
exit(0);
|
||||
}
|
||||
@@ -0,0 +1,98 @@
|
||||
# Makefile for regex.
|
||||
#
|
||||
# Copyright (C) 1992, 1993 Free Software Foundation, Inc.
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation; either version 2, or (at your option)
|
||||
# any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program; if not, write to the Free Software
|
||||
# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||
|
||||
version = 0.12
|
||||
|
||||
# You can define CPPFLAGS on the command line. Aside from system-specific
|
||||
# flags, you can define:
|
||||
# -DREGEX_MALLOC to use malloc/realloc/free instead of alloca.
|
||||
# -DDEBUG to enable the compiled pattern disassembler and execution
|
||||
# tracing; code runs substantially slower.
|
||||
# -DEXTRACT_MACROS to use the macros EXTRACT_* (as opposed to
|
||||
# the corresponding C procedures). If not -DDEBUG, the macros
|
||||
# are used.
|
||||
CPPFLAGS =
|
||||
|
||||
# Likewise, you can override CFLAGS to optimize, use -Wall, etc.
|
||||
CFLAGS = -g
|
||||
|
||||
# Ditto for LDFLAGS and LOADLIBES.
|
||||
LDFLAGS =
|
||||
LOADLIBES =
|
||||
|
||||
srcdir = @srcdir@
|
||||
VPATH = @srcdir@
|
||||
|
||||
CC = @CC@
|
||||
DEFS = @DEFS@
|
||||
|
||||
SHELL = /bin/sh
|
||||
|
||||
subdirs = moo
|
||||
|
||||
default all:: regex.o
|
||||
.PHONY: default all
|
||||
|
||||
regex.o: regex.c regex.h
|
||||
$(CC) $(CFLAGS) $(CPPFLAGS) $(DEFS) -I. -I$(srcdir) -c $<
|
||||
|
||||
clean mostlyclean::
|
||||
rm -f *.o
|
||||
|
||||
distclean:: clean
|
||||
rm -f Makefile config.status
|
||||
|
||||
extraclean:: distclean
|
||||
rm -f patch* *~* *\#* *.orig *.rej *.bak core a.out
|
||||
|
||||
configure: configure.in
|
||||
autoconf
|
||||
|
||||
config.status: configure
|
||||
sh configure --no-create
|
||||
|
||||
Makefile: Makefile.in config.status
|
||||
sh config.status
|
||||
|
||||
makeargs = $(MFLAGS) CPPFLAGS='$(CPPFLAGS)' CFLAGS='$(CFLAGS)' CC='$(CC)' \
|
||||
DEFS='$(DEFS)' LDFLAGS='$(LDFLAGS)' LOADLIBES='$(LOADLIBES)'
|
||||
|
||||
default all install \
|
||||
mostlyclean clean distclean extraclean realclean \
|
||||
TAGS check::
|
||||
for d in $(subdirs); do (cd $$d; $(MAKE) $(makeargs) $@); done
|
||||
.PHONY: install mostlyclean clean distclean extraclean realclean TAGS check
|
||||
|
||||
# Prevent GNU make 3 from overflowing arg limit on system V.
|
||||
.NOEXPORT:
|
||||
|
||||
distfiles = AUTHORS ChangeLog COPYING INSTALL NEWS README \
|
||||
*.in configure regex.c regex.h
|
||||
distdir = regex-$(version)
|
||||
distargs = version=$(version) distdir=../$(distdir)/$$d
|
||||
dist: TAGS configure
|
||||
@echo "Version numbers in: Makefile.in, ChangeLog, NEWS,"
|
||||
@echo " regex.c, regex.h,"
|
||||
@echo " and doc/xregex.texi (if modified)."
|
||||
rm -rf $(distdir)
|
||||
mkdir $(distdir)
|
||||
ln $(distfiles) $(distdir)
|
||||
for d in $(subdirs); do (cd $$d; $(MAKE) $(distargs) dist); done
|
||||
tar czhf $(distdir).tar.Z $(distdir)
|
||||
rm -rf $(distdir)
|
||||
.PHONY: dist
|
||||
@@ -0,0 +1,60 @@
|
||||
This directory contains the GNU regex library. It is compliant with
|
||||
POSIX.2, except for internationalization features.
|
||||
|
||||
See the file NEWS for a list of major changes in the current release.
|
||||
|
||||
See the file INSTALL for compilation instructions. (The only thing
|
||||
installed is the documentation; regex.c is compiled into regex.o, but
|
||||
not installed anywhere.)
|
||||
|
||||
The subdirectory `doc' contains a (programmers') manual for the library.
|
||||
It's probably out-of-date. Improvements are welcome.
|
||||
|
||||
The subdirectory `test' contains the various tests we've written.
|
||||
|
||||
We know this code is not as fast as it might be. If you have specific
|
||||
suggestions, profiling results, or other such useful information to
|
||||
report, please do.
|
||||
|
||||
Emacs 18 is not going use this revised regex (but Emacs 19 will). If
|
||||
you want to try it with Emacs 18, apply the patch at the end of this
|
||||
file first.
|
||||
|
||||
Mail bug reports to bug-gnu-utils@prep.ai.mit.edu.
|
||||
|
||||
Please include an actual regular expression that fails (and the syntax
|
||||
used to compile it); without that, there's no way to reproduce the bug,
|
||||
so there's no way we can fix it. Even if you include a patch, also
|
||||
include the regular expression in error; otherwise, we can't know for
|
||||
sure what you're trying to fix.
|
||||
|
||||
Here is the patch to make this version of regex work with Emacs 18.
|
||||
|
||||
*** ORIG/search.c Tue Jan 8 13:04:55 1991
|
||||
--- search.c Sun Jan 5 10:57:00 1992
|
||||
***************
|
||||
*** 25,26 ****
|
||||
--- 25,28 ----
|
||||
#include "commands.h"
|
||||
+
|
||||
+ #include <sys/types.h>
|
||||
#include "regex.h"
|
||||
***************
|
||||
*** 477,479 ****
|
||||
/* really needed. */
|
||||
! && *(searchbuf.buffer) == (char) exactn /* first item is "exact match" */
|
||||
&& searchbuf.buffer[1] + 2 == searchbuf.used) /*first is ONLY item */
|
||||
--- 479,482 ----
|
||||
/* really needed. */
|
||||
! /* first item is "exact match" */
|
||||
! && *(searchbuf.buffer) == (char) RE_EXACTN_VALUE
|
||||
&& searchbuf.buffer[1] + 2 == searchbuf.used) /*first is ONLY item */
|
||||
***************
|
||||
*** 1273,1275 ****
|
||||
searchbuf.allocated = 100;
|
||||
! searchbuf.buffer = (char *) malloc (searchbuf.allocated);
|
||||
searchbuf.fastmap = search_fastmap;
|
||||
--- 1276,1278 ----
|
||||
searchbuf.allocated = 100;
|
||||
! searchbuf.buffer = (unsigned char *) malloc (searchbuf.allocated);
|
||||
searchbuf.fastmap = search_fastmap;
|
||||
+462
@@ -0,0 +1,462 @@
|
||||
#!/bin/sh
|
||||
# Guess values for system-dependent variables and create Makefiles.
|
||||
# Generated automatically using autoconf.
|
||||
# Copyright (C) 1991, 1992, 1993 Free Software Foundation, Inc.
|
||||
|
||||
# This program is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation; either version 2, or (at your option)
|
||||
# any later version.
|
||||
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program; if not, write to the Free Software
|
||||
# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||
|
||||
# Usage: configure [--srcdir=DIR] [--host=HOST] [--gas] [--nfp] [--no-create]
|
||||
# [--prefix=PREFIX] [--exec-prefix=PREFIX] [--with-PACKAGE] [TARGET]
|
||||
# Ignores all args except --srcdir, --prefix, --exec-prefix, --no-create, and
|
||||
# --with-PACKAGE unless this script has special code to handle it.
|
||||
|
||||
|
||||
for arg
|
||||
do
|
||||
# Handle --exec-prefix with a space before the argument.
|
||||
if test x$next_exec_prefix = xyes; then exec_prefix=$arg; next_exec_prefix=
|
||||
# Handle --host with a space before the argument.
|
||||
elif test x$next_host = xyes; then next_host=
|
||||
# Handle --prefix with a space before the argument.
|
||||
elif test x$next_prefix = xyes; then prefix=$arg; next_prefix=
|
||||
# Handle --srcdir with a space before the argument.
|
||||
elif test x$next_srcdir = xyes; then srcdir=$arg; next_srcdir=
|
||||
else
|
||||
case $arg in
|
||||
# For backward compatibility, also recognize exact --exec_prefix.
|
||||
-exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* | --exec=* | --exe=* | --ex=* | --e=*)
|
||||
exec_prefix=`echo $arg | sed 's/[-a-z_]*=//'` ;;
|
||||
-exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- | --exec | --exe | --ex | --e)
|
||||
next_exec_prefix=yes ;;
|
||||
|
||||
-gas | --gas | --ga | --g) ;;
|
||||
|
||||
-host=* | --host=* | --hos=* | --ho=* | --h=*) ;;
|
||||
-host | --host | --hos | --ho | --h)
|
||||
next_host=yes ;;
|
||||
|
||||
-nfp | --nfp | --nf) ;;
|
||||
|
||||
-no-create | --no-create | --no-creat | --no-crea | --no-cre | --no-cr | --no-c | --no- | --no)
|
||||
no_create=1 ;;
|
||||
|
||||
-prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*)
|
||||
prefix=`echo $arg | sed 's/[-a-z_]*=//'` ;;
|
||||
-prefix | --prefix | --prefi | --pref | --pre | --pr | --p)
|
||||
next_prefix=yes ;;
|
||||
|
||||
-srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=* | --s=*)
|
||||
srcdir=`echo $arg | sed 's/[-a-z_]*=//'` ;;
|
||||
-srcdir | --srcdir | --srcdi | --srcd | --src | --sr | --s)
|
||||
next_srcdir=yes ;;
|
||||
|
||||
-with-* | --with-*)
|
||||
package=`echo $arg|sed 's/-*with-//'`
|
||||
# Delete all the valid chars; see if any are left.
|
||||
if test -n "`echo $package|sed 's/[-a-zA-Z0-9_]*//g'`"; then
|
||||
echo "configure: $package: invalid package name" >&2; exit 1
|
||||
fi
|
||||
eval "with_`echo $package|sed s/-/_/g`=1" ;;
|
||||
|
||||
*) ;;
|
||||
esac
|
||||
fi
|
||||
done
|
||||
|
||||
trap 'rm -f conftest* core; exit 1' 1 3 15
|
||||
|
||||
rm -f conftest*
|
||||
compile='${CC-cc} $CFLAGS $DEFS conftest.c -o conftest $LIBS >/dev/null 2>&1'
|
||||
|
||||
# A filename unique to this package, relative to the directory that
|
||||
# configure is in, which we can look for to find out if srcdir is correct.
|
||||
unique_file=regex.c
|
||||
|
||||
# Find the source files, if location was not specified.
|
||||
if test -z "$srcdir"; then
|
||||
srcdirdefaulted=yes
|
||||
# Try the directory containing this script, then `..'.
|
||||
prog=$0
|
||||
confdir=`echo $prog|sed 's%/[^/][^/]*$%%'`
|
||||
test "X$confdir" = "X$prog" && confdir=.
|
||||
srcdir=$confdir
|
||||
if test ! -r $srcdir/$unique_file; then
|
||||
srcdir=..
|
||||
fi
|
||||
fi
|
||||
if test ! -r $srcdir/$unique_file; then
|
||||
if test x$srcdirdefaulted = xyes; then
|
||||
echo "configure: Can not find sources in \`${confdir}' or \`..'." 1>&2
|
||||
else
|
||||
echo "configure: Can not find sources in \`${srcdir}'." 1>&2
|
||||
fi
|
||||
exit 1
|
||||
fi
|
||||
# Preserve a srcdir of `.' to avoid automounter screwups with pwd.
|
||||
# But we can't avoid them for `..', to make subdirectories work.
|
||||
case $srcdir in
|
||||
.|/*|~*) ;;
|
||||
*) srcdir=`cd $srcdir; pwd` ;; # Make relative path absolute.
|
||||
esac
|
||||
|
||||
|
||||
if test -z "$CC"; then
|
||||
echo checking for gcc
|
||||
saveifs="$IFS"; IFS="${IFS}:"
|
||||
for dir in $PATH; do
|
||||
test -z "$dir" && dir=.
|
||||
if test -f $dir/gcc; then
|
||||
CC="gcc"
|
||||
break
|
||||
fi
|
||||
done
|
||||
IFS="$saveifs"
|
||||
fi
|
||||
test -z "$CC" && CC="cc"
|
||||
|
||||
# Find out if we are using GNU C, under whatever name.
|
||||
cat > conftest.c <<EOF
|
||||
#ifdef __GNUC__
|
||||
yes
|
||||
#endif
|
||||
EOF
|
||||
${CC-cc} -E conftest.c > conftest.out 2>&1
|
||||
if egrep yes conftest.out >/dev/null 2>&1; then
|
||||
GCC=1 # For later tests.
|
||||
fi
|
||||
rm -f conftest*
|
||||
|
||||
# Make sure to not get the incompatible SysV /etc/install and
|
||||
# /usr/sbin/install, which might be in PATH before a BSD-like install,
|
||||
# or the SunOS /usr/etc/install directory, or the AIX /bin/install,
|
||||
# or the AFS install, which mishandles nonexistent args. (Sigh.)
|
||||
if test -z "$INSTALL"; then
|
||||
echo checking for install
|
||||
saveifs="$IFS"; IFS="${IFS}:"
|
||||
for dir in $PATH; do
|
||||
test -z "$dir" && dir=.
|
||||
case $dir in
|
||||
/etc|/usr/sbin|/usr/etc|/usr/afsws/bin) ;;
|
||||
*)
|
||||
if test -f $dir/install; then
|
||||
if grep dspmsg $dir/install >/dev/null 2>&1; then
|
||||
: # AIX
|
||||
else
|
||||
INSTALL="$dir/install -c"
|
||||
INSTALL_PROGRAM='$(INSTALL)'
|
||||
INSTALL_DATA='$(INSTALL) -m 644'
|
||||
break
|
||||
fi
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
done
|
||||
IFS="$saveifs"
|
||||
fi
|
||||
INSTALL=${INSTALL-cp}
|
||||
INSTALL_PROGRAM=${INSTALL_PROGRAM-'$(INSTALL)'}
|
||||
INSTALL_DATA=${INSTALL_DATA-'$(INSTALL)'}
|
||||
|
||||
|
||||
echo checking for AIX
|
||||
echo checking how to run the C preprocessor
|
||||
if test -z "$CPP"; then
|
||||
CPP='${CC-cc} -E'
|
||||
cat > conftest.c <<EOF
|
||||
#include <stdio.h>
|
||||
EOF
|
||||
err=`eval "$CPP $DEFS conftest.c 2>&1 >/dev/null"`
|
||||
if test -z "$err"; then
|
||||
:
|
||||
else
|
||||
CPP=/lib/cpp
|
||||
fi
|
||||
rm -f conftest*
|
||||
fi
|
||||
|
||||
cat > conftest.c <<EOF
|
||||
#ifdef _AIX
|
||||
yes
|
||||
#endif
|
||||
|
||||
EOF
|
||||
eval "$CPP $DEFS conftest.c > conftest.out 2>&1"
|
||||
if egrep "yes" conftest.out >/dev/null 2>&1; then
|
||||
DEFS="$DEFS -D_ALL_SOURCE=1"
|
||||
fi
|
||||
rm -f conftest*
|
||||
|
||||
|
||||
echo checking for DYNIX/ptx libseq
|
||||
cat > conftest.c <<EOF
|
||||
#if defined(_SEQUENT_)
|
||||
yes
|
||||
#endif
|
||||
|
||||
EOF
|
||||
eval "$CPP $DEFS conftest.c > conftest.out 2>&1"
|
||||
if egrep "yes" conftest.out >/dev/null 2>&1; then
|
||||
SEQUENT=1
|
||||
fi
|
||||
rm -f conftest*
|
||||
|
||||
test -n "$SEQUENT" && test -f /usr/lib/libseq.a &&
|
||||
LIBS="$LIBS -lseq"
|
||||
|
||||
echo checking for POSIXized ISC
|
||||
if test -d /etc/conf/kconfig.d &&
|
||||
grep _POSIX_VERSION /usr/include/sys/unistd.h >/dev/null 2>&1
|
||||
then
|
||||
ISC=1 # If later tests want to check for ISC.
|
||||
DEFS="$DEFS -D_POSIX_SOURCE=1"
|
||||
if test -n "$GCC"; then
|
||||
CC="$CC -posix"
|
||||
else
|
||||
CC="$CC -Xp"
|
||||
fi
|
||||
fi
|
||||
|
||||
echo checking for minix/config.h
|
||||
cat > conftest.c <<EOF
|
||||
#include <minix/config.h>
|
||||
EOF
|
||||
err=`eval "$CPP $DEFS conftest.c 2>&1 >/dev/null"`
|
||||
if test -z "$err"; then
|
||||
MINIX=1
|
||||
fi
|
||||
rm -f conftest*
|
||||
|
||||
# The Minix shell can't assign to the same variable on the same line!
|
||||
if test -n "$MINIX"; then
|
||||
DEFS="$DEFS -D_POSIX_SOURCE=1"
|
||||
DEFS="$DEFS -D_POSIX_1_SOURCE=2"
|
||||
DEFS="$DEFS -D_MINIX=1"
|
||||
fi
|
||||
|
||||
|
||||
echo checking for ANSI C header files
|
||||
cat > conftest.c <<EOF
|
||||
#include <stdlib.h>
|
||||
#include <stdarg.h>
|
||||
#include <string.h>
|
||||
#include <float.h>
|
||||
EOF
|
||||
err=`eval "$CPP $DEFS conftest.c 2>&1 >/dev/null"`
|
||||
if test -z "$err"; then
|
||||
# SunOS string.h does not declare mem*, contrary to ANSI.
|
||||
echo '#include <string.h>' > conftest.c
|
||||
eval "$CPP $DEFS conftest.c > conftest.out 2>&1"
|
||||
if egrep "memchr" conftest.out >/dev/null 2>&1; then
|
||||
# SGI's /bin/cc from Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi.
|
||||
cat > conftest.c <<EOF
|
||||
#include <ctype.h>
|
||||
#define ISLOWER(c) ('a' <= (c) && (c) <= 'z')
|
||||
#define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c))
|
||||
#define XOR(e,f) (((e) && !(f)) || (!(e) && (f)))
|
||||
int main () { int i; for (i = 0; i < 256; i++)
|
||||
if (XOR (islower (i), ISLOWER (i)) || toupper (i) != TOUPPER (i)) exit(2);
|
||||
exit (0); }
|
||||
|
||||
EOF
|
||||
eval $compile
|
||||
if test -s conftest && (./conftest; exit) 2>/dev/null; then
|
||||
DEFS="$DEFS -DSTDC_HEADERS=1"
|
||||
fi
|
||||
rm -f conftest*
|
||||
fi
|
||||
rm -f conftest*
|
||||
|
||||
fi
|
||||
rm -f conftest*
|
||||
|
||||
for hdr in string.h
|
||||
do
|
||||
trhdr=HAVE_`echo $hdr | tr '[a-z]./' '[A-Z]__'`
|
||||
echo checking for ${hdr}
|
||||
cat > conftest.c <<EOF
|
||||
#include <${hdr}>
|
||||
EOF
|
||||
err=`eval "$CPP $DEFS conftest.c 2>&1 >/dev/null"`
|
||||
if test -z "$err"; then
|
||||
DEFS="$DEFS -D${trhdr}=1"
|
||||
fi
|
||||
rm -f conftest*
|
||||
done
|
||||
|
||||
|
||||
# The Ultrix 4.2 mips builtin alloca declared by alloca.h only works
|
||||
# for constant arguments. Useless!
|
||||
echo checking for working alloca.h
|
||||
cat > conftest.c <<EOF
|
||||
#include <alloca.h>
|
||||
main() { exit(0); }
|
||||
t() { char *p = alloca(2 * sizeof(int)); }
|
||||
EOF
|
||||
if eval $compile; then
|
||||
DEFS="$DEFS -DHAVE_ALLOCA_H=1"
|
||||
fi
|
||||
rm -f conftest*
|
||||
|
||||
decl="#ifdef __GNUC__
|
||||
#define alloca __builtin_alloca
|
||||
#else
|
||||
#if HAVE_ALLOCA_H
|
||||
#include <alloca.h>
|
||||
#else
|
||||
#ifdef _AIX
|
||||
#pragma alloca
|
||||
#else
|
||||
char *alloca ();
|
||||
#endif
|
||||
#endif
|
||||
#endif
|
||||
"
|
||||
echo checking for alloca
|
||||
cat > conftest.c <<EOF
|
||||
$decl
|
||||
main() { exit(0); }
|
||||
t() { char *p = (char *) alloca(1); }
|
||||
EOF
|
||||
if eval $compile; then
|
||||
:
|
||||
else
|
||||
alloca_missing=1
|
||||
fi
|
||||
rm -f conftest*
|
||||
|
||||
if test -n "$alloca_missing"; then
|
||||
# The SVR3 libPW and SVR4 libucb both contain incompatible functions
|
||||
# that cause trouble. Some versions do not even contain alloca or
|
||||
# contain a buggy version. If you still want to use their alloca,
|
||||
# use ar to extract alloca.o from them instead of compiling alloca.c.
|
||||
ALLOCA=alloca.o
|
||||
fi
|
||||
|
||||
prog='/* Ultrix mips cc rejects this. */
|
||||
typedef int charset[2]; const charset x;
|
||||
/* SunOS 4.1.1 cc rejects this. */
|
||||
char const *const *p;
|
||||
char **p2;
|
||||
/* HPUX 7.0 cc rejects these. */
|
||||
++p;
|
||||
p2 = (char const* const*) p;'
|
||||
echo checking for working const
|
||||
cat > conftest.c <<EOF
|
||||
|
||||
main() { exit(0); }
|
||||
t() { $prog }
|
||||
EOF
|
||||
if eval $compile; then
|
||||
:
|
||||
else
|
||||
DEFS="$DEFS -Dconst="
|
||||
fi
|
||||
rm -f conftest*
|
||||
|
||||
|
||||
if test -z "$prefix"
|
||||
then
|
||||
echo checking for gcc to derive installation directory prefix
|
||||
saveifs="$IFS"; IFS="$IFS:"
|
||||
for dir in $PATH; do
|
||||
test -z "$dir" && dir=.
|
||||
if test $dir != . && test -f $dir/gcc; then
|
||||
# Not all systems have dirname.
|
||||
prefix=`echo $dir|sed 's%/[^/][^/]*$%%'`
|
||||
break
|
||||
fi
|
||||
done
|
||||
IFS="$saveifs"
|
||||
fi
|
||||
|
||||
|
||||
if test -n "$prefix"; then
|
||||
test -z "$exec_prefix" && exec_prefix='${prefix}'
|
||||
prsub="s%^prefix\\([ ]*\\)=\\([ ]*\\).*$%prefix\\1=\\2$prefix%"
|
||||
fi
|
||||
if test -n "$exec_prefix"; then
|
||||
prsub="$prsub
|
||||
s%^exec_prefix\\([ ]*\\)=\\([ ]*\\).*$%\
|
||||
exec_prefix\\1=\\2$exec_prefix%"
|
||||
fi
|
||||
|
||||
trap 'rm -f config.status; exit 1' 1 3 15
|
||||
echo creating config.status
|
||||
rm -f config.status
|
||||
cat > config.status <<EOF
|
||||
#!/bin/sh
|
||||
# Generated automatically by configure.
|
||||
# Run this file to recreate the current configuration.
|
||||
# This directory was configured as follows,
|
||||
# on host `(hostname || uname -n) 2>/dev/null`:
|
||||
#
|
||||
# $0 $*
|
||||
|
||||
for arg
|
||||
do
|
||||
case "\$arg" in
|
||||
-recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r)
|
||||
exec /bin/sh $0 $* ;;
|
||||
*) echo "Usage: config.status --recheck" 2>&1; exit 1 ;;
|
||||
esac
|
||||
done
|
||||
|
||||
trap 'rm -f Makefile; exit 1' 1 3 15
|
||||
CC='$CC'
|
||||
INSTALL='$INSTALL'
|
||||
INSTALL_PROGRAM='$INSTALL_PROGRAM'
|
||||
INSTALL_DATA='$INSTALL_DATA'
|
||||
CPP='$CPP'
|
||||
ALLOCA='$ALLOCA'
|
||||
LIBS='$LIBS'
|
||||
srcdir='$srcdir'
|
||||
DEFS='$DEFS'
|
||||
prefix='$prefix'
|
||||
exec_prefix='$exec_prefix'
|
||||
prsub='$prsub'
|
||||
EOF
|
||||
cat >> config.status <<\EOF
|
||||
|
||||
top_srcdir=$srcdir
|
||||
for file in .. Makefile; do if [ "x$file" != "x.." ]; then
|
||||
srcdir=$top_srcdir
|
||||
# Remove last slash and all that follows it. Not all systems have dirname.
|
||||
dir=`echo $file|sed 's%/[^/][^/]*$%%'`
|
||||
if test "$dir" != "$file"; then
|
||||
test "$top_srcdir" != . && srcdir=$top_srcdir/$dir
|
||||
test ! -d $dir && mkdir $dir
|
||||
fi
|
||||
echo creating $file
|
||||
rm -f $file
|
||||
echo "# Generated automatically from `echo $file|sed 's|.*/||'`.in by configure." > $file
|
||||
sed -e "
|
||||
$prsub
|
||||
s%@CC@%$CC%g
|
||||
s%@INSTALL@%$INSTALL%g
|
||||
s%@INSTALL_PROGRAM@%$INSTALL_PROGRAM%g
|
||||
s%@INSTALL_DATA@%$INSTALL_DATA%g
|
||||
s%@CPP@%$CPP%g
|
||||
s%@ALLOCA@%$ALLOCA%g
|
||||
s%@LIBS@%$LIBS%g
|
||||
s%@srcdir@%$srcdir%g
|
||||
s%@DEFS@%$DEFS%
|
||||
" $top_srcdir/${file}.in >> $file
|
||||
fi; done
|
||||
|
||||
exit 0
|
||||
EOF
|
||||
chmod +x config.status
|
||||
test -n "$no_create" || ./config.status
|
||||
|
||||
@@ -0,0 +1,23 @@
|
||||
dnl Process this file with autoconf to produce a configure script.
|
||||
AC_INIT(regex.c)
|
||||
|
||||
AC_PROG_CC
|
||||
AC_PROG_INSTALL
|
||||
|
||||
dnl I'm not sure if AC_AIX and AC_DYNIX_SEQ are really necessary. The
|
||||
dnl Autoconf documentation isn't specific about which BSD functions they
|
||||
dnl provide.
|
||||
AC_AIX
|
||||
AC_DYNIX_SEQ
|
||||
AC_ISC_POSIX
|
||||
AC_MINIX
|
||||
|
||||
AC_STDC_HEADERS
|
||||
AC_HAVE_HEADERS(string.h)
|
||||
|
||||
AC_ALLOCA
|
||||
AC_CONST
|
||||
|
||||
AC_PREFIX(gcc)
|
||||
|
||||
AC_OUTPUT(Makefile doc/Makefile test/Makefile)
|
||||
@@ -0,0 +1,4 @@
|
||||
clean:
|
||||
default:
|
||||
all:
|
||||
echo "."
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,490 @@
|
||||
/* Definitions for data structures and routines for the regular
|
||||
expression library, version 0.12.
|
||||
|
||||
Copyright (C) 1985, 1989, 1990, 1991, 1992, 1993 Free Software Foundation, Inc.
|
||||
|
||||
This program is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation; either version 2, or (at your option)
|
||||
any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program; if not, write to the Free Software
|
||||
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */
|
||||
|
||||
#ifndef __REGEXP_LIBRARY_H__
|
||||
#define __REGEXP_LIBRARY_H__
|
||||
|
||||
/* POSIX says that <sys/types.h> must be included (by the caller) before
|
||||
<regex.h>. */
|
||||
|
||||
#ifdef VMS
|
||||
/* VMS doesn't have `size_t' in <sys/types.h>, even though POSIX says it
|
||||
should be there. */
|
||||
#include <stddef.h>
|
||||
#endif
|
||||
|
||||
|
||||
/* The following bits are used to determine the regexp syntax we
|
||||
recognize. The set/not-set meanings are chosen so that Emacs syntax
|
||||
remains the value 0. The bits are given in alphabetical order, and
|
||||
the definitions shifted by one from the previous bit; thus, when we
|
||||
add or remove a bit, only one other definition need change. */
|
||||
typedef unsigned reg_syntax_t;
|
||||
|
||||
/* If this bit is not set, then \ inside a bracket expression is literal.
|
||||
If set, then such a \ quotes the following character. */
|
||||
#define RE_BACKSLASH_ESCAPE_IN_LISTS (1)
|
||||
|
||||
/* If this bit is not set, then + and ? are operators, and \+ and \? are
|
||||
literals.
|
||||
If set, then \+ and \? are operators and + and ? are literals. */
|
||||
#define RE_BK_PLUS_QM (RE_BACKSLASH_ESCAPE_IN_LISTS << 1)
|
||||
|
||||
/* If this bit is set, then character classes are supported. They are:
|
||||
[:alpha:], [:upper:], [:lower:], [:digit:], [:alnum:], [:xdigit:],
|
||||
[:space:], [:print:], [:punct:], [:graph:], and [:cntrl:].
|
||||
If not set, then character classes are not supported. */
|
||||
#define RE_CHAR_CLASSES (RE_BK_PLUS_QM << 1)
|
||||
|
||||
/* If this bit is set, then ^ and $ are always anchors (outside bracket
|
||||
expressions, of course).
|
||||
If this bit is not set, then it depends:
|
||||
^ is an anchor if it is at the beginning of a regular
|
||||
expression or after an open-group or an alternation operator;
|
||||
$ is an anchor if it is at the end of a regular expression, or
|
||||
before a close-group or an alternation operator.
|
||||
|
||||
This bit could be (re)combined with RE_CONTEXT_INDEP_OPS, because
|
||||
POSIX draft 11.2 says that * etc. in leading positions is undefined.
|
||||
We already implemented a previous draft which made those constructs
|
||||
invalid, though, so we haven't changed the code back. */
|
||||
#define RE_CONTEXT_INDEP_ANCHORS (RE_CHAR_CLASSES << 1)
|
||||
|
||||
/* If this bit is set, then special characters are always special
|
||||
regardless of where they are in the pattern.
|
||||
If this bit is not set, then special characters are special only in
|
||||
some contexts; otherwise they are ordinary. Specifically,
|
||||
* + ? and intervals are only special when not after the beginning,
|
||||
open-group, or alternation operator. */
|
||||
#define RE_CONTEXT_INDEP_OPS (RE_CONTEXT_INDEP_ANCHORS << 1)
|
||||
|
||||
/* If this bit is set, then *, +, ?, and { cannot be first in an re or
|
||||
immediately after an alternation or begin-group operator. */
|
||||
#define RE_CONTEXT_INVALID_OPS (RE_CONTEXT_INDEP_OPS << 1)
|
||||
|
||||
/* If this bit is set, then . matches newline.
|
||||
If not set, then it doesn't. */
|
||||
#define RE_DOT_NEWLINE (RE_CONTEXT_INVALID_OPS << 1)
|
||||
|
||||
/* If this bit is set, then . doesn't match NUL.
|
||||
If not set, then it does. */
|
||||
#define RE_DOT_NOT_NULL (RE_DOT_NEWLINE << 1)
|
||||
|
||||
/* If this bit is set, nonmatching lists [^...] do not match newline.
|
||||
If not set, they do. */
|
||||
#define RE_HAT_LISTS_NOT_NEWLINE (RE_DOT_NOT_NULL << 1)
|
||||
|
||||
/* If this bit is set, either \{...\} or {...} defines an
|
||||
interval, depending on RE_NO_BK_BRACES.
|
||||
If not set, \{, \}, {, and } are literals. */
|
||||
#define RE_INTERVALS (RE_HAT_LISTS_NOT_NEWLINE << 1)
|
||||
|
||||
/* If this bit is set, +, ? and | aren't recognized as operators.
|
||||
If not set, they are. */
|
||||
#define RE_LIMITED_OPS (RE_INTERVALS << 1)
|
||||
|
||||
/* If this bit is set, newline is an alternation operator.
|
||||
If not set, newline is literal. */
|
||||
#define RE_NEWLINE_ALT (RE_LIMITED_OPS << 1)
|
||||
|
||||
/* If this bit is set, then `{...}' defines an interval, and \{ and \}
|
||||
are literals.
|
||||
If not set, then `\{...\}' defines an interval. */
|
||||
#define RE_NO_BK_BRACES (RE_NEWLINE_ALT << 1)
|
||||
|
||||
/* If this bit is set, (...) defines a group, and \( and \) are literals.
|
||||
If not set, \(...\) defines a group, and ( and ) are literals. */
|
||||
#define RE_NO_BK_PARENS (RE_NO_BK_BRACES << 1)
|
||||
|
||||
/* If this bit is set, then \<digit> matches <digit>.
|
||||
If not set, then \<digit> is a back-reference. */
|
||||
#define RE_NO_BK_REFS (RE_NO_BK_PARENS << 1)
|
||||
|
||||
/* If this bit is set, then | is an alternation operator, and \| is literal.
|
||||
If not set, then \| is an alternation operator, and | is literal. */
|
||||
#define RE_NO_BK_VBAR (RE_NO_BK_REFS << 1)
|
||||
|
||||
/* If this bit is set, then an ending range point collating higher
|
||||
than the starting range point, as in [z-a], is invalid.
|
||||
If not set, then when ending range point collates higher than the
|
||||
starting range point, the range is ignored. */
|
||||
#define RE_NO_EMPTY_RANGES (RE_NO_BK_VBAR << 1)
|
||||
|
||||
/* If this bit is set, then an unmatched ) is ordinary.
|
||||
If not set, then an unmatched ) is invalid. */
|
||||
#define RE_UNMATCHED_RIGHT_PAREN_ORD (RE_NO_EMPTY_RANGES << 1)
|
||||
|
||||
/* This global variable defines the particular regexp syntax to use (for
|
||||
some interfaces). When a regexp is compiled, the syntax used is
|
||||
stored in the pattern buffer, so changing this does not affect
|
||||
already-compiled regexps. */
|
||||
extern reg_syntax_t re_syntax_options;
|
||||
|
||||
/* Define combinations of the above bits for the standard possibilities.
|
||||
(The [[[ comments delimit what gets put into the Texinfo file, so
|
||||
don't delete them!) */
|
||||
/* [[[begin syntaxes]]] */
|
||||
#define RE_SYNTAX_EMACS 0
|
||||
|
||||
#define RE_SYNTAX_AWK \
|
||||
(RE_BACKSLASH_ESCAPE_IN_LISTS | RE_DOT_NOT_NULL \
|
||||
| RE_NO_BK_PARENS | RE_NO_BK_REFS \
|
||||
| RE_NO_BK_VBAR | RE_NO_EMPTY_RANGES \
|
||||
| RE_UNMATCHED_RIGHT_PAREN_ORD)
|
||||
|
||||
#define RE_SYNTAX_POSIX_AWK \
|
||||
(RE_SYNTAX_POSIX_EXTENDED | RE_BACKSLASH_ESCAPE_IN_LISTS)
|
||||
|
||||
#define RE_SYNTAX_GREP \
|
||||
(RE_BK_PLUS_QM | RE_CHAR_CLASSES \
|
||||
| RE_HAT_LISTS_NOT_NEWLINE | RE_INTERVALS \
|
||||
| RE_NEWLINE_ALT)
|
||||
|
||||
#define RE_SYNTAX_EGREP \
|
||||
(RE_CHAR_CLASSES | RE_CONTEXT_INDEP_ANCHORS \
|
||||
| RE_CONTEXT_INDEP_OPS | RE_HAT_LISTS_NOT_NEWLINE \
|
||||
| RE_NEWLINE_ALT | RE_NO_BK_PARENS \
|
||||
| RE_NO_BK_VBAR)
|
||||
|
||||
#define RE_SYNTAX_POSIX_EGREP \
|
||||
(RE_SYNTAX_EGREP | RE_INTERVALS | RE_NO_BK_BRACES)
|
||||
|
||||
/* P1003.2/D11.2, section 4.20.7.1, lines 5078ff. */
|
||||
#define RE_SYNTAX_ED RE_SYNTAX_POSIX_BASIC
|
||||
|
||||
#define RE_SYNTAX_SED RE_SYNTAX_POSIX_BASIC
|
||||
|
||||
/* Syntax bits common to both basic and extended POSIX regex syntax. */
|
||||
#define _RE_SYNTAX_POSIX_COMMON \
|
||||
(RE_CHAR_CLASSES | RE_DOT_NEWLINE | RE_DOT_NOT_NULL \
|
||||
| RE_INTERVALS | RE_NO_EMPTY_RANGES)
|
||||
|
||||
#define RE_SYNTAX_POSIX_BASIC \
|
||||
(_RE_SYNTAX_POSIX_COMMON | RE_BK_PLUS_QM)
|
||||
|
||||
/* Differs from ..._POSIX_BASIC only in that RE_BK_PLUS_QM becomes
|
||||
RE_LIMITED_OPS, i.e., \? \+ \| are not recognized. Actually, this
|
||||
isn't minimal, since other operators, such as \`, aren't disabled. */
|
||||
#define RE_SYNTAX_POSIX_MINIMAL_BASIC \
|
||||
(_RE_SYNTAX_POSIX_COMMON | RE_LIMITED_OPS)
|
||||
|
||||
#define RE_SYNTAX_POSIX_EXTENDED \
|
||||
(_RE_SYNTAX_POSIX_COMMON | RE_CONTEXT_INDEP_ANCHORS \
|
||||
| RE_CONTEXT_INDEP_OPS | RE_NO_BK_BRACES \
|
||||
| RE_NO_BK_PARENS | RE_NO_BK_VBAR \
|
||||
| RE_UNMATCHED_RIGHT_PAREN_ORD)
|
||||
|
||||
/* Differs from ..._POSIX_EXTENDED in that RE_CONTEXT_INVALID_OPS
|
||||
replaces RE_CONTEXT_INDEP_OPS and RE_NO_BK_REFS is added. */
|
||||
#define RE_SYNTAX_POSIX_MINIMAL_EXTENDED \
|
||||
(_RE_SYNTAX_POSIX_COMMON | RE_CONTEXT_INDEP_ANCHORS \
|
||||
| RE_CONTEXT_INVALID_OPS | RE_NO_BK_BRACES \
|
||||
| RE_NO_BK_PARENS | RE_NO_BK_REFS \
|
||||
| RE_NO_BK_VBAR | RE_UNMATCHED_RIGHT_PAREN_ORD)
|
||||
/* [[[end syntaxes]]] */
|
||||
|
||||
/* Maximum number of duplicates an interval can allow. Some systems
|
||||
(erroneously) define this in other header files, but we want our
|
||||
value, so remove any previous define. */
|
||||
#ifdef RE_DUP_MAX
|
||||
#undef RE_DUP_MAX
|
||||
#endif
|
||||
#define RE_DUP_MAX ((1 << 15) - 1)
|
||||
|
||||
|
||||
/* POSIX `cflags' bits (i.e., information for `regcomp'). */
|
||||
|
||||
/* If this bit is set, then use extended regular expression syntax.
|
||||
If not set, then use basic regular expression syntax. */
|
||||
#define REG_EXTENDED 1
|
||||
|
||||
/* If this bit is set, then ignore case when matching.
|
||||
If not set, then case is significant. */
|
||||
#define REG_ICASE (REG_EXTENDED << 1)
|
||||
|
||||
/* If this bit is set, then anchors do not match at newline
|
||||
characters in the string.
|
||||
If not set, then anchors do match at newlines. */
|
||||
#define REG_NEWLINE (REG_ICASE << 1)
|
||||
|
||||
/* If this bit is set, then report only success or fail in regexec.
|
||||
If not set, then returns differ between not matching and errors. */
|
||||
#define REG_NOSUB (REG_NEWLINE << 1)
|
||||
|
||||
|
||||
/* POSIX `eflags' bits (i.e., information for regexec). */
|
||||
|
||||
/* If this bit is set, then the beginning-of-line operator doesn't match
|
||||
the beginning of the string (presumably because it's not the
|
||||
beginning of a line).
|
||||
If not set, then the beginning-of-line operator does match the
|
||||
beginning of the string. */
|
||||
#define REG_NOTBOL 1
|
||||
|
||||
/* Like REG_NOTBOL, except for the end-of-line. */
|
||||
#define REG_NOTEOL (1 << 1)
|
||||
|
||||
|
||||
/* If any error codes are removed, changed, or added, update the
|
||||
`re_error_msg' table in regex.c. */
|
||||
typedef enum
|
||||
{
|
||||
REG_NOERROR = 0, /* Success. */
|
||||
REG_NOMATCH, /* Didn't find a match (for regexec). */
|
||||
|
||||
/* POSIX regcomp return error codes. (In the order listed in the
|
||||
standard.) */
|
||||
REG_BADPAT, /* Invalid pattern. */
|
||||
REG_ECOLLATE, /* Not implemented. */
|
||||
REG_ECTYPE, /* Invalid character class name. */
|
||||
REG_EESCAPE, /* Trailing backslash. */
|
||||
REG_ESUBREG, /* Invalid back reference. */
|
||||
REG_EBRACK, /* Unmatched left bracket. */
|
||||
REG_EPAREN, /* Parenthesis imbalance. */
|
||||
REG_EBRACE, /* Unmatched \{. */
|
||||
REG_BADBR, /* Invalid contents of \{\}. */
|
||||
REG_ERANGE, /* Invalid range end. */
|
||||
REG_ESPACE, /* Ran out of memory. */
|
||||
REG_BADRPT, /* No preceding re for repetition op. */
|
||||
|
||||
/* Error codes we've added. */
|
||||
REG_EEND, /* Premature end. */
|
||||
REG_ESIZE, /* Compiled pattern bigger than 2^16 bytes. */
|
||||
REG_ERPAREN /* Unmatched ) or \); not returned from regcomp. */
|
||||
} reg_errcode_t;
|
||||
|
||||
/* This data structure represents a compiled pattern. Before calling
|
||||
the pattern compiler, the fields `buffer', `allocated', `fastmap',
|
||||
`translate', and `no_sub' can be set. After the pattern has been
|
||||
compiled, the `re_nsub' field is available. All other fields are
|
||||
private to the regex routines. */
|
||||
|
||||
struct re_pattern_buffer
|
||||
{
|
||||
/* [[[begin pattern_buffer]]] */
|
||||
/* Space that holds the compiled pattern. It is declared as
|
||||
`unsigned char *' because its elements are
|
||||
sometimes used as array indexes. */
|
||||
unsigned char *buffer;
|
||||
|
||||
/* Number of bytes to which `buffer' points. */
|
||||
unsigned long allocated;
|
||||
|
||||
/* Number of bytes actually used in `buffer'. */
|
||||
unsigned long used;
|
||||
|
||||
/* Syntax setting with which the pattern was compiled. */
|
||||
reg_syntax_t syntax;
|
||||
|
||||
/* Pointer to a fastmap, if any, otherwise zero. re_search uses
|
||||
the fastmap, if there is one, to skip over impossible
|
||||
starting points for matches. */
|
||||
char *fastmap;
|
||||
|
||||
/* Either a translate table to apply to all characters before
|
||||
comparing them, or zero for no translation. The translation
|
||||
is applied to a pattern when it is compiled and to a string
|
||||
when it is matched. */
|
||||
char *translate;
|
||||
|
||||
/* Number of subexpressions found by the compiler. */
|
||||
size_t re_nsub;
|
||||
|
||||
/* Zero if this pattern cannot match the empty string, one else.
|
||||
Well, in truth it's used only in `re_search_2', to see
|
||||
whether or not we should use the fastmap, so we don't set
|
||||
this absolutely perfectly; see `re_compile_fastmap' (the
|
||||
`duplicate' case). */
|
||||
unsigned can_be_null : 1;
|
||||
|
||||
/* If REGS_UNALLOCATED, allocate space in the `regs' structure
|
||||
for `max (RE_NREGS, re_nsub + 1)' groups.
|
||||
If REGS_REALLOCATE, reallocate space if necessary.
|
||||
If REGS_FIXED, use what's there. */
|
||||
#define REGS_UNALLOCATED 0
|
||||
#define REGS_REALLOCATE 1
|
||||
#define REGS_FIXED 2
|
||||
unsigned regs_allocated : 2;
|
||||
|
||||
/* Set to zero when `regex_compile' compiles a pattern; set to one
|
||||
by `re_compile_fastmap' if it updates the fastmap. */
|
||||
unsigned fastmap_accurate : 1;
|
||||
|
||||
/* If set, `re_match_2' does not return information about
|
||||
subexpressions. */
|
||||
unsigned no_sub : 1;
|
||||
|
||||
/* If set, a beginning-of-line anchor doesn't match at the
|
||||
beginning of the string. */
|
||||
unsigned not_bol : 1;
|
||||
|
||||
/* Similarly for an end-of-line anchor. */
|
||||
unsigned not_eol : 1;
|
||||
|
||||
/* If true, an anchor at a newline matches. */
|
||||
unsigned newline_anchor : 1;
|
||||
|
||||
/* [[[end pattern_buffer]]] */
|
||||
};
|
||||
|
||||
typedef struct re_pattern_buffer regex_t;
|
||||
|
||||
|
||||
/* search.c (search_buffer) in Emacs needs this one opcode value. It is
|
||||
defined both in `regex.c' and here. */
|
||||
#define RE_EXACTN_VALUE 1
|
||||
|
||||
/* Type for byte offsets within the string. POSIX mandates this. */
|
||||
typedef int regoff_t;
|
||||
|
||||
|
||||
/* This is the structure we store register match data in. See
|
||||
regex.texinfo for a full description of what registers match. */
|
||||
struct re_registers
|
||||
{
|
||||
unsigned num_regs;
|
||||
regoff_t *start;
|
||||
regoff_t *end;
|
||||
};
|
||||
|
||||
|
||||
/* If `regs_allocated' is REGS_UNALLOCATED in the pattern buffer,
|
||||
`re_match_2' returns information about at least this many registers
|
||||
the first time a `regs' structure is passed. */
|
||||
#ifndef RE_NREGS
|
||||
#define RE_NREGS 30
|
||||
#endif
|
||||
|
||||
|
||||
/* POSIX specification for registers. Aside from the different names than
|
||||
`re_registers', POSIX uses an array of structures, instead of a
|
||||
structure of arrays. */
|
||||
typedef struct
|
||||
{
|
||||
regoff_t rm_so; /* Byte offset from string's start to substring's start. */
|
||||
regoff_t rm_eo; /* Byte offset from string's start to substring's end. */
|
||||
} regmatch_t;
|
||||
|
||||
/* Declarations for routines. */
|
||||
|
||||
/* To avoid duplicating every routine declaration -- once with a
|
||||
prototype (if we are ANSI), and once without (if we aren't) -- we
|
||||
use the following macro to declare argument types. This
|
||||
unfortunately clutters up the declarations a bit, but I think it's
|
||||
worth it. */
|
||||
|
||||
#if __STDC__
|
||||
|
||||
#define _RE_ARGS(args) args
|
||||
|
||||
#else /* not __STDC__ */
|
||||
|
||||
#define _RE_ARGS(args) ()
|
||||
|
||||
#endif /* not __STDC__ */
|
||||
|
||||
/* Sets the current default syntax to SYNTAX, and return the old syntax.
|
||||
You can also simply assign to the `re_syntax_options' variable. */
|
||||
extern reg_syntax_t re_set_syntax _RE_ARGS ((reg_syntax_t syntax));
|
||||
|
||||
/* Compile the regular expression PATTERN, with length LENGTH
|
||||
and syntax given by the global `re_syntax_options', into the buffer
|
||||
BUFFER. Return NULL if successful, and an error string if not. */
|
||||
extern const char *re_compile_pattern
|
||||
_RE_ARGS ((const char *pattern, int length,
|
||||
struct re_pattern_buffer *buffer));
|
||||
|
||||
|
||||
/* Compile a fastmap for the compiled pattern in BUFFER; used to
|
||||
accelerate searches. Return 0 if successful and -2 if was an
|
||||
internal error. */
|
||||
extern int re_compile_fastmap _RE_ARGS ((struct re_pattern_buffer *buffer));
|
||||
|
||||
|
||||
/* Search in the string STRING (with length LENGTH) for the pattern
|
||||
compiled into BUFFER. Start searching at position START, for RANGE
|
||||
characters. Return the starting position of the match, -1 for no
|
||||
match, or -2 for an internal error. Also return register
|
||||
information in REGS (if REGS and BUFFER->no_sub are nonzero). */
|
||||
extern int re_search
|
||||
_RE_ARGS ((struct re_pattern_buffer *buffer, const char *string,
|
||||
int length, int start, int range, struct re_registers *regs));
|
||||
|
||||
|
||||
/* Like `re_search', but search in the concatenation of STRING1 and
|
||||
STRING2. Also, stop searching at index START + STOP. */
|
||||
extern int re_search_2
|
||||
_RE_ARGS ((struct re_pattern_buffer *buffer, const char *string1,
|
||||
int length1, const char *string2, int length2,
|
||||
int start, int range, struct re_registers *regs, int stop));
|
||||
|
||||
|
||||
/* Like `re_search', but return how many characters in STRING the regexp
|
||||
in BUFFER matched, starting at position START. */
|
||||
extern int re_match
|
||||
_RE_ARGS ((struct re_pattern_buffer *buffer, const char *string,
|
||||
int length, int start, struct re_registers *regs));
|
||||
|
||||
|
||||
/* Relates to `re_match' as `re_search_2' relates to `re_search'. */
|
||||
extern int re_match_2
|
||||
_RE_ARGS ((struct re_pattern_buffer *buffer, const char *string1,
|
||||
int length1, const char *string2, int length2,
|
||||
int start, struct re_registers *regs, int stop));
|
||||
|
||||
|
||||
/* Set REGS to hold NUM_REGS registers, storing them in STARTS and
|
||||
ENDS. Subsequent matches using BUFFER and REGS will use this memory
|
||||
for recording register information. STARTS and ENDS must be
|
||||
allocated with malloc, and must each be at least `NUM_REGS * sizeof
|
||||
(regoff_t)' bytes long.
|
||||
|
||||
If NUM_REGS == 0, then subsequent matches should allocate their own
|
||||
register data.
|
||||
|
||||
Unless this function is called, the first search or match using
|
||||
PATTERN_BUFFER will allocate its own register data, without
|
||||
freeing the old data. */
|
||||
extern void re_set_registers
|
||||
_RE_ARGS ((struct re_pattern_buffer *buffer, struct re_registers *regs,
|
||||
unsigned num_regs, regoff_t *starts, regoff_t *ends));
|
||||
|
||||
/* 4.2 bsd compatibility. */
|
||||
extern char *re_comp _RE_ARGS ((const char *));
|
||||
extern int re_exec _RE_ARGS ((const char *));
|
||||
|
||||
/* POSIX compatibility. */
|
||||
extern int regcomp _RE_ARGS ((regex_t *preg, const char *pattern, int cflags));
|
||||
extern int regexec
|
||||
_RE_ARGS ((const regex_t *preg, const char *string, size_t nmatch,
|
||||
regmatch_t pmatch[], int eflags));
|
||||
extern size_t regerror
|
||||
_RE_ARGS ((int errcode, const regex_t *preg, char *errbuf,
|
||||
size_t errbuf_size));
|
||||
extern void regfree _RE_ARGS ((regex_t *preg));
|
||||
|
||||
#endif /* not __REGEXP_LIBRARY_H__ */
|
||||
|
||||
/*
|
||||
Local variables:
|
||||
make-backup-files: t
|
||||
version-control: t
|
||||
trim-versions-without-asking: nil
|
||||
End:
|
||||
*/
|
||||
@@ -0,0 +1,25 @@
|
||||
#ifndef __BADWORDS_H
|
||||
#define __BADWORDS_H
|
||||
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
|
||||
#ifdef HAVE_REGEX
|
||||
#include <regex.h>
|
||||
#else
|
||||
#include "../extras/regex/regex.h"
|
||||
#endif
|
||||
|
||||
#define MAX_MATCH 1
|
||||
#define MAX_WORDLEN 64
|
||||
#define MAX_WORDS 50
|
||||
|
||||
#define PATTERN "\\w*%s\\w*"
|
||||
#define REPLACEWORD "<censored>"
|
||||
|
||||
char *stripbadwords(char *, int);
|
||||
int loadbadwords(char *, int);
|
||||
void freebadwords(void);
|
||||
|
||||
#endif
|
||||
+6
-6
@@ -1,5 +1,5 @@
|
||||
/************************************************************************
|
||||
* IRC - Internet Relay Chat, ircd/channel.h
|
||||
* Unreal Internet Relay Chat Daemon, ircd/channel.h
|
||||
* Copyright (C) 1990 Jarkko Oikarinen
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
@@ -21,8 +21,8 @@
|
||||
|
||||
#ifndef __channel_include__
|
||||
#define __channel_include__
|
||||
#define CREATE 1 /* whether a channel should be
|
||||
created or just tested for existance */
|
||||
#define CREATE 1 /* whether a channel should be
|
||||
created or just tested for existance */
|
||||
|
||||
#define MODEBUFLEN 200
|
||||
|
||||
@@ -30,7 +30,7 @@
|
||||
|
||||
#define ChannelExists(n) (find_channel(n, NullChn) != NullChn)
|
||||
|
||||
#define IsULine(cptr,sptr) (sptr->flags & FLAGS_ULINE)
|
||||
#define IsULine(sptr) (sptr->flags & FLAGS_ULINE)
|
||||
|
||||
/* NOTE: Timestamps will be added to MODE-commands, so never make
|
||||
* RESYNCMODES and MODEPARAMS higher than MAXPARA-3. DALnet servers
|
||||
@@ -38,7 +38,7 @@
|
||||
*/
|
||||
#include "msg.h"
|
||||
#define MAXMODEPARAMS (MAXPARA-2) /* Maximum modes processed */
|
||||
#define RESYNCMODES 12 /* Max modes per MODE in resync */
|
||||
#define MODEPARAMS 6 /* Max modes from user */
|
||||
#define RESYNCMODES 12 /* Max modes per MODE in resync */
|
||||
#define MODEPARAMS 6 /* Max modes from user */
|
||||
|
||||
#endif
|
||||
|
||||
@@ -1,27 +0,0 @@
|
||||
// $Id$
|
||||
#include <windows.h>
|
||||
|
||||
|
||||
#define CIOCLASS "CioClass"
|
||||
|
||||
#ifndef CIO
|
||||
#define CIO
|
||||
|
||||
typedef struct tag_CioLine
|
||||
{
|
||||
BYTE *Data;
|
||||
WORD Len;
|
||||
struct tag_CioLine *Prev, *Next;
|
||||
} CioLine;
|
||||
|
||||
typedef struct tag_CioWndInfo
|
||||
{
|
||||
CioLine *FirstLine, *CurLine;
|
||||
int Lines, Scroll;
|
||||
int Width, Height, XChar, YChar, YJunk, ScrollMe;
|
||||
HFONT hFont;
|
||||
BYTE FR, FG, FB;
|
||||
} CioWndInfo;
|
||||
|
||||
#endif
|
||||
|
||||
@@ -1,20 +0,0 @@
|
||||
// $Id$
|
||||
#include "Cio.h"
|
||||
|
||||
#define GWL_USER 0
|
||||
#define CIO_ADDSTRING WM_USER
|
||||
#define CIO_CLEAR WM_USER+1
|
||||
|
||||
// Cio_Init.c
|
||||
BOOL Cio_Init(HINSTANCE hInstance);
|
||||
|
||||
// Cio_Main.c
|
||||
LRESULT CALLBACK Cio_WndProc(HWND, UINT, WPARAM, LPARAM);
|
||||
HWND Cio_Create(HINSTANCE hInstance, HWND hParent, DWORD Style, int X, int Y, int W, int H);
|
||||
BOOL Cio_WndCreate(HWND hWnd);
|
||||
BOOL Cio_WndPaint(HWND hWnd);
|
||||
BOOL Cio_WndDestroy(HWND hWnd);
|
||||
BOOL Cio_WndAddString(HWND hWnd, int Len, char *Buffer);
|
||||
BOOL Cio_WndSize(HWND hWnd, LPARAM lParam);
|
||||
void Cio_Scroll(HWND hWnd, CioWndInfo *CWI, int Scroll);
|
||||
BOOL Cio_PrintF(HWND hWnd, char *InBuf, ...);
|
||||
+16
-16
@@ -1,5 +1,5 @@
|
||||
/************************************************************************
|
||||
* IRC - Internet Relay Chat, include/class.h
|
||||
* Unreal Internet Relay Chat Daemon, include/class.h
|
||||
* Copyright (C) 1990 Darren Reed
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
@@ -31,12 +31,12 @@
|
||||
#endif
|
||||
|
||||
typedef struct Class {
|
||||
int class;
|
||||
int conFreq;
|
||||
int pingFreq;
|
||||
int maxLinks;
|
||||
long maxSendq;
|
||||
int links;
|
||||
int class;
|
||||
int conFreq;
|
||||
int pingFreq;
|
||||
int maxLinks;
|
||||
long maxSendq;
|
||||
int links;
|
||||
struct Class *next;
|
||||
} aClass;
|
||||
|
||||
@@ -57,15 +57,15 @@ typedef struct Class {
|
||||
#define FirstClass() classes
|
||||
#define NextClass(x) ((x)->next)
|
||||
|
||||
extern aClass *classes;
|
||||
extern aClass *classes;
|
||||
|
||||
extern aClass *find_class PROTO((int));
|
||||
extern int get_conf_class PROTO((aConfItem *));
|
||||
extern int get_client_class PROTO((aClient *));
|
||||
extern int get_client_ping PROTO((aClient *));
|
||||
extern int get_con_freq PROTO((aClass *));
|
||||
extern void add_class PROTO((int, int, int, int, long));
|
||||
extern void check_class PROTO((void));
|
||||
extern void initclass PROTO((void));
|
||||
extern aClass *find_class PROTO((int));
|
||||
extern int get_conf_class PROTO((aConfItem *));
|
||||
extern int get_client_class PROTO((aClient *));
|
||||
extern int get_client_ping PROTO((aClient *));
|
||||
extern int get_con_freq PROTO((aClass *));
|
||||
extern void add_class PROTO((int, int, int, int, long));
|
||||
extern void check_class PROTO((void));
|
||||
extern void initclass PROTO((void));
|
||||
|
||||
#endif /* __class_include__ */
|
||||
|
||||
+113
-32
@@ -1,5 +1,5 @@
|
||||
/************************************************************************
|
||||
* IRC - Internet Relay Chat, include/common.h
|
||||
* Unreal Internet Relay Chat Daemon, include/common.h
|
||||
* Copyright (C) 1990 Armin Gruner
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
@@ -29,9 +29,10 @@
|
||||
#include <winsock.h>
|
||||
#include <process.h>
|
||||
#include <io.h>
|
||||
#include "struct.h"
|
||||
//#include "struct.h"
|
||||
#endif
|
||||
#include "dynconf.h"
|
||||
#include "ircsprintf.h"
|
||||
|
||||
#ifdef PARAMH
|
||||
#include <sys/param.h>
|
||||
@@ -45,12 +46,22 @@
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#define ID_CVS(x) static char id_cvs[] = x
|
||||
#ifdef DEVELOP_CVS
|
||||
#define ID_Copyright(x) static char id_copyright[] = x
|
||||
#define ID_Notes(x) static char id_notes[] = x
|
||||
#else
|
||||
#define ID_Copyright(x)
|
||||
#define ID_Notes(x)
|
||||
#endif
|
||||
|
||||
#define BMAGIC 0x4675636B596F754661736369737473
|
||||
|
||||
#define BASE_VERSION "Unreal"
|
||||
#ifndef _WIN32
|
||||
#define FDwrite(x,y,z) write(x, y, z)
|
||||
#else
|
||||
#define FDwrite(x,y,z) send(x, y, z, 0)
|
||||
#endif
|
||||
#ifndef NULL
|
||||
#define NULL 0
|
||||
#endif
|
||||
@@ -72,27 +83,29 @@
|
||||
|
||||
#if 0
|
||||
#ifndef MALLOCH
|
||||
char *malloc(), *calloc();
|
||||
void free();
|
||||
char *malloc(), *calloc();
|
||||
void free();
|
||||
#else
|
||||
#include MALLOCH
|
||||
#endif
|
||||
#endif
|
||||
|
||||
|
||||
extern int match PROTO((char *, char *));
|
||||
#define TS time_t
|
||||
|
||||
extern int match PROTO((char *, char *));
|
||||
#define mycmp(a,b) \
|
||||
( (toupper((a)[0])!=toupper((b)[0])) || smycmp((a)+1,(b)+1) )
|
||||
extern int smycmp PROTO((char *, char *));
|
||||
extern int smycmp PROTO((char *, char *));
|
||||
#ifndef GLIBC2_x
|
||||
extern int myncmp PROTO((char *, char *, int));
|
||||
#endif
|
||||
extern int myncmp PROTO((char *, char *, int));
|
||||
#endif
|
||||
|
||||
#ifdef NEED_STRTOK
|
||||
extern char *strtok2 PROTO((char *, char *));
|
||||
extern char *strtok2 PROTO((char *, char *));
|
||||
#endif
|
||||
#ifdef NEED_STRTOKEN
|
||||
extern char *strtoken PROTO((char **, char *, char *));
|
||||
extern char *strtoken PROTO((char **, char *, char *));
|
||||
#endif
|
||||
#ifdef NEED_INET_ADDR
|
||||
extern unsigned long inet_addr PROTO((char *));
|
||||
@@ -102,15 +115,15 @@ extern unsigned long inet_addr PROTO((char *));
|
||||
#include <netinet/in.h>
|
||||
#endif
|
||||
#ifdef NEED_INET_NTOA
|
||||
extern char *inet_ntoa PROTO((struct in_addr));
|
||||
extern char *inet_ntoa PROTO((struct IN_ADDR));
|
||||
#endif
|
||||
|
||||
#ifdef NEED_INET_NETOF
|
||||
extern int inet_netof PROTO((struct in_addr));
|
||||
extern int inet_netof PROTO((struct IN_ADDR));
|
||||
#endif
|
||||
|
||||
int global_count, max_global_count;
|
||||
extern char *myctime PROTO((time_t));
|
||||
int global_count, max_global_count;
|
||||
extern char *myctime PROTO((TS));
|
||||
extern char *strtoken PROTO((char **, char *, char *));
|
||||
|
||||
#define PRECISE_CHECK
|
||||
@@ -124,14 +137,9 @@ extern char *strtoken PROTO((char **, char *, char *));
|
||||
|
||||
#define DupString(x,y) do{x=MyMalloc(strlen(y)+1);(void)strcpy(x,y);}while(0)
|
||||
|
||||
#ifdef USE_CASETABLES
|
||||
extern int casetable;
|
||||
extern u_char *tolowertab, tolowertab1[], tolowertab2[];
|
||||
extern u_char *touppertab, touppertab1[], touppertab2[];
|
||||
#else
|
||||
extern u_char tolowertab[], touppertab[];
|
||||
#endif
|
||||
|
||||
#ifndef USE_LOCALE
|
||||
#undef tolower
|
||||
#define tolower(c) (tolowertab[(c)])
|
||||
|
||||
@@ -150,7 +158,7 @@ extern u_char tolowertab[], touppertab[];
|
||||
#undef isupper
|
||||
#undef isspace
|
||||
#undef iscntrl
|
||||
|
||||
#endif
|
||||
extern unsigned char char_atribs[];
|
||||
|
||||
#define PRINT 1
|
||||
@@ -168,8 +176,9 @@ extern unsigned char char_atribs[];
|
||||
#define KLINE_EXCEPT 3
|
||||
#endif
|
||||
|
||||
#define iscntrl(c) (char_atribs[(u_char)(c)]&CNTRL)
|
||||
#define isallowed(c) (char_atribs[(u_char)(c)]&ALLOW)
|
||||
#ifndef USE_LOCALE
|
||||
#define iscntrl(c) (char_atribs[(u_char)(c)]&CNTRL)
|
||||
#define isalpha(c) (char_atribs[(u_char)(c)]&ALPHA)
|
||||
#define isspace(c) (char_atribs[(u_char)(c)]&SPACE)
|
||||
#define islower(c) ((char_atribs[(u_char)(c)]&ALPHA) && ((u_char)(c) > 0x5f))
|
||||
@@ -182,24 +191,72 @@ extern unsigned char char_atribs[];
|
||||
#define isascii(c) ((u_char)(c) >= 0 && (u_char)(c) <= 0x7f)
|
||||
#define isgraph(c) ((char_atribs[(u_char)(c)]&PRINT) && ((u_char)(c) != 0x32))
|
||||
#define ispunct(c) (!(char_atribs[(u_char)(c)]&(CNTRL|ALPHA|DIGIT)))
|
||||
#endif
|
||||
|
||||
#ifndef DMALLOC
|
||||
extern char *MyMalloc();
|
||||
#else
|
||||
#define MyMalloc malloc
|
||||
#define MyRealloc realloc
|
||||
#define MyFree free
|
||||
#endif
|
||||
extern void flush_connections();
|
||||
extern struct SLink *find_user_link(/* struct SLink *, struct Client * */);
|
||||
extern struct SLink *find_user_link( /* struct SLink *, struct Client * */ );
|
||||
|
||||
/*
|
||||
* Protocol support text. DO NO CHANGE THIS unless you know what
|
||||
* you are doing.
|
||||
*/
|
||||
#define PROTOCTL_CLIENT "TOKEN WATCH=128 SAFELIST HCN PREFIX=@+%"
|
||||
#define PROTOCTL_SERVER "NOQUIT TOKEN NICKv2 SJOIN SJOIN2"
|
||||
|
||||
/* IRCu/Hybrid/Unreal way now :) -Stskeeps */
|
||||
|
||||
#define PROTOCTL_CLIENT \
|
||||
":%s 005 %s" \
|
||||
" MAP" \
|
||||
" KNOCK" \
|
||||
" SAFELIST" \
|
||||
" HCN" \
|
||||
" WATCH=%i" \
|
||||
" SILENCE=%i" \
|
||||
" MODES=%i" \
|
||||
" MAXCHANNELS=%i" \
|
||||
" MAXBANS=%i" \
|
||||
" NICKLEN=%i" \
|
||||
" TOPICLEN=%i" \
|
||||
" KICKLEN=%i" \
|
||||
" CHANTYPES=%s" \
|
||||
" PREFIX=%s" \
|
||||
" :are supported by this server"
|
||||
|
||||
#define PROTOCTL_PARAMETERS MAXWATCH, \
|
||||
MAXSILES, \
|
||||
MAXMODEPARAMS, \
|
||||
MAXCHANNELSPERUSER, \
|
||||
MAXBANS, \
|
||||
NICKLEN, \
|
||||
TOPICLEN, \
|
||||
TOPICLEN, \
|
||||
"#", \
|
||||
"(ohv)@%+"
|
||||
|
||||
/* Server-Server PROTOCTL -Stskeeps */
|
||||
#define PROTOCTL_SERVER "NOQUIT" \
|
||||
" TOKEN" \
|
||||
" NICKv2" \
|
||||
" SJOIN" \
|
||||
" SJOIN2" \
|
||||
" UMODE2" \
|
||||
" VL" \
|
||||
" SJ3" \
|
||||
" NS" \
|
||||
" SJB64"
|
||||
|
||||
#ifdef _WIN32
|
||||
/*
|
||||
* Used to display a string to the GUI interface.
|
||||
* Windows' internal strerror() function doesn't work with socket errors.
|
||||
*/
|
||||
extern int DisplayString(HWND hWnd, char *InBuf, ...);
|
||||
extern int DisplayString(HWND hWnd, char *InBuf, ...);
|
||||
#undef strerror
|
||||
#endif
|
||||
|
||||
@@ -207,10 +264,34 @@ extern int DisplayString(HWND hWnd, char *InBuf, ...);
|
||||
extern char *malloc_options;
|
||||
#endif
|
||||
|
||||
extern int lu_noninv, lu_inv, lu_serv, lu_oper,
|
||||
lu_unknown, lu_channel, lu_lu, lu_lulocal, lu_lserv,
|
||||
lu_clu, lu_mlu, lu_cglobalu, lu_mglobalu;
|
||||
|
||||
time_t now;
|
||||
extern int lu_noninv, lu_inv, lu_serv, lu_oper,
|
||||
lu_unknown, lu_channel, lu_lu, lu_lulocal, lu_lserv,
|
||||
lu_clu, lu_mlu, lu_cglobalu, lu_mglobalu;
|
||||
|
||||
TS now;
|
||||
|
||||
#if defined(__STDC__)
|
||||
#define __const const
|
||||
#define __signed signed
|
||||
#define __volatile volatile
|
||||
#ifndef __GNUC__
|
||||
#define __inline
|
||||
#endif
|
||||
|
||||
#else
|
||||
#ifndef __GNUC__
|
||||
#define __const
|
||||
#define __inline
|
||||
#define __signed
|
||||
#define __volatile
|
||||
#ifndef NO_ANSI_KEYWORDS
|
||||
#define const /* delete ANSI C keywords */
|
||||
#define inline
|
||||
#define signed
|
||||
#define volatile
|
||||
#endif
|
||||
#endif
|
||||
#endif
|
||||
|
||||
|
||||
#endif /* __common_include__ */
|
||||
|
||||
+130
-183
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* IRC - Internet Relay Chat, include/config.h
|
||||
* Unreal Internet Relay Chat Daemon, include/config.h
|
||||
* Copyright (C) 1990 Jarkko Oikarinen
|
||||
*
|
||||
* $Id$
|
||||
@@ -49,56 +49,30 @@
|
||||
#endif
|
||||
|
||||
/*
|
||||
* Define this if you're testing/debugging/programming.
|
||||
*/
|
||||
* Define this if you're testing/debugging/programming.
|
||||
*/
|
||||
#undef DEBUG
|
||||
|
||||
/* Type of host. These should be made redundant somehow. -avalon */
|
||||
|
||||
/* BSD Nothing Needed 4.{2,3} BSD, SunOS 3.x, 4.x */
|
||||
/* HPUX Nothing needed (A.08/A.09) */
|
||||
/* ULTRIX Nothing needed (4.2) */
|
||||
/* OSF Nothing needed (1.2) */
|
||||
/* #undef AIX /* IBM ugly so-called Unix, AIX */
|
||||
/* #undef MIPS /* MIPS Unix */
|
||||
/* #undef AIX IBM ugly so-called Unix, AIX */
|
||||
/* #undef MIPS MIPS Unix */
|
||||
/* SGI Nothing needed (IRIX 4.0.4) */
|
||||
/* #undef SVR3 /* SVR3 stuff - being worked on where poss. */
|
||||
/* #undef DYNIXPTX /* Sequents Brain-dead Posix implement. */
|
||||
/* #undef SOL20 /* Solaris2 */
|
||||
/* #undef ESIX /* ESIX */
|
||||
/* #undef NEXT /* NeXTStep */
|
||||
/* #undef SVR4 /* */
|
||||
/* #undef SVR3 SVR3 stuff - being worked on where poss. */
|
||||
/* #undef DYNIXPTX Sequents Brain-dead Posix implement. */
|
||||
/* #undef SOL20 Solaris2 */
|
||||
/* #undef ESIX ESIX */
|
||||
/* #undef NEXT NeXTStep */
|
||||
/* #undef SVR4 */
|
||||
|
||||
/* Additional flags to give FreeBSD's malloc, only play with this if you
|
||||
* know what you're doing.
|
||||
*/
|
||||
|
||||
|
||||
#define MALLOC_FLAGS_EXTRA ""
|
||||
/*
|
||||
ConferenceRoom Java Client Hack -Fish
|
||||
if you want it to work #define CONFROOM_JAVA_PORT <port>
|
||||
where port MUST be a seperate port java clients connects on ..
|
||||
*/
|
||||
#undef CONFROOM_JAVA_PORT
|
||||
|
||||
/*
|
||||
REMOVE_ADVERTISING -ice
|
||||
If you send a text to a user like "irc.roxnet.org" it will show up as "irc.******.org"
|
||||
Off by default --stskeeps
|
||||
*/
|
||||
#undef REMOVE_ADVERTISING
|
||||
|
||||
/*
|
||||
UnrealIRCd WebTV support
|
||||
*/
|
||||
#undef WEBTV
|
||||
|
||||
#ifdef WEBTV
|
||||
/* enable /msg irc user */
|
||||
#define WEBTV_IRCUSER
|
||||
/* NOTICE's dont exist (except from server) */
|
||||
#define WEBTV_NONOTICE
|
||||
#endif
|
||||
|
||||
/*
|
||||
dog3/comstud ircd fdlists
|
||||
@@ -106,71 +80,73 @@
|
||||
*/
|
||||
|
||||
#undef NO_FDLIST
|
||||
|
||||
/*
|
||||
OPER_NO_HIDING
|
||||
This makes +I an unexisting mode
|
||||
On by default --stskeeps
|
||||
* Defining this will allow all ircops to see people in +s channels
|
||||
* By default, only net admins can see this
|
||||
*/
|
||||
#undef SEE_SECRET
|
||||
|
||||
/*
|
||||
* This allows you to see modes in /list
|
||||
*/
|
||||
#undef OPER_NO_HIDING
|
||||
#define LIST_SHOW_MODES
|
||||
|
||||
/*
|
||||
* Admin's chat...
|
||||
*/
|
||||
#define ADMINCHAT 1
|
||||
|
||||
/*
|
||||
If you want SHUN_NOTICES, define this
|
||||
*/
|
||||
#undef SHUN_NOTICES
|
||||
|
||||
/*
|
||||
If you want to support chinese and/or japanese nicks
|
||||
*/
|
||||
#undef CHINESE_NICK
|
||||
#undef JAPANESE_NICK
|
||||
|
||||
/*
|
||||
Remote rehash
|
||||
*/
|
||||
#define REMOTE_REHASH
|
||||
|
||||
/*
|
||||
Stripbadwords patch
|
||||
*/
|
||||
#define STRIPBADWORDS
|
||||
|
||||
/*
|
||||
* NO_OPEROVERRIDE
|
||||
* This will disable OperMode, OperTopic and Banwalks
|
||||
*/
|
||||
#undef NO_OPEROVERRIDE
|
||||
|
||||
/*
|
||||
* Disable /sethost, /setident, /chgname, /chghost, /chgident
|
||||
*/
|
||||
#undef DISABLE_USERMOD
|
||||
|
||||
/*
|
||||
Ident checking
|
||||
#define this to disable ident checking
|
||||
*/
|
||||
#define NO_IDENT_CHECKING
|
||||
|
||||
/*
|
||||
* No spoof code
|
||||
*
|
||||
* This enables the spoof protection.
|
||||
*/
|
||||
/* #define NOSPOOF 1 /* */
|
||||
|
||||
/*
|
||||
*
|
||||
* This controls the "nospoof" system. These numbers are "seeds" of the
|
||||
* "random" number generating formula. Choose any number you like in the
|
||||
* range of 0x00000000 to 0xFFFFFFFF. Don't tell anyone these numbers, and
|
||||
* don't use the default ones. Change both #define NOSPOOF... lines below.
|
||||
*
|
||||
* Other data is mixed in as well, but these guarantee a per-server secret.
|
||||
* Also, these values need not remain constant over compilations... Change
|
||||
* them as often as you like.
|
||||
*/
|
||||
#ifdef NOSPOOF
|
||||
|
||||
#ifndef NOSPOOF_SEED01
|
||||
#define NOSPOOF_SEED01 0x12345678
|
||||
#endif
|
||||
|
||||
#ifndef NOSPOOF_SEED02
|
||||
#define NOSPOOF_SEED02 0x87654321
|
||||
#endif
|
||||
|
||||
#endif /* NOSPOOF */
|
||||
/* #define NOSPOOF 1 */
|
||||
|
||||
/*
|
||||
* HOSTILENAME - Define this if you want the hostile username patch included,
|
||||
* it will strip characters that are not 0-9,a-z,A-Z,_,- or .
|
||||
*/
|
||||
#define HOSTILENAME /* */
|
||||
|
||||
/*
|
||||
* Define this to prevent mixed case userids that clonebots use. However
|
||||
* this affects the servers running telclients WLD* FIN* etc.
|
||||
*/
|
||||
#undef DISALLOW_MIXED_CASE
|
||||
|
||||
/*
|
||||
* Define this if you wish to ignore the case of the first character of
|
||||
* the user id when disallowing mixed case. This allows PC users to
|
||||
* enter the more intuitive first name with the first letter capitalised
|
||||
*/
|
||||
#define IGNORE_CASE_FIRST_CHAR
|
||||
#define HOSTILENAME /* */
|
||||
|
||||
/*
|
||||
** Nick flood limit
|
||||
@@ -180,7 +156,19 @@
|
||||
** Define NICK_DELAY if you want this feature.
|
||||
*/
|
||||
|
||||
#define NICK_DELAY 15 /* recommended value 15 */
|
||||
#define NICK_DELAY 15 /* recommended value 15 */
|
||||
|
||||
/*
|
||||
** Freelinks garbage collector -Stskeeps
|
||||
**
|
||||
** GARBAGE_COLLECT_EVERY - how many seconds between every garbage collect
|
||||
** HOW_MANY_FREELINKS_ALLOWED - how many freelinks allowed
|
||||
*/
|
||||
#ifndef GARBAGE_COLLECT_EVERY
|
||||
#define GARBAGE_COLLECT_EVERY 600 /* default: 600 (10 mins) */
|
||||
#endif
|
||||
|
||||
#define HOW_MANY_FREELINKS_ALLOWED 200 /* default: 200 */
|
||||
|
||||
/*
|
||||
* Define this if you wish to output a *file* to a K lined client rather
|
||||
@@ -191,9 +179,9 @@
|
||||
|
||||
/* Do these work? I dunno... */
|
||||
|
||||
/* #undef VMS /* Should work for IRC client, not server */
|
||||
/* #undef MAIL50 /* If you're running VMS 5.0 */
|
||||
/* #undef PCS /* PCS Cadmus MUNIX, use with BSD flag! */
|
||||
/* #undef VMS Should work for IRC client, not server */
|
||||
/* #undef MAIL50 If you're running VMS 5.0 */
|
||||
/* #undef PCS PCS Cadmus MUNIX, use with BSD flag! */
|
||||
|
||||
/*
|
||||
* NOTE: On some systems, valloc() causes many problems.
|
||||
@@ -221,13 +209,14 @@
|
||||
* the maintainer.
|
||||
*/
|
||||
|
||||
/* #undef DEBUGMODE /* define DEBUGMODE to enable debugging mode.*/
|
||||
/* #undef DEBUGMODE define DEBUGMODE to enable debugging mode.*/
|
||||
|
||||
/* We not check whether this is ok at compile time -- codemastr */
|
||||
/*
|
||||
* defining FORCE_CORE will automatically "unlimit core", forcing the
|
||||
* server to dump a core file whenever it has a fatal error. -mlv
|
||||
*/
|
||||
#define FORCE_CORE
|
||||
/* #define FORCE_CORE */
|
||||
|
||||
/*
|
||||
* Full pathnames and defaults of irc system's support files. Please note that
|
||||
@@ -236,15 +225,16 @@
|
||||
*/
|
||||
#define CPATH "ircd.conf" /* server configuration file */
|
||||
#define MPATH "ircd.motd" /* server MOTD file */
|
||||
#define RPATH "ircd.rules" /* server rules file */
|
||||
#define RPATH "ircd.rules" /* server rules file */
|
||||
#define ZPATH "ircd.notes" /* server notes */
|
||||
#define ZCONF "networks/unrealircd.conf" /* ircd configuration .. */
|
||||
#define OPATH "oper.motd" /* Operators MOTD file */
|
||||
#define ZCONF "networks/unrealircd.conf" /* ircd configuration .. */
|
||||
#define OPATH "oper.motd" /* Operators MOTD file */
|
||||
#define LPATH "debug.log" /* Where the debug file lives, if DEBUGMODE */
|
||||
#define PPATH "ircd.pid" /* file for server pid */
|
||||
#define lPATH "ircd.log" /* server log file */
|
||||
#define VPATH "ircd.svsmotd" /* Services MOTD append. */
|
||||
#define IRCDTUNE "ircd.tune" /* tuning .. */
|
||||
#define VPATH "ircd.svsmotd" /* Services MOTD append. */
|
||||
#define BPATH "bot.motd" /* Bot MOTD */
|
||||
#define IRCDTUNE "ircd.tune" /* tuning .. */
|
||||
|
||||
/*
|
||||
* Define this filename to maintain a list of persons who log
|
||||
@@ -273,7 +263,7 @@
|
||||
*
|
||||
* You may want to define IRC_UID and IRC_GID
|
||||
*/
|
||||
/* #define CHROOTDIR /* */
|
||||
/* #define CHROOTDIR */
|
||||
|
||||
/* SHOW_INVISIBLE_LUSERS
|
||||
*
|
||||
@@ -284,13 +274,6 @@
|
||||
*/
|
||||
#define SHOW_INVISIBLE_LUSERS
|
||||
|
||||
|
||||
/* OPER_* defines
|
||||
*
|
||||
* See ./docs/example.conf for examples of how to restrict access for
|
||||
* your IRC Operators
|
||||
*/
|
||||
|
||||
/* MAXIMUM LINKS
|
||||
*
|
||||
* This define is useful for leaf nodes and gateways. It keeps you from
|
||||
@@ -329,14 +312,7 @@
|
||||
* starts up the server with a new conf file that has some extra
|
||||
* O-lines. So don't use this unless you're debugging.
|
||||
*/
|
||||
#define CMDLINE_CONFIG /* allow conf-file to be specified on command line */
|
||||
|
||||
/*
|
||||
* To use m4 as a preprocessor on the ircd.conf file, define M4_PREPROC.
|
||||
* The server will then call m4 each time it reads the ircd.conf file,
|
||||
* reading m4 output as the server's ircd.conf file.
|
||||
*/
|
||||
#undef M4_PREPROC
|
||||
#define CMDLINE_CONFIG /* allow conf-file to be specified on command line */
|
||||
|
||||
/*
|
||||
* If you wish to have the server send 'vital' messages about server
|
||||
@@ -355,11 +331,11 @@
|
||||
* If you use syslog above, you may want to turn some (none) of the
|
||||
* spurious log messages for KILL/SQUIT off.
|
||||
*/
|
||||
#undef SYSLOG_KILL /* log all operator kills to syslog */
|
||||
#undef SYSLOG_SQUIT /* log all remote squits for all servers to syslog */
|
||||
#undef SYSLOG_CONNECT /* log remote connect messages for other all servs */
|
||||
#undef SYSLOG_USERS /* send userlog stuff to syslog */
|
||||
#undef SYSLOG_OPER /* log all users who successfully become an Op */
|
||||
#undef SYSLOG_KILL /* log all operator kills to syslog */
|
||||
#undef SYSLOG_SQUIT /* log all remote squits for all servers to syslog */
|
||||
#undef SYSLOG_CONNECT /* log remote connect messages for other all servs */
|
||||
#undef SYSLOG_USERS /* send userlog stuff to syslog */
|
||||
#undef SYSLOG_OPER /* log all users who successfully become an Op */
|
||||
|
||||
/*
|
||||
* If you want to log to a different facility than DAEMON, change
|
||||
@@ -368,15 +344,6 @@
|
||||
#define LOG_FACILITY LOG_DAEMON
|
||||
#endif /* USE_SYSLOG */
|
||||
|
||||
/*
|
||||
* IDLE_FROM_MSG
|
||||
*
|
||||
* Idle-time nullified only from privmsg, if undefined idle-time
|
||||
* is nullified from everything except ping/pong.
|
||||
* Added 3.8.1992, kny@cs.hut.fi (nam)
|
||||
*/
|
||||
#define IDLE_FROM_MSG
|
||||
|
||||
/*
|
||||
* Size of the LISTEN request. Some machines handle this large
|
||||
* without problem, but not all. It defaults to 5, but can be
|
||||
@@ -407,8 +374,27 @@
|
||||
* define IRC_UID to that UID. This should only be defined if you are running
|
||||
* as root and even then perhaps not.
|
||||
*/
|
||||
/* #undef IRC_UID /* */
|
||||
/* #undef IRC_GID /* */
|
||||
|
||||
/*
|
||||
* Ok this one is being changed. it is advisable never to run anything that
|
||||
* uses sockets etc. and has the potential for the outside world to connect to it
|
||||
* to run as root... Hackers do things like buffer overruns, and get dumped on
|
||||
* a shell with root access effectivley ... so DONT do it.. if a program uses a
|
||||
* port <1024 it will run as root, once the program has binded to the socket it
|
||||
* will set its uid to something OTHER than root ... you set that in unrealircd.conf
|
||||
*
|
||||
* If you _must_ insist on running as root and not wanting the program to change its
|
||||
* UID, then define BIG_SECURITY_HOLE below
|
||||
*/
|
||||
#if !defined(_WIN32)
|
||||
/* Change This Line Below \/ */
|
||||
#define BIG_SECURITY_HOLE
|
||||
/* Its the one above ^^^^^^^ */
|
||||
#ifndef BIG_SECURITY_HOLE
|
||||
#define IRC_UID un_uid
|
||||
#define IRC_GID un_gid
|
||||
#endif
|
||||
#endif
|
||||
|
||||
/*
|
||||
* CLIENT_FLOOD
|
||||
@@ -419,10 +405,6 @@
|
||||
*/
|
||||
#define CLIENT_FLOOD 8000
|
||||
|
||||
/* Define this if you want the server to accomplish ircII standard */
|
||||
/* Sends an extra NOTICE in the beginning of client connection */
|
||||
#undef IRCII_KLUDGE
|
||||
|
||||
/*
|
||||
* Define your network service names here.
|
||||
*/
|
||||
@@ -432,7 +414,8 @@
|
||||
#define OperServ "OperServ"
|
||||
#define HelpServ "HelpServ"
|
||||
#define StatServ "StatServ"
|
||||
|
||||
#define InfoServ "InfoServ"
|
||||
#define BotServ "BotServ"
|
||||
/*
|
||||
* How many seconds in between simultaneous nick changes?
|
||||
*/
|
||||
@@ -470,9 +453,6 @@
|
||||
*/
|
||||
#define SOCKSPORT 6013
|
||||
|
||||
/* Define default Z:line time for SOCKS -taz */
|
||||
#define ZLINE_TIME 300
|
||||
|
||||
/* STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP STOP */
|
||||
|
||||
/* You shouldn't change anything below this line, unless absolutely needed. */
|
||||
@@ -481,7 +461,7 @@
|
||||
* Port where ircd resides. NOTE: This *MUST* be greater than 1024 if you
|
||||
* plan to run ircd under any other uid than root.
|
||||
*/
|
||||
#define PORTNUM 6667 /* 6667 is default */
|
||||
#define PORTNUM 6667 /* 6667 is default */
|
||||
|
||||
/*
|
||||
* Maximum number of network connections your server will allow. This should
|
||||
@@ -522,7 +502,7 @@
|
||||
* chasing possible for mode and kick.
|
||||
*/
|
||||
#ifndef NICKNAMEHISTORYLENGTH
|
||||
#define NICKNAMEHISTORYLENGTH 2000
|
||||
#define NICKNAMEHISTORYLENGTH 2000
|
||||
#endif
|
||||
|
||||
/*
|
||||
@@ -568,27 +548,13 @@
|
||||
* CONNECTTIMEOUT - 10 seconds for its host to respond to an ident lookup
|
||||
* query and for a DNS answer to be retrieved.
|
||||
*/
|
||||
#define CONNECTTIMEOUT 90 /* Recommended value: 90 */
|
||||
#define CONNECTTIMEOUT 30 /* Recommended value: 60 */
|
||||
|
||||
/*
|
||||
* Max time from the nickname change that still causes KILL
|
||||
* automaticly to switch for the current nick of that user. (seconds)
|
||||
*/
|
||||
#define KILLCHASETIMELIMIT 90 /* Recommended value: 90 */
|
||||
|
||||
/*
|
||||
* Max number of channels a user is allowed to join.
|
||||
*/
|
||||
#define MAXCHANNELSPERUSER 10 /* Recommended value: 10 */
|
||||
|
||||
/*
|
||||
* SendQ-Always causes the server to put all outbound data into the sendq and
|
||||
* flushing the sendq at the end of input processing. This should cause more
|
||||
* efficient write's to be made to the network.
|
||||
* There *shouldn't* be any problems with this method.
|
||||
* -avalon
|
||||
*/
|
||||
#define SENDQ_ALWAYS
|
||||
#define KILLCHASETIMELIMIT 90 /* Recommended value: 90 */
|
||||
|
||||
/* ------------------------- END CONFIGURATION SECTION -------------------- */
|
||||
#define MOTD MPATH
|
||||
@@ -609,11 +575,6 @@
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#ifdef _SEQUENT_ /* Dynix 1.4 or 2.0 Generic Define.. */
|
||||
#undef BSD
|
||||
#define SYSV /* Also #define SYSV */
|
||||
#endif
|
||||
|
||||
#ifdef ultrix
|
||||
#define ULTRIX
|
||||
#endif
|
||||
@@ -634,7 +595,7 @@
|
||||
#endif
|
||||
|
||||
#ifdef DEBUGMODE
|
||||
extern void debug();
|
||||
extern void debug();
|
||||
# define Debug(x) debug x
|
||||
# define LOGFILE LPATH
|
||||
#else
|
||||
@@ -646,9 +607,7 @@ extern void debug();
|
||||
# endif
|
||||
#endif
|
||||
|
||||
#ifndef ENABLE_SUMMON
|
||||
# undef LEAST_IDLE
|
||||
#endif
|
||||
|
||||
#if defined(mips) || defined(PCS)
|
||||
#undef SYSV
|
||||
@@ -656,71 +615,57 @@ extern void debug();
|
||||
|
||||
#ifdef MIPS
|
||||
#undef BSD
|
||||
#define BSD 1 /* mips only works in bsd43 environment */
|
||||
#endif
|
||||
|
||||
#ifdef sequent /* Dynix (sequent OS) */
|
||||
#define SEQ_NOFILE 128 /* set to your current kernel impl, */
|
||||
#endif /* max number of socket connections */
|
||||
|
||||
#ifdef _SEQUENT_
|
||||
#define DYNIXPTX
|
||||
#define BSD 1 /* mips only works in bsd43 environment */
|
||||
#endif
|
||||
|
||||
#ifdef BSD_RELIABLE_SIGNALS
|
||||
# if defined(SYSV_UNRELIABLE_SIGNALS) || defined(POSIX_SIGNALS)
|
||||
error You stuffed up config.h signals #defines use only one.
|
||||
error You stuffed up config.h signals
|
||||
#defines use only one.
|
||||
# endif
|
||||
#define HAVE_RELIABLE_SIGNALS
|
||||
#endif
|
||||
|
||||
#ifdef SYSV_UNRELIABLE_SIGNALS
|
||||
# ifdef POSIX_SIGNALS
|
||||
error You stuffed up config.h signals #defines use only one.
|
||||
error You stuffed up config.h signals
|
||||
#defines use only one.
|
||||
# endif
|
||||
#undef HAVE_RELIABLE_SIGNALS
|
||||
#endif
|
||||
|
||||
#ifdef POSIX_SIGNALS
|
||||
#define HAVE_RELIABLE_SIGNALS
|
||||
#endif
|
||||
|
||||
/*
|
||||
* safety margin so we can always have one spare fd, for motd/authd or
|
||||
* whatever else. -4 allows "safety" margin of 1 and space reserved.
|
||||
*/
|
||||
#define MAXCLIENTS (MAXCONNECTIONS-4)
|
||||
|
||||
#ifdef HAVECURSES
|
||||
# define DOCURSES
|
||||
#else
|
||||
# undef DOCURSES
|
||||
#endif
|
||||
|
||||
#ifdef HAVETERMCAP
|
||||
# define DOTERMCAP
|
||||
#else
|
||||
# undef DOTERMCAP
|
||||
#endif
|
||||
|
||||
# define stricmp strcasecmp
|
||||
# define strnicmp strncasecmp
|
||||
|
||||
#if defined(CLIENT_FLOOD)
|
||||
# if (CLIENT_FLOOD > 8000)
|
||||
# define CLIENT_FLOOD 8000
|
||||
# else
|
||||
# if (CLIENT_FLOOD < 512)
|
||||
error CLIENT_FLOOD needs redefining.
|
||||
error CLIENT_FLOOD needs redefining.
|
||||
# endif
|
||||
# endif
|
||||
#else
|
||||
error CLIENT_FLOOD undefined
|
||||
error CLIENT_FLOOD undefined
|
||||
#endif
|
||||
#if (NICKNAMEHISTORYLENGTH < 100)
|
||||
# define NICKNAMEHISTORYLENGTH 100
|
||||
#endif
|
||||
|
||||
/*
|
||||
* Some ugliness for AIX platforms.
|
||||
*/
|
||||
@@ -737,7 +682,12 @@ error CLIENT_FLOOD undefined
|
||||
*/
|
||||
# define BSD_INCLUDES
|
||||
#endif
|
||||
|
||||
/*
|
||||
* This is just to make Solaris porting easier -- codemastr
|
||||
*/
|
||||
#if defined(SOL20) || defined(SOL25) || defined(SOL26) || defined(SOL27)
|
||||
#define _SOLARIS
|
||||
#endif
|
||||
/*
|
||||
* Cleaup for WIN32 platform.
|
||||
*/
|
||||
@@ -756,7 +706,4 @@ error CLIENT_FLOOD undefined
|
||||
#define Reg8 register
|
||||
#define Reg9 register
|
||||
#define Reg10 register
|
||||
|
||||
#endif /* __config_include__ */
|
||||
|
||||
|
||||
#endif /* __config_include__ */
|
||||
|
||||
+21
-33
@@ -1,5 +1,5 @@
|
||||
/************************************************************************
|
||||
* IRC - Internet Relay Chat, include/dbuf.h
|
||||
* Unreal Internet Relay Chat Daemon, include/dbuf.h
|
||||
* Copyright (C) 1990 Markku Savela
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
@@ -45,25 +45,14 @@
|
||||
** implementation of this package without changing the
|
||||
** interface.
|
||||
*/
|
||||
#if !defined(_SEQUENT_)
|
||||
typedef struct dbuf
|
||||
{
|
||||
u_int length; /* Current number of bytes stored */
|
||||
u_int offset; /* Offset to the first byte */
|
||||
struct dbufbuf *head; /* First data buffer, if length > 0 */
|
||||
typedef struct dbuf {
|
||||
u_int length; /* Current number of bytes stored */
|
||||
u_int offset; /* Offset to the first byte */
|
||||
struct dbufbuf *head; /* First data buffer, if length > 0 */
|
||||
/* added by mnystrom@mit.edu: */
|
||||
struct dbufbuf *tail; /* last data buffer, if length > 0 */
|
||||
} dbuf;
|
||||
#else
|
||||
typedef struct dbuf
|
||||
{
|
||||
uint length; /* Current number of bytes stored */
|
||||
uint offset; /* Offset to the first byte */
|
||||
struct dbufbuf *head; /* First data buffer, if length > 0 */
|
||||
/* added by mnystrom@mit.edu: */
|
||||
struct dbufbuf *tail; /* last data buffer, if length > 0 */
|
||||
} dbuf;
|
||||
#endif
|
||||
struct dbufbuf *tail; /* last data buffer, if length > 0 */
|
||||
} dbuf;
|
||||
|
||||
/*
|
||||
** And this 'dbufbuf' should never be referenced outside the
|
||||
** implementation of 'dbuf'--would be "hidden" if C had such
|
||||
@@ -73,11 +62,10 @@ typedef struct dbuf
|
||||
** as long as a pointer is 4 bytes, we get 2032 bytes for buffer
|
||||
** data after we take away a bit for malloc to play with. -avalon
|
||||
*/
|
||||
typedef struct dbufbuf
|
||||
{
|
||||
struct dbufbuf *next; /* Next data buffer, NULL if this is last */
|
||||
char data[2032]; /* Actual data stored here */
|
||||
} dbufbuf;
|
||||
typedef struct dbufbuf {
|
||||
struct dbufbuf *next; /* Next data buffer, NULL if this is last */
|
||||
char data[2032]; /* Actual data stored here */
|
||||
} dbufbuf;
|
||||
|
||||
/*
|
||||
** dbuf_put
|
||||
@@ -88,10 +76,10 @@ typedef struct dbufbuf
|
||||
** returns > 0, if operation successfull
|
||||
** < 0, if failed (due memory allocation problem)
|
||||
*/
|
||||
int dbuf_put PROTO((dbuf *, char *, int));
|
||||
int dbuf_put PROTO((dbuf *, char *, int));
|
||||
/* Dynamic buffer header */
|
||||
/* Pointer to data to be stored */
|
||||
/* Number of bytes to store */
|
||||
/* Pointer to data to be stored */
|
||||
/* Number of bytes to store */
|
||||
|
||||
/*
|
||||
** dbuf_get
|
||||
@@ -108,10 +96,10 @@ int dbuf_put PROTO((dbuf *, char *, int));
|
||||
** Negative return values indicate some unspecified
|
||||
** error condition, rather fatal...
|
||||
*/
|
||||
int dbuf_get PROTO(( dbuf *, char *, int));
|
||||
int dbuf_get PROTO((dbuf *, char *, int));
|
||||
/* Dynamic buffer header */
|
||||
/* Pointer to buffer to receive the data */
|
||||
/* Max amount of bytes that can be received */
|
||||
/* Pointer to buffer to receive the data */
|
||||
/* Max amount of bytes that can be received */
|
||||
|
||||
/*
|
||||
** dbuf_map, dbuf_delete
|
||||
@@ -138,8 +126,8 @@ int dbuf_get PROTO(( dbuf *, char *, int));
|
||||
** between map and delete functions...
|
||||
*/
|
||||
char *dbuf_map PROTO((dbuf *, int *));
|
||||
/* Dynamic buffer header */
|
||||
/* Return number of bytes accessible */
|
||||
/* Dynamic buffer header */
|
||||
/* Return number of bytes accessible */
|
||||
|
||||
int dbuf_delete PROTO((dbuf *, int));
|
||||
/* Dynamic buffer header */
|
||||
@@ -160,6 +148,6 @@ int dbuf_delete PROTO((dbuf *, int));
|
||||
*/
|
||||
#define DBufClear(dyn) dbuf_delete((dyn),DBufLength(dyn))
|
||||
|
||||
extern int dbuf_getmsg PROTO((dbuf *, char *, int));
|
||||
extern int dbuf_getmsg PROTO((dbuf *, char *, int));
|
||||
|
||||
#endif /* __dbuf_include__ */
|
||||
|
||||
+69
-47
@@ -1,5 +1,5 @@
|
||||
/************************************************************************
|
||||
* IRC - Internet Relay Chat, include/dynconf.h
|
||||
* Unreal Internet Relay Chat Daemon, include/dynconf.h
|
||||
* Copyright (C) 1999 Carsten Munk
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
@@ -21,68 +21,91 @@
|
||||
|
||||
|
||||
#define DYNCONF_H
|
||||
typedef struct zNetwork aNetwork;
|
||||
struct zNetwork {
|
||||
char *x_ircnetwork;
|
||||
char *x_defserv;
|
||||
char *x_services_name;
|
||||
char *x_oper_host;
|
||||
char *x_admin_host;
|
||||
char *x_locop_host;
|
||||
char *x_sadmin_host;
|
||||
char *x_netadmin_host;
|
||||
char *x_coadmin_host;
|
||||
char *x_techadmin_host;
|
||||
char *x_hidden_host;
|
||||
char *x_netdomain;
|
||||
char *x_helpchan;
|
||||
char *x_stats_server;
|
||||
int x_halfhub;
|
||||
int x_inah;
|
||||
char *x_net_quit;
|
||||
int x_se;
|
||||
|
||||
/* config level */
|
||||
#define DYNCONF_CONF_VERSION "1.6"
|
||||
#define DYNCONF_NETWORK_VERSION "2.3"
|
||||
|
||||
typedef struct zNetwork aNetwork;
|
||||
struct zNetwork {
|
||||
unsigned x_inah:1;
|
||||
char *x_ircnetwork;
|
||||
char *x_defserv;
|
||||
char *x_services_name;
|
||||
char *x_oper_host;
|
||||
char *x_admin_host;
|
||||
char *x_locop_host;
|
||||
char *x_sadmin_host;
|
||||
char *x_netadmin_host;
|
||||
char *x_coadmin_host;
|
||||
char *x_hidden_host;
|
||||
char *x_netdomain;
|
||||
char *x_helpchan;
|
||||
char *x_stats_server;
|
||||
};
|
||||
|
||||
typedef struct zConfiguration aConfiguration;
|
||||
struct zConfiguration {
|
||||
long nospoof_seed01;
|
||||
long nospoof_seed02;
|
||||
char *kline_address;
|
||||
char *include;
|
||||
char *domainname;
|
||||
char *domainmask; /* '*' + domainname */
|
||||
int som;
|
||||
int mode_x;
|
||||
int mode_i;
|
||||
int truehub;
|
||||
int stop;
|
||||
int showopers;
|
||||
int killdiff;
|
||||
int hide_ulines;
|
||||
int allow_chatops;
|
||||
int socksbantime;
|
||||
char *socksbanmessage;
|
||||
char *socksquitmessage;
|
||||
aNetwork network;
|
||||
struct zConfiguration {
|
||||
unsigned som:1;
|
||||
unsigned mode_x:1;
|
||||
unsigned mode_i:1;
|
||||
unsigned mode_stripbadwords:1;
|
||||
unsigned truehub:1;
|
||||
unsigned stop:1;
|
||||
unsigned showopers:1;
|
||||
unsigned killdiff:1;
|
||||
unsigned hide_ulines:1;
|
||||
unsigned allow_chatops:1;
|
||||
unsigned webtv_support:1;
|
||||
unsigned no_oper_hiding:1;
|
||||
/* long nospoof_seed01;
|
||||
long nospoof_seed02; */
|
||||
long host_timeout;
|
||||
int host_retries;
|
||||
int exempt_all;
|
||||
char *kline_address;
|
||||
char *include;
|
||||
char *domainname;
|
||||
char *domainmask; /* '*' + domainname */
|
||||
char *auto_join_chans;
|
||||
char *oper_auto_join_chans;
|
||||
int socksbantime;
|
||||
int maxchannelsperuser;
|
||||
char *socksbanmessage;
|
||||
char *socksquitmessage;
|
||||
long ckey_1;
|
||||
long ckey_2;
|
||||
long ckey_3;
|
||||
aNetwork network;
|
||||
};
|
||||
|
||||
#ifndef DYNCONF_C
|
||||
extern aConfiguration iConf;
|
||||
extern aConfiguration iConf;
|
||||
#endif
|
||||
|
||||
// #define NOSPOOF_SEED01 iConf.nospoof_seed01
|
||||
// #define NOSPOOF_SEED02 iConf.nospoof_seed02
|
||||
#define KLINE_ADDRESS iConf.kline_address
|
||||
#define INCLUDE iConf.include
|
||||
#define DOMAINNAMEMASK "*" DOMAINNAME
|
||||
#define MODE_X iConf.mode_x
|
||||
#define MODE_I iConf.mode_i
|
||||
#define MODE_STRIPWORDS iConf.mode_stripbadwords
|
||||
#define TRUEHUB iConf.truehub
|
||||
#define SHOWOPERS iConf.showopers
|
||||
#define KILLDIFF iConf.killdiff
|
||||
#define SHOWOPERMOTD iConf.som
|
||||
#define HIDE_ULINES iConf.hide_ulines
|
||||
#define ALLOW_CHATOPS iConf.allow_chatops
|
||||
#define ALLOW_CHATOPS iConf.allow_chatops
|
||||
#define MAXCHANNELSPERUSER iConf.maxchannelsperuser
|
||||
#define WEBTV_SUPPORT iConf.webtv_support
|
||||
#define NO_OPER_HIDING iConf.no_oper_hiding
|
||||
#define AUTO_JOIN_CHANS iConf.auto_join_chans
|
||||
#define OPER_AUTO_JOIN_CHANS iConf.oper_auto_join_chans
|
||||
#define HOST_TIMEOUT iConf.host_timeout
|
||||
#define EXEMPT_ALL iConf.exempt_all
|
||||
#define HOST_RETRIES iConf.host_retries
|
||||
#define CLOAK_KEY1 iConf.ckey_1
|
||||
#define CLOAK_KEY2 iConf.ckey_2
|
||||
#define CLOAK_KEY3 iConf.ckey_3
|
||||
|
||||
#define ircnetwork iConf.network.x_ircnetwork
|
||||
#define defserv iConf.network.x_defserv
|
||||
@@ -93,11 +116,10 @@ extern aConfiguration iConf;
|
||||
#define sadmin_host iConf.network.x_sadmin_host
|
||||
#define netadmin_host iConf.network.x_netadmin_host
|
||||
#define coadmin_host iConf.network.x_coadmin_host
|
||||
#define techadmin_host iConf.network.x_techadmin_host
|
||||
#define hidden_host iConf.network.x_hidden_host
|
||||
#define netdomain iConf.network.x_netdomain
|
||||
#define helpchan iConf.network.x_helpchan
|
||||
#define STATS_SERVER iConf.network.x_stats_server
|
||||
#define iNAH iConf.network.x_inah
|
||||
#define net_quit iConf.network.x_net_quit
|
||||
#define STOPSE iConf.network.x_se
|
||||
#define STOPSE iConf.network.x_se
|
||||
|
||||
+7
-7
@@ -4,21 +4,21 @@
|
||||
/* $Id$ */
|
||||
|
||||
typedef struct fdstruct {
|
||||
int entry[MAXCONNECTIONS + 2];
|
||||
int last_entry;
|
||||
int entry[MAXCONNECTIONS + 2];
|
||||
int last_entry;
|
||||
} fdlist;
|
||||
|
||||
void addto_fdlist(int a, fdlist * b);
|
||||
void delfrom_fdlist(int a, fdlist * b);
|
||||
void init_fdlist(fdlist * b);
|
||||
void addto_fdlist(int a, fdlist * b);
|
||||
void delfrom_fdlist(int a, fdlist * b);
|
||||
void init_fdlist(fdlist * b);
|
||||
|
||||
#ifndef TRUE
|
||||
#define TRUE 1
|
||||
#endif
|
||||
|
||||
|
||||
#define LOADCFREQ 5
|
||||
#define LOADRECV 35
|
||||
#define FDLISTCHKFREQ 2
|
||||
#define FDLISTCHKFREQ 2
|
||||
|
||||
#endif /*
|
||||
* _IRCD_DOG3_FDLIST
|
||||
|
||||
+241
-228
@@ -1,5 +1,5 @@
|
||||
/************************************************************************
|
||||
* IRC - Internet Relay Chat, include/h.h
|
||||
* Unreal Internet Relay Chat Daemon, include/h.h
|
||||
* Copyright (C) 1992 Darren Reed
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
@@ -29,20 +29,24 @@
|
||||
#include "fdlist.h"
|
||||
#endif
|
||||
|
||||
extern time_t nextconnect, nextdnscheck, nextping;
|
||||
extern aClient *client, me, *local[];
|
||||
extern aChannel *channel;
|
||||
extern struct stats *ircstp;
|
||||
extern int bootopt;
|
||||
extern time_t TSoffset;
|
||||
/* for the new s_err.c */
|
||||
extern char *getreply(int);
|
||||
#define rpl_str(x) getreply(x)
|
||||
#define err_str(x) getreply(x)
|
||||
|
||||
extern TS nextconnect, nextdnscheck, nextping;
|
||||
extern aClient *client, me, *local[];
|
||||
extern aChannel *channel;
|
||||
extern struct stats *ircstp;
|
||||
extern int bootopt;
|
||||
extern TS TSoffset;
|
||||
/* Prototype added to force errors -- Barubary */
|
||||
extern time_t check_pings(time_t now, int check_kills);
|
||||
extern TS check_pings(TS now);
|
||||
extern TS TS2ts(char *s);
|
||||
|
||||
/* Remmed out for win32 compatibility.. as stated of 467leaf win32 port.. */
|
||||
|
||||
#ifdef _WIN32
|
||||
// extern void *hCio;
|
||||
#endif
|
||||
extern LoopStruct loop;
|
||||
|
||||
#ifdef SHOWCONNECTINFO
|
||||
|
||||
@@ -61,278 +65,287 @@ extern time_t check_pings(time_t now, int check_kills);
|
||||
#define BREPORT_FAIL_ID "NOTICE AUTH :*** No ident response; username prefixed with ~\r\n"
|
||||
|
||||
extern char REPORT_DO_DNS[128], REPORT_FIN_DNS[128], REPORT_FIN_DNSC[128],
|
||||
REPORT_FAIL_DNS[128], REPORT_DO_ID[128], REPORT_FIN_ID[128],
|
||||
REPORT_FAIL_ID[128];
|
||||
REPORT_FAIL_DNS[128], REPORT_DO_ID[128], REPORT_FIN_ID[128],
|
||||
REPORT_FAIL_ID[128];
|
||||
#ifdef SOCKSPORT
|
||||
extern char REPORT_DO_SOCKS[128], REPORT_GOOD_SOCKS[128],
|
||||
REPORT_NO_SOCKS[128];
|
||||
extern char REPORT_DO_SOCKS[128], REPORT_GOOD_SOCKS[128], REPORT_NO_SOCKS[128];
|
||||
#endif
|
||||
|
||||
extern int R_do_dns, R_fin_dns, R_fin_dnsc, R_fail_dns,
|
||||
R_do_id, R_fin_id, R_fail_id;
|
||||
R_do_id, R_fin_id, R_fail_id;
|
||||
#ifdef SOCKSPORT
|
||||
extern int R_do_socks,
|
||||
R_good_socks, R_no_socks;
|
||||
extern int R_do_socks, R_good_socks, R_no_socks;
|
||||
#endif
|
||||
|
||||
#endif
|
||||
extern aChannel *find_channel PROTO((char *, aChannel *));
|
||||
extern void remove_user_from_channel PROTO((aClient *, aChannel *));
|
||||
extern aChannel *find_channel PROTO((char *, aChannel *));
|
||||
extern void remove_user_from_channel PROTO((aClient *, aChannel *));
|
||||
extern char *base64enc PROTO((long));
|
||||
extern long base64dec PROTO((char *));
|
||||
extern void add_server_to_table PROTO((aClient *));
|
||||
extern void remove_server_from_tabel PROTO((aClient *));
|
||||
|
||||
/* for services */
|
||||
extern void del_invite PROTO((aClient *, aChannel *));
|
||||
extern int del_silence PROTO((aClient *, char *));
|
||||
extern void send_user_joins PROTO((aClient *, aClient *));
|
||||
extern void clean_channelname PROTO((char *));
|
||||
extern int do_nick_name PROTO((char *));
|
||||
extern int can_send PROTO((aClient *, aChannel *, char *));
|
||||
extern int is_chan_op PROTO((aClient *, aChannel *));
|
||||
extern int is_zombie PROTO((aClient *, aChannel *));
|
||||
extern int has_voice PROTO((aClient *, aChannel *));
|
||||
extern int is_chanowner PROTO((aClient *, aChannel *));
|
||||
extern int count_channels PROTO((aClient *));
|
||||
extern Ban *is_banned PROTO((aClient *, aClient *, aChannel *));
|
||||
extern int parse_help PROTO((aClient *, char *, char *));
|
||||
extern void del_invite PROTO((aClient *, aChannel *));
|
||||
extern int del_silence PROTO((aClient *, char *));
|
||||
extern void send_user_joins PROTO((aClient *, aClient *));
|
||||
extern void clean_channelname PROTO((char *));
|
||||
extern int do_nick_name PROTO((char *));
|
||||
extern int can_send PROTO((aClient *, aChannel *, char *));
|
||||
extern int is_chan_op PROTO((aClient *, aChannel *));
|
||||
extern int has_voice PROTO((aClient *, aChannel *));
|
||||
extern int is_chanowner PROTO((aClient *, aChannel *));
|
||||
extern Ban *is_banned PROTO((aClient *, aClient *, aChannel *));
|
||||
extern int parse_help PROTO((aClient *, char *, char *));
|
||||
|
||||
extern void ircd_log PROTO((char *, ...));
|
||||
extern aClient *find_client PROTO((char *, aClient *));
|
||||
extern aClient *find_name PROTO((char *, aClient *));
|
||||
extern aClient *find_nickserv PROTO((char *, aClient *));
|
||||
extern aClient *find_person PROTO((char *, aClient *));
|
||||
extern aClient *find_server PROTO((char *, aClient *));
|
||||
extern aClient *find_service PROTO((char *, aClient *));
|
||||
extern void ircd_log PROTO((char *, ...));
|
||||
extern aClient *find_client PROTO((char *, aClient *));
|
||||
extern aClient *find_name PROTO((char *, aClient *));
|
||||
extern aClient *find_nickserv PROTO((char *, aClient *));
|
||||
extern aClient *find_person PROTO((char *, aClient *));
|
||||
extern aClient *find_server PROTO((char *, aClient *));
|
||||
extern aClient *find_server_quickx PROTO((char *, aClient *));
|
||||
extern aClient *find_service PROTO((char *, aClient *));
|
||||
#define find_server_quick(x) find_server_quickx(x, NULL)
|
||||
extern char *find_or_add PROTO((char *));
|
||||
extern int attach_conf PROTO((aClient *, aConfItem *));
|
||||
extern aConfItem *attach_confs PROTO((aClient *, char *, int));
|
||||
extern aConfItem *attach_confs_host PROTO((aClient *, char *, int));
|
||||
extern int attach_Iline PROTO((aClient *, struct hostent *, char *));
|
||||
extern aConfItem *conf, *find_me PROTO(()), *find_admin PROTO(());
|
||||
extern aConfItem *count_cnlines PROTO((Link *));
|
||||
extern aSqlineItem *sqline;
|
||||
extern void det_confs_butmask PROTO((aClient *, int));
|
||||
extern int detach_conf PROTO((aClient *, aConfItem *));
|
||||
extern aSqlineItem *find_sqline_nick PROTO((char *));
|
||||
extern aSqlineItem *find_sqline_match PROTO((char *));
|
||||
extern aConfItem *det_confs_butone PROTO((aClient *, aConfItem *));
|
||||
extern char *find_diepass();
|
||||
extern char *find_restartpass();
|
||||
extern aConfItem *find_conf PROTO((Link *, char *, int));
|
||||
extern aConfItem *find_conf_exact PROTO((char *, char *, char *, int));
|
||||
extern aConfItem *find_conf_host PROTO((Link *, char *, int));
|
||||
extern aConfItem *find_conf_ip PROTO((Link *, char *, char *, int));
|
||||
extern aConfItem *find_conf_name PROTO((char *, int));
|
||||
extern aConfItem *find_temp_conf_entry PROTO((aConfItem *, u_int));
|
||||
extern aConfItem *find_conf_servern PROTO((char *));
|
||||
extern int find_kill PROTO((aClient *));
|
||||
extern char *find_zap PROTO((aClient *, int));
|
||||
extern int find_restrict PROTO((aClient *));
|
||||
extern int rehash PROTO((aClient *, aClient *, int));
|
||||
extern int initconf PROTO((int));
|
||||
extern void add_temp_conf();
|
||||
extern void inittoken PROTO(());
|
||||
extern void reset_help PROTO(());
|
||||
extern int find_exception(char *); /* hidden host */
|
||||
|
||||
extern int attach_conf PROTO((aClient *, aConfItem *));
|
||||
extern aConfItem *attach_confs PROTO((aClient*, char *, int));
|
||||
extern aConfItem *attach_confs_host PROTO((aClient*, char *, int));
|
||||
extern int attach_Iline PROTO((aClient *, struct hostent *, char *));
|
||||
extern aConfItem *conf, *find_me PROTO(()), *find_admin PROTO(());
|
||||
extern aConfItem *count_cnlines PROTO((Link *));
|
||||
extern aSqlineItem *sqline;
|
||||
extern void det_confs_butmask PROTO((aClient *, int));
|
||||
extern int detach_conf PROTO((aClient *, aConfItem *));
|
||||
extern aSqlineItem *find_sqline_nick PROTO((char *));
|
||||
extern aSqlineItem *find_sqline_match PROTO((char *));
|
||||
extern aConfItem *det_confs_butone PROTO((aClient *, aConfItem *));
|
||||
extern char *find_diepass();
|
||||
extern char *find_restartpass();
|
||||
extern aConfItem *find_conf PROTO((Link *, char*, int));
|
||||
extern aConfItem *find_conf_exact PROTO((char *, char *, char *, int));
|
||||
extern aConfItem *find_conf_host PROTO((Link *, char *, int));
|
||||
extern aConfItem *find_conf_ip PROTO((Link *, char *, char *, int));
|
||||
extern aConfItem *find_conf_name PROTO((char *, int));
|
||||
extern aConfItem *find_temp_conf_entry PROTO((aConfItem *, u_int));
|
||||
extern aConfItem *find_conf_servern PROTO((char *));
|
||||
extern int find_kill PROTO((aClient *));
|
||||
extern char *find_zap PROTO((aClient *, int));
|
||||
extern int find_restrict PROTO((aClient *));
|
||||
extern int rehash PROTO((aClient *, aClient *, int));
|
||||
extern int initconf PROTO((int));
|
||||
extern void add_temp_conf();
|
||||
extern void inittoken PROTO(());
|
||||
extern void reset_help PROTO(());
|
||||
extern int find_exception(char *); /* hidden host */
|
||||
|
||||
extern char *MyMalloc PROTO((int)), *MyRealloc PROTO((char *, int));
|
||||
extern char *debugmode, *configfile, *sbrk0;
|
||||
extern char *getfield PROTO((char *));
|
||||
extern void get_sockhost PROTO((aClient *, char *));
|
||||
extern char *rpl_str PROTO((int)), *err_str PROTO((int));
|
||||
extern char *strerror PROTO((int));
|
||||
extern int dgets PROTO((int, char *, int));
|
||||
extern char *inetntoa PROTO((char *));
|
||||
#ifndef DMALLOC
|
||||
extern char *MyMalloc PROTO((int)), *MyRealloc PROTO((char *, int));
|
||||
#endif
|
||||
extern char *debugmode, *configfile, *sbrk0;
|
||||
extern char *getfield PROTO((char *));
|
||||
extern void get_sockhost PROTO((aClient *, char *));
|
||||
extern char *strerror PROTO((int));
|
||||
extern int dgets PROTO((int, char *, int));
|
||||
extern char *inetntoa PROTO((char *));
|
||||
|
||||
#ifdef _WIN32
|
||||
extern int dbufalloc, dbufblocks, debuglevel;
|
||||
extern int dbufalloc, dbufblocks, debuglevel;
|
||||
#else
|
||||
extern int dbufalloc, dbufblocks, debuglevel, errno, h_errno;
|
||||
extern int dbufalloc, dbufblocks, debuglevel, errno, h_errno;
|
||||
#endif
|
||||
extern int highest_fd, debuglevel, portnum, debugtty, maxusersperchannel;
|
||||
extern int readcalls, udpfd, resfd;
|
||||
extern aClient *add_connection PROTO((aClient *, int));
|
||||
extern int add_listener PROTO((aConfItem *));
|
||||
extern void add_local_domain PROTO((char *, int));
|
||||
extern int check_client PROTO((aClient *));
|
||||
extern int check_server PROTO((aClient *, struct hostent *, \
|
||||
aConfItem *, aConfItem *, int));
|
||||
extern int check_server_init PROTO((aClient *));
|
||||
extern void close_connection PROTO((aClient *));
|
||||
extern void close_listeners PROTO(());
|
||||
extern int connect_server PROTO((aConfItem *, aClient *, struct hostent *));
|
||||
extern void get_my_name PROTO((aClient *, char *, int));
|
||||
extern int get_sockerr PROTO((aClient *));
|
||||
extern int inetport PROTO((aClient *, char *, int));
|
||||
extern void init_sys PROTO(());
|
||||
extern int highest_fd, debuglevel, portnum, debugtty, maxusersperchannel;
|
||||
extern int readcalls, udpfd, resfd;
|
||||
extern aClient *add_connection PROTO((aClient *, int));
|
||||
extern int add_listener PROTO((aConfItem *));
|
||||
extern void add_local_domain PROTO((char *, int));
|
||||
extern int check_client PROTO((aClient *));
|
||||
extern int check_server PROTO((aClient *, struct hostent *, aConfItem *,
|
||||
aConfItem *, int));
|
||||
extern int check_server_init PROTO((aClient *));
|
||||
extern void close_connection PROTO((aClient *));
|
||||
extern void close_listeners PROTO(());
|
||||
extern int connect_server PROTO((aConfItem *, aClient *, struct hostent *));
|
||||
extern void get_my_name PROTO((aClient *, char *, int));
|
||||
extern int get_sockerr PROTO((aClient *));
|
||||
extern int inetport PROTO((aClient *, char *, int));
|
||||
extern void init_sys PROTO(());
|
||||
|
||||
#ifdef NO_FDLIST
|
||||
extern int read_message PROTO((time_t));
|
||||
extern int read_message PROTO((TS));
|
||||
#else
|
||||
extern int read_message PROTO((time_t, fdlist *));
|
||||
extern int read_message PROTO((TS, fdlist *));
|
||||
#endif
|
||||
|
||||
extern void report_error PROTO((char *, aClient *));
|
||||
extern void set_non_blocking PROTO((int, aClient *));
|
||||
extern int setup_ping PROTO(());
|
||||
extern void summon PROTO((aClient *, char *, char *, char *));
|
||||
extern int unixport PROTO((aClient *, char *, int));
|
||||
extern int utmp_open PROTO(());
|
||||
extern int utmp_read PROTO((int, char *, char *, char *, int));
|
||||
extern int utmp_close PROTO((int));
|
||||
extern void report_error PROTO((char *, aClient *));
|
||||
extern void set_non_blocking PROTO((int, aClient *));
|
||||
extern int setup_ping PROTO(());
|
||||
|
||||
extern void start_auth PROTO((aClient *));
|
||||
extern void read_authports PROTO((aClient *));
|
||||
extern void send_authports PROTO((aClient *));
|
||||
extern void start_auth PROTO((aClient *));
|
||||
extern void read_authports PROTO((aClient *));
|
||||
extern void send_authports PROTO((aClient *));
|
||||
|
||||
#ifdef SOCKSPORT
|
||||
extern void init_socks PROTO((aClient *));
|
||||
extern void start_socks PROTO((aClient *));
|
||||
extern void send_socksquery PROTO((aClient *));
|
||||
extern void read_socks PROTO((aClient *));
|
||||
extern void init_socks PROTO((aClient *));
|
||||
extern void start_socks PROTO((aClient *));
|
||||
extern void send_socksquery PROTO((aClient *));
|
||||
extern void read_socks PROTO((aClient *));
|
||||
#endif
|
||||
|
||||
extern void restart PROTO((char *));
|
||||
extern void send_channel_modes PROTO((aClient *, aChannel *));
|
||||
extern void server_reboot PROTO((char *));
|
||||
extern void terminate PROTO(()), write_pidfile PROTO(());
|
||||
extern void restart PROTO((char *));
|
||||
extern void send_channel_modes PROTO((aClient *, aChannel *));
|
||||
extern void server_reboot PROTO((char *));
|
||||
extern void terminate PROTO(()), write_pidfile PROTO(());
|
||||
|
||||
extern int send_queued PROTO((aClient *));
|
||||
extern int send_queued PROTO((aClient *));
|
||||
/*VARARGS2*/
|
||||
// extern void sendto_one(char *, ...);
|
||||
// extern void sendto_one(char *, ...);
|
||||
/*VARARGS4*/
|
||||
/* i know this is naughty but :P --stskeeps */
|
||||
extern void sendto_channel_butone(aClient *, aClient *, aChannel *, char *, ...);
|
||||
extern void sendto_channelops_butone(aClient *, aClient *, aChannel *, char *, ...);
|
||||
extern void sendto_channelvoice_butone(aClient *, aClient *, aChannel *, char *, ...);
|
||||
extern void sendto_channel_butone(aClient *, aClient *, aChannel *, char *,
|
||||
...);
|
||||
extern void sendto_channelops_butone(aClient *, aClient *, aChannel *,
|
||||
char *, ...);
|
||||
extern void sendto_channelvoice_butone(aClient *, aClient *, aChannel *,
|
||||
char *, ...);
|
||||
/*VARARGS2*/
|
||||
extern void sendto_serv_butone(aClient *, char *, ...);
|
||||
extern void sendto_serv_butone(aClient *, char *, ...);
|
||||
/*VARARGS2*/
|
||||
extern void sendto_serv_butone_quit(aClient *, char *, ...);
|
||||
extern void sendto_serv_butone_sjoin(aClient *, char *, ...);
|
||||
extern void sendto_serv_sjoin(aClient *, char *, ...);
|
||||
extern void sendto_serv_butone_quit(aClient *, char *, ...);
|
||||
extern void sendto_serv_butone_sjoin(aClient *, char *, ...);
|
||||
extern void sendto_serv_sjoin(aClient *, char *, ...);
|
||||
/*VARARGS2*/
|
||||
|
||||
extern void sendto_common_channels(aClient *, char *, ...);
|
||||
extern void sendto_common_channels(aClient *, char *, ...);
|
||||
/*VARARGS3*/
|
||||
extern void sendto_channel_butserv(aChannel *, aClient *, char *, ...);
|
||||
extern void sendto_channel_butserv(aChannel *, aClient *, char *, ...);
|
||||
/*VARARGS3*/
|
||||
extern void sendto_match_servs(aChannel *, aClient *, char *, ...);
|
||||
extern void sendto_match_servs(aChannel *, aClient *, char *, ...);
|
||||
/*VARARGS5*/
|
||||
extern void sendto_match_butone(aClient *, aClient *, char *, int, char *pattern, ...);
|
||||
extern void sendto_match_butone(aClient *, aClient *, char *, int,
|
||||
char *pattern, ...);
|
||||
/*VARARGS3*/
|
||||
extern void sendto_all_butone(aClient *, aClient *, char *, ...);
|
||||
extern void sendto_all_butone(aClient *, aClient *, char *, ...);
|
||||
/*VARARGS1*/
|
||||
extern void sendto_ops(char *, ...);
|
||||
extern void sendto_ops(char *, ...);
|
||||
/*VARARGS3*/
|
||||
extern void sendto_ops_butone(aClient *, aClient *, char *, ...);
|
||||
extern void sendto_ops_butone(aClient *, aClient *, char *, ...);
|
||||
/*VARARGS3*/
|
||||
extern void sendto_ops_butme(aClient *, char *, ...);
|
||||
extern void sendto_ops_butme(aClient *, char *, ...);
|
||||
/*VARARGS3*/
|
||||
extern void sendto_prefix_one(aClient *, aClient *, const char *, ...);
|
||||
extern void sendto_prefix_one(aClient *, aClient *, const char *, ...);
|
||||
/*VARARGS3*/
|
||||
extern void sendto_failops_whoare_opers(char *, ...);
|
||||
extern void sendto_failops_whoare_opers(char *, ...);
|
||||
/*VARARGS3*/
|
||||
extern void sendto_failops(char *, ...);
|
||||
extern void sendto_failops(char *, ...);
|
||||
/*VARARGS3*/
|
||||
extern void sendto_opers(char *, ...);
|
||||
extern void sendto_opers(char *, ...);
|
||||
/*VARARGS?*/
|
||||
extern void sendto_umode(int, char *, ...);
|
||||
extern void sendto_conn_hcn(char *, ...);
|
||||
extern int writecalls, writeb[];
|
||||
extern int deliver_it PROTO((aClient *, char *, int));
|
||||
extern void sendto_umode(int, char *, ...);
|
||||
extern void sendto_conn_hcn(char *, ...);
|
||||
extern int writecalls, writeb[];
|
||||
extern int deliver_it PROTO((aClient *, char *, int));
|
||||
|
||||
extern int check_registered PROTO((aClient *));
|
||||
extern int check_registered_user PROTO((aClient *));
|
||||
extern char *get_client_name PROTO((aClient *, int));
|
||||
extern char *get_client_host PROTO((aClient *));
|
||||
extern char *my_name_for_link PROTO((char *, aConfItem *));
|
||||
extern char *myctime PROTO((time_t)), *date PROTO((time_t));
|
||||
extern int exit_client PROTO((aClient *, aClient *, aClient *, char *));
|
||||
extern void initstats PROTO(()), tstats PROTO((aClient *, char *));
|
||||
extern char *check_string PROTO((char *));
|
||||
extern char *make_nick_user_host PROTO((char *, char *, char *));
|
||||
extern int check_registered PROTO((aClient *));
|
||||
extern int check_registered_user PROTO((aClient *));
|
||||
extern char *get_client_name PROTO((aClient *, int));
|
||||
extern char *get_client_host PROTO((aClient *));
|
||||
extern char *my_name_for_link PROTO((char *, aConfItem *));
|
||||
extern char *myctime PROTO((TS)), *date PROTO((TS));
|
||||
extern int exit_client PROTO((aClient *, aClient *, aClient *, char *));
|
||||
extern void initstats PROTO(()), tstats PROTO((aClient *, char *));
|
||||
extern char *check_string PROTO((char *));
|
||||
extern char *make_nick_user_host PROTO((char *, char *, char *));
|
||||
|
||||
extern int parse PROTO((aClient *, char *, char *, struct Message *));
|
||||
extern int do_numeric PROTO((int, aClient *, aClient *, int, char **));
|
||||
extern int hunt_server PROTO((aClient *,aClient *,char *,int,int,char **));
|
||||
extern aClient *next_client PROTO((aClient *, char *));
|
||||
extern int m_umode PROTO((aClient *, aClient *, int, char **));
|
||||
extern int m_names PROTO((aClient *, aClient *, int, char **));
|
||||
extern int m_server_estab PROTO((aClient *));
|
||||
extern void send_umode PROTO((aClient *, aClient *, int, int, char *));
|
||||
extern void send_umode_out PROTO((aClient*, aClient *, int));
|
||||
extern int parse PROTO((aClient *, char *, char *, struct Message *));
|
||||
extern int do_numeric PROTO((int, aClient *, aClient *, int, char **));
|
||||
extern int hunt_server PROTO((aClient *, aClient *, char *, int, int, char **));
|
||||
extern aClient *next_client PROTO((aClient *, char *));
|
||||
extern int m_umode PROTO((aClient *, aClient *, int, char **));
|
||||
extern int m_names PROTO((aClient *, aClient *, int, char **));
|
||||
extern int m_server_estab PROTO((aClient *));
|
||||
extern void send_umode PROTO((aClient *, aClient *, long, long, char *));
|
||||
extern void send_umode_out PROTO((aClient *, aClient *, long));
|
||||
|
||||
extern void free_client PROTO((aClient *));
|
||||
extern void free_link PROTO((Link *));
|
||||
extern void free_ban PROTO((Ban *));
|
||||
extern void free_conf PROTO((aConfItem *));
|
||||
extern void free_class PROTO((aClass *));
|
||||
extern void free_user PROTO((anUser *, aClient *));
|
||||
extern int find_str_match_link PROTO((Link **, char *));
|
||||
extern void free_str_list PROTO ((Link *));
|
||||
extern Link *make_link PROTO(());
|
||||
extern Ban *make_ban PROTO(());
|
||||
extern anUser *make_user PROTO((aClient *));
|
||||
extern aSqlineItem *make_sqline PROTO(());
|
||||
extern aConfItem *make_conf PROTO(());
|
||||
extern aClass *make_class PROTO(());
|
||||
extern aServer *make_server PROTO(());
|
||||
extern aClient *make_client PROTO((aClient *, aClient *));
|
||||
extern Link *find_user_link PROTO((Link *, aClient *));
|
||||
extern Link *find_channel_link PROTO((Link *, aChannel *));
|
||||
extern char *pretty_mask PROTO((char *));
|
||||
extern void add_client_to_list PROTO((aClient *));
|
||||
extern void checklist PROTO(());
|
||||
extern void remove_client_from_list PROTO((aClient *));
|
||||
extern void initlists PROTO(());
|
||||
extern void free_client PROTO((aClient *));
|
||||
extern void free_link PROTO((Link *));
|
||||
extern void free_ban PROTO((Ban *));
|
||||
extern void free_conf PROTO((aConfItem *));
|
||||
extern void free_class PROTO((aClass *));
|
||||
extern void free_user PROTO((anUser *, aClient *));
|
||||
extern int find_str_match_link PROTO((Link *, char *));
|
||||
extern void free_str_list PROTO((Link *));
|
||||
extern Link *make_link PROTO(());
|
||||
extern Ban *make_ban PROTO(());
|
||||
extern anUser *make_user PROTO((aClient *));
|
||||
extern aSqlineItem *make_sqline PROTO(());
|
||||
extern aConfItem *make_conf PROTO(());
|
||||
extern aClass *make_class PROTO(());
|
||||
extern aServer *make_server PROTO(());
|
||||
extern aClient *make_client PROTO((aClient *, aClient *));
|
||||
extern Link *find_user_link PROTO((Link *, aClient *));
|
||||
extern Link *find_channel_link PROTO((Link *, aChannel *));
|
||||
extern char *pretty_mask PROTO((char *));
|
||||
extern void add_client_to_list PROTO((aClient *));
|
||||
extern void checklist PROTO(());
|
||||
extern void remove_client_from_list PROTO((aClient *));
|
||||
extern void initlists PROTO(());
|
||||
|
||||
extern void add_class PROTO((int, int, int, int, long));
|
||||
extern void fix_class PROTO((aConfItem *, aConfItem *));
|
||||
extern long get_sendq PROTO((aClient *));
|
||||
extern int get_con_freq PROTO((aClass *));
|
||||
extern int get_client_ping PROTO((aClient *));
|
||||
extern int get_client_class PROTO((aClient *));
|
||||
extern int get_conf_class PROTO((aConfItem *));
|
||||
extern void report_classes PROTO((aClient *));
|
||||
extern void add_class PROTO((int, int, int, int, long));
|
||||
extern void fix_class PROTO((aConfItem *, aConfItem *));
|
||||
extern long get_sendq PROTO((aClient *));
|
||||
extern int get_con_freq PROTO((aClass *));
|
||||
extern int get_client_ping PROTO((aClient *));
|
||||
extern int get_client_class PROTO((aClient *));
|
||||
extern int get_conf_class PROTO((aConfItem *));
|
||||
extern void report_classes PROTO((aClient *));
|
||||
|
||||
extern struct hostent *get_res PROTO((char *));
|
||||
extern struct hostent *gethost_byaddr PROTO((char *, Link *));
|
||||
extern struct hostent *gethost_byname PROTO((char *, Link *));
|
||||
extern void flush_cache PROTO(());
|
||||
extern int init_resolver PROTO((int));
|
||||
extern time_t timeout_query_list PROTO((time_t));
|
||||
extern time_t expire_cache PROTO((time_t));
|
||||
extern void del_queries PROTO((char *));
|
||||
extern struct hostent *get_res PROTO((char *));
|
||||
extern struct hostent *gethost_byaddr PROTO((char *, Link *));
|
||||
extern struct hostent *gethost_byname PROTO((char *, Link *));
|
||||
extern void flush_cache PROTO(());
|
||||
extern int init_resolver PROTO((int));
|
||||
extern TS timeout_query_list PROTO((TS));
|
||||
extern TS expire_cache PROTO((TS));
|
||||
extern void del_queries PROTO((char *));
|
||||
|
||||
extern void clear_channel_hash_table PROTO(());
|
||||
extern void clear_client_hash_table PROTO(());
|
||||
extern void clear_notify_hash_table PROTO(());
|
||||
extern int add_to_client_hash_table PROTO((char *, aClient *));
|
||||
extern int del_from_client_hash_table PROTO((char *, aClient *));
|
||||
extern int add_to_channel_hash_table PROTO((char *, aChannel *));
|
||||
extern int del_from_channel_hash_table PROTO((char *, aChannel *));
|
||||
extern int add_to_notify_hash_table PROTO((char *, aClient *));
|
||||
extern int del_from_notify_hash_table PROTO((char *, aClient *));
|
||||
extern int hash_check_notify PROTO((aClient *, int));
|
||||
extern int hash_del_notify_list PROTO((aClient *));
|
||||
extern void count_watch_memory PROTO((int *, u_long *));
|
||||
extern aNotify *hash_get_notify PROTO((char *));
|
||||
extern aChannel *hash_get_chan_bucket PROTO((int));
|
||||
extern aChannel *hash_find_channel PROTO((char *, aChannel *));
|
||||
extern aClient *hash_find_client PROTO((char *, aClient *));
|
||||
extern aClient *hash_find_nickserver PROTO((char *, aClient *));
|
||||
extern aClient *hash_find_server PROTO((char *, aClient *));
|
||||
extern void clear_channel_hash_table PROTO(());
|
||||
extern void clear_client_hash_table PROTO(());
|
||||
extern void clear_notify_hash_table PROTO(());
|
||||
extern int add_to_client_hash_table PROTO((char *, aClient *));
|
||||
extern int del_from_client_hash_table PROTO((char *, aClient *));
|
||||
extern int add_to_channel_hash_table PROTO((char *, aChannel *));
|
||||
extern int del_from_channel_hash_table PROTO((char *, aChannel *));
|
||||
extern int add_to_notify_hash_table PROTO((char *, aClient *));
|
||||
extern int del_from_notify_hash_table PROTO((char *, aClient *));
|
||||
extern int hash_check_notify PROTO((aClient *, int));
|
||||
extern int hash_del_notify_list PROTO((aClient *));
|
||||
extern void count_watch_memory PROTO((int *, u_long *));
|
||||
extern aNotify *hash_get_notify PROTO((char *));
|
||||
extern aChannel *hash_get_chan_bucket PROTO((int));
|
||||
extern aClient *hash_find_client PROTO((char *, aClient *));
|
||||
extern aClient *hash_find_nickserver PROTO((char *, aClient *));
|
||||
extern aClient *hash_find_server PROTO((char *, aClient *));
|
||||
extern char *find_by_aln PROTO((char *));
|
||||
extern char *convert2aln PROTO((int));
|
||||
extern int convertfromaln PROTO((char *));
|
||||
extern char *find_server_aln PROTO((char *));
|
||||
extern atime(char *xtime);
|
||||
|
||||
extern void add_history PROTO((aClient *));
|
||||
extern aClient *get_history PROTO((char *, time_t));
|
||||
extern void initwhowas PROTO(());
|
||||
extern void off_history PROTO((aClient *));
|
||||
|
||||
extern int dopacket PROTO((aClient *, char *, int));
|
||||
extern int dopacket PROTO((aClient *, char *, int));
|
||||
|
||||
/*VARARGS2*/
|
||||
extern void debug();
|
||||
extern void debug();
|
||||
#if defined(DEBUGMODE)
|
||||
extern void send_usage PROTO((aClient *, char *));
|
||||
extern void send_listinfo PROTO((aClient *, char *));
|
||||
extern void count_memory PROTO((aClient *, char *));
|
||||
extern void send_usage PROTO((aClient *, char *));
|
||||
extern void send_listinfo PROTO((aClient *, char *));
|
||||
extern void count_memory PROTO((aClient *, char *));
|
||||
#endif
|
||||
|
||||
#ifdef INET6
|
||||
extern char *inetntop(int af, const void *in, char *local_dummy,
|
||||
size_t the_size);
|
||||
#endif
|
||||
|
||||
char *crule_parse PROTO((char *));
|
||||
|
||||
+39
-21
@@ -1,5 +1,5 @@
|
||||
/************************************************************************
|
||||
* IRC - Internet Relay Chat, include/hash.h
|
||||
* Unreal Internet Relay Chat Daemon, include/hash.h
|
||||
* Copyright (C) 1991 Darren Reed
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
@@ -22,27 +22,45 @@
|
||||
#ifndef __hash_include__
|
||||
#define __hash_include__
|
||||
|
||||
/* Ditch the stats if not running in debugmode */
|
||||
#ifdef DEBUGMODE
|
||||
typedef struct hashentry {
|
||||
int hits;
|
||||
int links;
|
||||
void *list;
|
||||
} aHashEntry;
|
||||
#else /* DEBUGMODE */
|
||||
typedef void *aHashEntry;
|
||||
#endif /* DEBUGMODE */
|
||||
typedef struct hashentry {
|
||||
int hits;
|
||||
int links;
|
||||
void *list;
|
||||
} aHashEntry;
|
||||
|
||||
#ifndef DEBUGMODE
|
||||
#define HASHSIZE 32003 /* prime number */
|
||||
#define CHANNELHASHSIZE 10007 /* prime number */
|
||||
#else
|
||||
extern int HASHSIZE;
|
||||
extern int CHANNELHASHSIZE;
|
||||
#endif
|
||||
/* Taner had BITS_PER_COL 4 BITS_PER_COL_MASK 0xF - Dianora */
|
||||
|
||||
#define NOTIFYHASHSIZE 10007 /* prime number */
|
||||
#define BITS_PER_COL 3
|
||||
#define BITS_PER_COL_MASK 0x7
|
||||
#define MAX_SUB (1<<BITS_PER_COL)
|
||||
|
||||
#define NullChn ((aChannel *)0)
|
||||
/* Client hash table
|
||||
* used in hash.c
|
||||
*/
|
||||
|
||||
#endif /* __hash_include__ */
|
||||
#define U_MAX_INITIAL 2048
|
||||
#define U_MAX_INITIAL_MASK (U_MAX_INITIAL-1)
|
||||
#define U_MAX (U_MAX_INITIAL*MAX_SUB)
|
||||
|
||||
/* Channel hash table
|
||||
* used in hash.c
|
||||
*/
|
||||
|
||||
#define CH_MAX_INITIAL 2048
|
||||
#define CH_MAX_INITIAL_MASK (CH_MAX_INITIAL-1)
|
||||
#define CH_MAX (CH_MAX_INITIAL*MAX_SUB)
|
||||
|
||||
/* Who was hash table
|
||||
* used in whowas.c
|
||||
*/
|
||||
|
||||
#define WW_MAX_INITIAL 16
|
||||
#define WW_MAX_INITIAL_MASK (WW_MAX_INITIAL-1)
|
||||
#define WW_MAX (WW_MAX_INITIAL*MAX_SUB)
|
||||
|
||||
#define NOTIFYHASHSIZE 10007 /* prime number */
|
||||
|
||||
#define NullChn ((aChannel *)0)
|
||||
|
||||
#define find_channel hash_find_channel
|
||||
#endif /* __hash_include__ */
|
||||
|
||||
+2
-2
@@ -22,7 +22,7 @@
|
||||
*/
|
||||
|
||||
/* External definitions for functions in inet(3) */
|
||||
#include "config.h" /* for system definitions */
|
||||
#include "config.h" /* for system definitions */
|
||||
|
||||
#ifdef __alpha
|
||||
#define __u_l unsigned int
|
||||
@@ -35,7 +35,7 @@
|
||||
extern __u_l inet_addr(char *);
|
||||
extern char *inet_ntoa(char *);
|
||||
# endif
|
||||
extern __u_l inet_makeaddr(int , int);
|
||||
extern __u_l inet_makeaddr(int, int);
|
||||
extern __u_l inet_network(char *);
|
||||
extern __u_l inet_lnaof(struct in_addr);
|
||||
#else
|
||||
|
||||
@@ -0,0 +1,24 @@
|
||||
/*
|
||||
* sprintf_irc.h
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#ifndef IRCSPRINTF_H
|
||||
#define IRCSPRINTF_H
|
||||
#include <stdarg.h>
|
||||
#include <stdio.h>
|
||||
|
||||
|
||||
/*
|
||||
* Proto types
|
||||
*/
|
||||
|
||||
/* You do want it to work in debug mode yes ? --DrBin */
|
||||
|
||||
extern char *ircvsprintf(char *str, const char *format, va_list);
|
||||
extern char *ircsprintf(char *str, const char *format, ...);
|
||||
|
||||
extern const char atoi_tab[4000];
|
||||
|
||||
#endif
|
||||
+29
-30
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* IRC - Internet Relay Chat, include/license.h
|
||||
* Unreal Internet Relay Chat Daemon, include/license.h
|
||||
* Copyright (C) 1999 Carsten Munk
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
@@ -17,8 +17,7 @@
|
||||
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||
*
|
||||
* This file may not be removed from the IRCd package.
|
||||
* It will be a violation of copyright. This program must always
|
||||
* stay free and not be sold, or charged.
|
||||
* It will be a violation of copyright.
|
||||
*
|
||||
* $Id$
|
||||
*/
|
||||
@@ -29,32 +28,32 @@
|
||||
*/
|
||||
|
||||
static char *Statement[] = {
|
||||
" * This file may not be removed from the IRCd package.",
|
||||
" * It will be a violation of copyright. This program must always",
|
||||
" * stay free and not be charged for, being sold commercially or privately",
|
||||
" * Only charge may be for the transport medium like one CD-ROM, floppy",
|
||||
" * or other kinds.",
|
||||
0};
|
||||
|
||||
char *gnulicense[] = {
|
||||
" \2UnrealIRCd License\2",
|
||||
"This program is free software; you can redistribute it and/or modify",
|
||||
"it under the terms of the GNU General Public License as published by",
|
||||
"the Free Software Foundation; either version 1, or (at your option)",
|
||||
"any later version.",
|
||||
"",
|
||||
"This program is distributed in the hope that it will be useful,",
|
||||
"but WITHOUT ANY WARRANTY; without even the implied warranty of",
|
||||
"MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the",
|
||||
"GNU General Public License for more details.",
|
||||
"",
|
||||
"You should have received a copy of the GNU General Public License",
|
||||
"along with this program; if not, write to the Free Software",
|
||||
"Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.",
|
||||
"",
|
||||
"To see the UnrealIRCd License, please point your browser",
|
||||
"at http://www.gnu.org/copyleft/gpl.html or look in the",
|
||||
"file LICENSE in the UnrealIRCd dist",
|
||||
0
|
||||
" * This file may not be removed from the IRCd package.",
|
||||
" * It will be a violation of copyright. This program must always",
|
||||
" * stay free and not be charged for, being sold commercially or privately",
|
||||
" * Only charge may be for the transport medium like one CD-ROM, floppy",
|
||||
" * or other kinds.",
|
||||
0
|
||||
};
|
||||
|
||||
char *gnulicense[] = {
|
||||
" \2UnrealIRCd License\2",
|
||||
"This program is free software; you can redistribute it and/or modify",
|
||||
"it under the terms of the GNU General Public License as published by",
|
||||
"the Free Software Foundation; either version 1, or (at your option)",
|
||||
"any later version.",
|
||||
"",
|
||||
"This program is distributed in the hope that it will be useful,",
|
||||
"but WITHOUT ANY WARRANTY; without even the implied warranty of",
|
||||
"MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the",
|
||||
"GNU General Public License for more details.",
|
||||
"",
|
||||
"You should have received a copy of the GNU General Public License",
|
||||
"along with this program; if not, write to the Free Software",
|
||||
"Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.",
|
||||
"",
|
||||
"To see the UnrealIRCd License, please point your browser",
|
||||
"at http://www.gnu.org/copyleft/gpl.html or look in the",
|
||||
"file LICENSE in the UnrealIRCd dist",
|
||||
0
|
||||
};
|
||||
|
||||
+327
-288
@@ -1,5 +1,6 @@
|
||||
|
||||
/************************************************************************
|
||||
* IRC - Internet Relay Chat, include/msg.h
|
||||
* Unreal Internet Relay Chat Daemon, include/msg.h
|
||||
* Copyright (C) 1990 Jarkko Oikarinen and
|
||||
* University of Oulu, Computing Center
|
||||
*
|
||||
@@ -45,205 +46,204 @@
|
||||
* knowing it, I'm considering that reserved, and TRACE/A is now 'b'.
|
||||
* The normal msgtab should probably process this as special. -Donwulff
|
||||
*/
|
||||
|
||||
|
||||
/* 12/05/1999 - I was wrong - I didnt see the token[2] in struct Message
|
||||
okie 60*60 commands more :P - Sowwy!!! -sts
|
||||
|
||||
*/
|
||||
|
||||
#define MSG_PRIVATE "PRIVMSG" /* PRIV */
|
||||
#define TOK_PRIVATE "!" /* 33 */
|
||||
#define MSG_WHO "WHO" /* WHO -> WHOC */
|
||||
#define TOK_WHO "\"" /* 34 */
|
||||
#define MSG_WHOIS "WHOIS" /* WHOI */
|
||||
#define TOK_WHOIS "#" /* 35 */
|
||||
#define TOK_PRIVATE "!" /* 33 */
|
||||
#define MSG_WHO "WHO" /* WHO -> WHOC */
|
||||
#define TOK_WHO "\"" /* 34 */
|
||||
#define MSG_WHOIS "WHOIS" /* WHOI */
|
||||
#define TOK_WHOIS "#" /* 35 */
|
||||
#define MSG_WHOWAS "WHOWAS" /* WHOW */
|
||||
#define TOK_WHOWAS "$" /* 36 */
|
||||
#define MSG_USER "USER" /* USER */
|
||||
#define TOK_USER "%" /* 37 */
|
||||
#define MSG_NICK "NICK" /* NICK */
|
||||
#define TOK_NICK "&" /* 38 */
|
||||
#define TOK_WHOWAS "$" /* 36 */
|
||||
#define MSG_USER "USER" /* USER */
|
||||
#define TOK_USER "%" /* 37 */
|
||||
#define MSG_NICK "NICK" /* NICK */
|
||||
#define TOK_NICK "&" /* 38 */
|
||||
#define MSG_SERVER "SERVER" /* SERV */
|
||||
#define TOK_SERVER "'" /* 39 */
|
||||
#define MSG_LIST "LIST" /* LIST */
|
||||
#define TOK_LIST "(" /* 40 */
|
||||
#define MSG_TOPIC "TOPIC" /* TOPI */
|
||||
#define TOK_TOPIC ")" /* 41 */
|
||||
#define TOK_SERVER "'" /* 39 */
|
||||
#define MSG_LIST "LIST" /* LIST */
|
||||
#define TOK_LIST "(" /* 40 */
|
||||
#define MSG_TOPIC "TOPIC" /* TOPI */
|
||||
#define TOK_TOPIC ")" /* 41 */
|
||||
#define MSG_INVITE "INVITE" /* INVI */
|
||||
#define TOK_INVITE "*" /* 42 */
|
||||
#define TOK_INVITE "*" /* 42 */
|
||||
#define MSG_VERSION "VERSION" /* VERS */
|
||||
#define TOK_VERSION "+" /* 43 */
|
||||
#define MSG_QUIT "QUIT" /* QUIT */
|
||||
#define TOK_QUIT "," /* 44 */
|
||||
#define MSG_SQUIT "SQUIT" /* SQUI */
|
||||
#define TOK_SQUIT "-" /* 45 */
|
||||
#define MSG_KILL "KILL" /* KILL */
|
||||
#define TOK_KILL "." /* 46 */
|
||||
#define MSG_INFO "INFO" /* INFO */
|
||||
#define TOK_INFO "/" /* 47 */
|
||||
#define MSG_LINKS "LINKS" /* LINK */
|
||||
#define TOK_LINKS "0" /* 48 */
|
||||
#define TOK_VERSION "+" /* 43 */
|
||||
#define MSG_QUIT "QUIT" /* QUIT */
|
||||
#define TOK_QUIT "," /* 44 */
|
||||
#define MSG_SQUIT "SQUIT" /* SQUI */
|
||||
#define TOK_SQUIT "-" /* 45 */
|
||||
#define MSG_KILL "KILL" /* KILL */
|
||||
#define TOK_KILL "." /* 46 */
|
||||
#define MSG_INFO "INFO" /* INFO */
|
||||
#define TOK_INFO "/" /* 47 */
|
||||
#define MSG_LINKS "LINKS" /* LINK */
|
||||
#define TOK_LINKS "0" /* 48 */
|
||||
#define MSG_SUMMON "SUMMON" /* SUMM */
|
||||
#define TOK_SUMMON "1" /* 49 */
|
||||
#define MSG_STATS "STATS" /* STAT */
|
||||
#define TOK_STATS "2" /* 50 */
|
||||
#define MSG_USERS "USERS" /* USER -> USRS */
|
||||
#define TOK_USERS "3" /* 51 */
|
||||
#define MSG_HELP "HELP" /* HELP */
|
||||
#define TOK_SUMMON "1" /* 49 */
|
||||
#define MSG_STATS "STATS" /* STAT */
|
||||
#define TOK_STATS "2" /* 50 */
|
||||
#define MSG_USERS "USERS" /* USER -> USRS */
|
||||
#define TOK_USERS "3" /* 51 */
|
||||
#define MSG_HELP "HELP" /* HELP */
|
||||
#define MSG_HELPOP "HELPOP" /* HELP */
|
||||
#define MSG_IRCDHELP "IRCDHELP" /* HELP */
|
||||
#define TOK_HELP "4" /* 52 */
|
||||
#define MSG_ERROR "ERROR" /* ERRO */
|
||||
#define TOK_ERROR "5" /* 53 */
|
||||
#define MSG_AWAY "AWAY" /* AWAY */
|
||||
#define TOK_AWAY "6" /* 54 */
|
||||
#define TOK_HELP "4" /* 52 */
|
||||
#define MSG_ERROR "ERROR" /* ERRO */
|
||||
#define TOK_ERROR "5" /* 53 */
|
||||
#define MSG_AWAY "AWAY" /* AWAY */
|
||||
#define TOK_AWAY "6" /* 54 */
|
||||
#define MSG_CONNECT "CONNECT" /* CONN */
|
||||
#define TOK_CONNECT "7" /* 55 */
|
||||
#define MSG_PING "PING" /* PING */
|
||||
#define TOK_PING "8" /* 56 */
|
||||
#define MSG_PONG "PONG" /* PONG */
|
||||
#define TOK_PONG "9" /* 57 */
|
||||
#define MSG_OPER "OPER" /* OPER */
|
||||
#define TOK_OPER ";" /* 59 */
|
||||
#define MSG_PASS "PASS" /* PASS */
|
||||
#define TOK_PASS "<" /* 60 */
|
||||
#define TOK_CONNECT "7" /* 55 */
|
||||
#define MSG_PING "PING" /* PING */
|
||||
#define TOK_PING "8" /* 56 */
|
||||
#define MSG_PONG "PONG" /* PONG */
|
||||
#define TOK_PONG "9" /* 57 */
|
||||
#define MSG_OPER "OPER" /* OPER */
|
||||
#define TOK_OPER ";" /* 59 */
|
||||
#define MSG_PASS "PASS" /* PASS */
|
||||
#define TOK_PASS "<" /* 60 */
|
||||
#define MSG_WALLOPS "WALLOPS" /* WALL */
|
||||
#define TOK_WALLOPS "=" /* 61 */
|
||||
#define MSG_TIME "TIME" /* TIME */
|
||||
#define TOK_TIME ">" /* 62 */
|
||||
#define MSG_NAMES "NAMES" /* NAME */
|
||||
#define TOK_NAMES "?" /* 63 */
|
||||
#define MSG_ADMIN "ADMIN" /* ADMI */
|
||||
#define TOK_ADMIN "@" /* 64 */
|
||||
#define TOK_WALLOPS "=" /* 61 */
|
||||
#define MSG_TIME "TIME" /* TIME */
|
||||
#define TOK_TIME ">" /* 62 */
|
||||
#define MSG_NAMES "NAMES" /* NAME */
|
||||
#define TOK_NAMES "?" /* 63 */
|
||||
#define MSG_ADMIN "ADMIN" /* ADMI */
|
||||
#define TOK_ADMIN "@" /* 64 */
|
||||
#define MSG_NOTICE "NOTICE" /* NOTI */
|
||||
#define TOK_NOTICE "B" /* 66 */
|
||||
#define MSG_JOIN "JOIN" /* JOIN */
|
||||
#define TOK_JOIN "C" /* 67 */
|
||||
#define MSG_PART "PART" /* PART */
|
||||
#define TOK_PART "D" /* 68 */
|
||||
#define TOK_NOTICE "B" /* 66 */
|
||||
#define MSG_JOIN "JOIN" /* JOIN */
|
||||
#define TOK_JOIN "C" /* 67 */
|
||||
#define MSG_PART "PART" /* PART */
|
||||
#define TOK_PART "D" /* 68 */
|
||||
#define MSG_LUSERS "LUSERS" /* LUSE */
|
||||
#define TOK_LUSERS "E" /* 69 */
|
||||
#define MSG_MOTD "MOTD" /* MOTD */
|
||||
#define TOK_MOTD "F" /* 70 */
|
||||
#define MSG_MODE "MODE" /* MODE */
|
||||
#define TOK_MODE "G" /* 71 */
|
||||
#define MSG_KICK "KICK" /* KICK */
|
||||
#define TOK_KICK "H" /* 72 */
|
||||
#define TOK_LUSERS "E" /* 69 */
|
||||
#define MSG_MOTD "MOTD" /* MOTD */
|
||||
#define TOK_MOTD "F" /* 70 */
|
||||
#define MSG_MODE "MODE" /* MODE */
|
||||
#define TOK_MODE "G" /* 71 */
|
||||
#define MSG_KICK "KICK" /* KICK */
|
||||
#define TOK_KICK "H" /* 72 */
|
||||
#define MSG_SERVICE "SERVICE" /* SERV -> SRVI */
|
||||
#define TOK_SERVICE "I" /* 73 */
|
||||
#define TOK_SERVICE "I" /* 73 */
|
||||
#define MSG_USERHOST "USERHOST" /* USER -> USRH */
|
||||
#define TOK_USERHOST "J" /* 74 */
|
||||
#define MSG_ISON "ISON" /* ISON */
|
||||
#define TOK_ISON "K" /* 75 */
|
||||
#define TOK_USERHOST "J" /* 74 */
|
||||
#define MSG_ISON "ISON" /* ISON */
|
||||
#define TOK_ISON "K" /* 75 */
|
||||
#define MSG_REHASH "REHASH" /* REHA */
|
||||
#define TOK_REHASH "O" /* 79 */
|
||||
#define TOK_REHASH "O" /* 79 */
|
||||
#define MSG_RESTART "RESTART" /* REST */
|
||||
#define TOK_RESTART "P" /* 80 */
|
||||
#define MSG_CLOSE "CLOSE" /* CLOS */
|
||||
#define TOK_CLOSE "Q" /* 81 */
|
||||
#define MSG_DIE "DIE" /* DIE */
|
||||
#define TOK_DIE "R" /* 82 */
|
||||
#define MSG_HASH "HASH" /* HASH */
|
||||
#define TOK_HASH "S" /* 83 */
|
||||
#define MSG_DNS "DNS" /* DNS -> DNSS */
|
||||
#define TOK_DNS "T" /* 84 */
|
||||
#define TOK_RESTART "P" /* 80 */
|
||||
#define MSG_CLOSE "CLOSE" /* CLOS */
|
||||
#define TOK_CLOSE "Q" /* 81 */
|
||||
#define MSG_DIE "DIE" /* DIE */
|
||||
#define TOK_DIE "R" /* 82 */
|
||||
#define MSG_HASH "HASH" /* HASH */
|
||||
#define TOK_HASH "S" /* 83 */
|
||||
#define MSG_DNS "DNS" /* DNS -> DNSS */
|
||||
#define TOK_DNS "T" /* 84 */
|
||||
#define MSG_SILENCE "SILENCE" /* SILE */
|
||||
#define TOK_SILENCE "U" /* 85 */
|
||||
#define MSG_AKILL "AKILL" /* AKILL */
|
||||
#define TOK_AKILL "V" /* 86 */
|
||||
#define MSG_KLINE "KLINE" /* KLINE */
|
||||
#define TOK_KLINE "W" /* 87 */
|
||||
#define MSG_UNKLINE "UNKLINE" /* UNKLINE */
|
||||
#define TOK_UNKLINE "X" /* 88 */
|
||||
#define TOK_SILENCE "U" /* 85 */
|
||||
#define MSG_AKILL "AKILL" /* AKILL */
|
||||
#define TOK_AKILL "V" /* 86 */
|
||||
#define MSG_KLINE "KLINE" /* KLINE */
|
||||
#define TOK_KLINE "W" /* 87 */
|
||||
#define MSG_UNKLINE "UNKLINE" /* UNKLINE */
|
||||
#define TOK_UNKLINE "X" /* 88 */
|
||||
#define MSG_RAKILL "RAKILL" /* RAKILL */
|
||||
#define TOK_RAKILL "Y" /* 89 */
|
||||
#define TOK_RAKILL "Y" /* 89 */
|
||||
#define MSG_GNOTICE "GNOTICE" /* GNOTICE */
|
||||
#define TOK_GNOTICE "Z" /* 90 */
|
||||
#define MSG_GOPER "GOPER" /* GOPER */
|
||||
#define TOK_GOPER "[" /* 91 */
|
||||
#define TOK_GNOTICE "Z" /* 90 */
|
||||
#define MSG_GOPER "GOPER" /* GOPER */
|
||||
#define TOK_GOPER "[" /* 91 */
|
||||
#define MSG_GLOBOPS "GLOBOPS" /* GLOBOPS */
|
||||
#define TOK_GLOBOPS "]" /* 93 */
|
||||
#define TOK_GLOBOPS "]" /* 93 */
|
||||
#define MSG_LOCOPS "LOCOPS" /* LOCOPS */
|
||||
#define TOK_LOCOPS "^" /* 94 */
|
||||
#define TOK_LOCOPS "^" /* 94 */
|
||||
#define MSG_PROTOCTL "PROTOCTL" /* PROTOCTL */
|
||||
#define TOK_PROTOCTL "_" /* 95 */
|
||||
#define MSG_WATCH "WATCH" /* WATCH */
|
||||
#define TOK_WATCH "`" /* 96 */
|
||||
#define MSG_TRACE "TRACE" /* TRAC */
|
||||
#define TOK_TRACE "b" /* 97 */
|
||||
#define TOK_PROTOCTL "_" /* 95 */
|
||||
#define MSG_WATCH "WATCH" /* WATCH */
|
||||
#define TOK_WATCH "`" /* 96 */
|
||||
#define MSG_TRACE "TRACE" /* TRAC */
|
||||
#define TOK_TRACE "b" /* 97 */
|
||||
#define MSG_SQLINE "SQLINE" /* SQLINE */
|
||||
#define TOK_SQLINE "c" /* 98 */
|
||||
#define TOK_SQLINE "c" /* 98 */
|
||||
#define MSG_UNSQLINE "UNSQLINE" /* UNSQLINE */
|
||||
#define TOK_UNSQLINE "d" /* 99 */
|
||||
#define TOK_UNSQLINE "d" /* 99 */
|
||||
#define MSG_SVSNICK "SVSNICK" /* SVSNICK */
|
||||
#define TOK_SVSNICK "e" /* 100 */
|
||||
#define TOK_SVSNICK "e" /* 100 */
|
||||
#define MSG_SVSNOOP "SVSNOOP" /* SVSNOOP */
|
||||
#define TOK_SVSNOOP "f" /* 101 */
|
||||
#define TOK_SVSNOOP "f" /* 101 */
|
||||
#define MSG_IDENTIFY "IDENTIFY" /* IDENTIFY */
|
||||
#define TOK_IDENTIFY "g" /* 102 */
|
||||
#define TOK_IDENTIFY "g" /* 102 */
|
||||
#define MSG_SVSKILL "SVSKILL" /* SVSKILL */
|
||||
#define TOK_SVSKILL "h" /* 103 */
|
||||
#define TOK_SVSKILL "h" /* 103 */
|
||||
#define MSG_NICKSERV "NICKSERV" /* NICKSERV */
|
||||
#define MSG_NS "NS"
|
||||
#define TOK_NICKSERV "i" /* 104 */
|
||||
#define TOK_NICKSERV "i" /* 104 */
|
||||
#define MSG_CHANSERV "CHANSERV" /* CHANSERV */
|
||||
#define MSG_CS "CS"
|
||||
#define TOK_CHANSERV "j" /* 105 */
|
||||
#define TOK_CHANSERV "j" /* 105 */
|
||||
#define MSG_OPERSERV "OPERSERV" /* OPERSERV */
|
||||
#define MSG_OS "OS"
|
||||
#define TOK_OPERSERV "k" /* 106 */
|
||||
#define TOK_OPERSERV "k" /* 106 */
|
||||
#define MSG_MEMOSERV "MEMOSERV" /* MEMOSERV */
|
||||
#define MSG_MS "MS"
|
||||
#define TOK_MEMOSERV "l" /* 107 */
|
||||
#define TOK_MEMOSERV "l" /* 107 */
|
||||
#define MSG_SERVICES "SERVICES" /* SERVICES */
|
||||
#define TOK_SERVICES "m" /* 108 */
|
||||
#define TOK_SERVICES "m" /* 108 */
|
||||
#define MSG_SVSMODE "SVSMODE" /* SVSMODE */
|
||||
#define TOK_SVSMODE "n" /* 109 */
|
||||
#define TOK_SVSMODE "n" /* 109 */
|
||||
#define MSG_SAMODE "SAMODE" /* SAMODE */
|
||||
#define TOK_SAMODE "o" /* 110 */
|
||||
#define TOK_SAMODE "o" /* 110 */
|
||||
#define MSG_CHATOPS "CHATOPS" /* CHATOPS */
|
||||
#define TOK_CHATOPS "p" /* 111 */
|
||||
#define MSG_ZLINE "ZLINE" /* ZLINE */
|
||||
#define TOK_ZLINE "q" /* 112 */
|
||||
#define MSG_UNZLINE "UNZLINE" /* UNZLINE */
|
||||
#define TOK_UNZLINE "r" /* 113 */
|
||||
#define MSG_HELPSERV "HELPSERV" /* HELPSERV */
|
||||
#define TOK_CHATOPS "p" /* 111 */
|
||||
#define MSG_ZLINE "ZLINE" /* ZLINE */
|
||||
#define TOK_ZLINE "q" /* 112 */
|
||||
#define MSG_UNZLINE "UNZLINE" /* UNZLINE */
|
||||
#define TOK_UNZLINE "r" /* 113 */
|
||||
#define MSG_HELPSERV "HELPSERV" /* HELPSERV */
|
||||
#define MSG_HS "HS"
|
||||
#define TOK_HELPSERV "s" /* 114 */
|
||||
#define MSG_RULES "RULES" /* RULES */
|
||||
#define TOK_RULES "t" /* 115 */
|
||||
#define MSG_MAP "MAP" /* MAP */
|
||||
#define TOK_MAP "u" /* 117 */
|
||||
#define MSG_SVS2MODE "SVS2MODE" /* SVS2MODE */
|
||||
#define TOK_SVS2MODE "v" /* 118 */
|
||||
#define MSG_DALINFO "DALINFO" /* dalinfo */
|
||||
#define TOK_DALINFO "w" /* 119 */
|
||||
#define MSG_ADMINCHAT "ADCHAT" /* Admin chat */
|
||||
#define TOK_ADMINCHAT "x" /* 120 */
|
||||
#define TOK_HELPSERV "s" /* 114 */
|
||||
#define MSG_RULES "RULES" /* RULES */
|
||||
#define TOK_RULES "t" /* 115 */
|
||||
#define MSG_MAP "MAP" /* MAP */
|
||||
#define TOK_MAP "u" /* 117 */
|
||||
#define MSG_SVS2MODE "SVS2MODE" /* SVS2MODE */
|
||||
#define TOK_SVS2MODE "v" /* 118 */
|
||||
#define MSG_DALINFO "DALINFO" /* dalinfo */
|
||||
#define TOK_DALINFO "w" /* 119 */
|
||||
#define MSG_ADMINCHAT "ADCHAT" /* Admin chat */
|
||||
#define TOK_ADMINCHAT "x" /* 120 */
|
||||
#define MSG_MKPASSWD "MKPASSWD" /* MKPASSWD */
|
||||
#define TOK_MKPASSWD "y" /* 121 */
|
||||
#define MSG_ADDLINE "ADDLINE" /* ADDLINE */
|
||||
#define TOK_ADDLINE "z" /* 122 */
|
||||
#define MSG_GLINE "GLINE" /* The awesome g-line */
|
||||
#define TOK_GLINE "}" /* 125 */
|
||||
#define TOK_MKPASSWD "y" /* 121 */
|
||||
#define MSG_ADDLINE "ADDLINE" /* ADDLINE */
|
||||
#define TOK_ADDLINE "z" /* 122 */
|
||||
#define MSG_GLINE "GLINE" /* The awesome g-line */
|
||||
#define TOK_GLINE "}" /* 125 */
|
||||
#define MSG_GZLINE "GZLINE" /* Teh awesome global z-line */
|
||||
#define TOK_GZLINE "{" /* ahem? */
|
||||
#define MSG_SJOIN "SJOIN"
|
||||
#define TOK_SJOIN "~"
|
||||
#define MSG_SETHOST "SETHOST" /* sethost */
|
||||
#define TOK_SETHOST "AA" /* 127 4ever !;) */
|
||||
#define MSG_TECHAT "TECHAT" /* techadmin chat */
|
||||
#define TOK_TECHAT "AB" /* questionmark? */
|
||||
#define MSG_NACHAT "NACHAT" /* netadmin chat */
|
||||
#define TOK_NACHAT "AC" /* *beep* */
|
||||
#define MSG_SETIDENT "SETIDENT" /* set ident */
|
||||
#define TOK_SETIDENT "AD" /* good old BASIC ;P */
|
||||
#define MSG_SETNAME "SETNAME" /* set GECOS */
|
||||
#define TOK_SETNAME "AE" /* its almost unreeaaall... */
|
||||
#define MSG_LAG "LAG" /* Lag detect */
|
||||
#define TOK_LAG "AF" /* a or ? */
|
||||
#define MSG_SDESC "SDESC" /* set description */
|
||||
#define MSG_SETHOST "SETHOST" /* sethost */
|
||||
#define TOK_SETHOST "AA" /* 127 4ever !;) */
|
||||
#define MSG_NACHAT "NACHAT" /* netadmin chat */
|
||||
#define TOK_NACHAT "AC" /* *beep* */
|
||||
#define MSG_SETIDENT "SETIDENT" /* set ident */
|
||||
#define TOK_SETIDENT "AD" /* good old BASIC ;P */
|
||||
#define MSG_SETNAME "SETNAME" /* set GECOS */
|
||||
#define TOK_SETNAME "AE" /* its almost unreeaaall... */
|
||||
#define MSG_LAG "LAG" /* Lag detect */
|
||||
#define TOK_LAG "AF" /* a or ? */
|
||||
#define MSG_SDESC "SDESC" /* set description */
|
||||
#define TOK_SDESC "AG"
|
||||
#define MSG_STATSERV "STATSERV" /* alias */
|
||||
#define TOK_STATSERV "AH"
|
||||
#define MSG_STATSERV "STATSERV" /* alias */
|
||||
#define TOK_STATSERV "AH"
|
||||
#define MSG_KNOCK "KNOCK"
|
||||
#define TOK_KNOCK "AI"
|
||||
#define MSG_CREDITS "CREDITS"
|
||||
@@ -266,8 +266,6 @@
|
||||
#define TOK_ADDOMOTD "AR"
|
||||
#define MSG_SVSMOTD "SVSMOTD"
|
||||
#define TOK_SVSMOTD "AS"
|
||||
#define MSG_DUSERS "DUSERS"
|
||||
#define TOK_DUSERS "AT"
|
||||
#define MSG_SMO "SMO"
|
||||
#define TOK_SMO "AU"
|
||||
#define MSG_OPERMOTD "OPERMOTD"
|
||||
@@ -297,11 +295,33 @@
|
||||
#define MSG_BOTMOTD "BOTMOTD"
|
||||
#define TOK_BOTMOTD "BF"
|
||||
#define MSG_REMGLINE "REMGLINE" /* remove g-line */
|
||||
#define TOK_REMGLINE "BG"
|
||||
#define TOK_REMGLINE "BG"
|
||||
#define MSG_REMGZLINE "REMGZLINE" /* remove global z-line */
|
||||
#define TOK_REMGZLINE "BP"
|
||||
#define MSG_HTM "HTM"
|
||||
#define TOK_HTM "BH"
|
||||
#define MAXPARA 15
|
||||
#define MSG_UMODE2 "UMODE2"
|
||||
#define TOK_UMODE2 "|"
|
||||
#define MSG_DCCDENY "DCCDENY"
|
||||
#define TOK_DCCDENY "BI"
|
||||
#define MSG_UNDCCDENY "UNDCCDENY"
|
||||
#define TOK_UNDCCDENY "BJ"
|
||||
#define MSG_CHGNAME "CHGNAME"
|
||||
#define MSG_SVSNAME "SVSNAME"
|
||||
#define TOK_CHGNAME "BK"
|
||||
#define MSG_SHUN "SHUN"
|
||||
#define TOK_SHUN "BL"
|
||||
#define MSG_NEWJOIN "NEWJOIN" /* For CR Java Chat */
|
||||
#define MSG_POST "POST"
|
||||
#define TOK_POST "BN"
|
||||
#define MSG_INFOSERV "INFOSERV"
|
||||
#define MSG_IS "IS"
|
||||
#define TOK_INFOSERV "BO"
|
||||
|
||||
#define MSG_BOTSERV "BOTSERV"
|
||||
#define TOK_BOTSERV "BS"
|
||||
|
||||
#define MAXPARA 15
|
||||
|
||||
extern int m_private(), m_topic(), m_join(), m_part(), m_mode(), m_svsmode();
|
||||
extern int m_ping(), m_pong(), m_wallops(), m_kick(), m_svsnick();
|
||||
@@ -309,12 +329,14 @@ extern int m_nick(), m_error(), m_notice(), m_samode(), m_svsnoop();
|
||||
extern int m_invite(), m_quit(), m_kill(), m_svskill(), m_identify();
|
||||
extern int m_akill(), m_kline(), m_unkline(), m_rakill(), m_sqline();
|
||||
extern int m_zline(), m_unzline();
|
||||
extern int m_gnotice(), m_goper(), m_globops(), m_locops(), m_unsqline(), m_chatops();
|
||||
extern int m_gnotice(), m_goper(), m_globops(), m_locops(), m_unsqline(),
|
||||
m_chatops();
|
||||
extern int m_protoctl();
|
||||
extern int m_motd(), m_who(), m_whois(), m_user(), m_list();
|
||||
extern int m_server(), m_info(), m_links(), m_summon(), m_stats();
|
||||
extern int m_users(), m_version(), m_help();
|
||||
extern int m_nickserv(), m_operserv(), m_chanserv(), m_memoserv(), m_helpserv(), m_services(), m_identify();
|
||||
extern int m_nickserv(), m_operserv(), m_chanserv(), m_memoserv();
|
||||
extern int m_infoserv(), m_helpserv(), m_botserv(), m_services(), m_identify();
|
||||
extern int m_statserv();
|
||||
extern int m_squit(), m_away(), m_connect();
|
||||
extern int m_oper(), m_pass(), m_trace();
|
||||
@@ -325,148 +347,165 @@ extern int m_service(), m_userhost(), m_ison(), m_watch();
|
||||
extern int m_service(), m_servset(), m_servlist(), m_squery();
|
||||
extern int m_rehash(), m_restart(), m_die(), m_dns(), m_hash();
|
||||
/*extern int m_noshortn(),m_noshortc(),m_noshortm(),m_noshorto(),m_noshorth();*/
|
||||
|
||||
extern int m_gline(), m_remgline(), m_map(), m_svs2mode(), m_admins(), m_dalinfo();
|
||||
extern int m_gzline(), m_remgzline();
|
||||
extern int m_gline(), m_remgline(), m_map(), m_svs2mode(), m_admins(),
|
||||
m_dalinfo();
|
||||
extern int m_addline(), m_rules(), m_mkpasswd();
|
||||
extern int m_sethost(), m_nachat(), m_techat(), m_setident(), m_setname();
|
||||
extern int m_sethost(), m_nachat(), m_setident(), m_setname();
|
||||
extern int m_lag(), m_sdesc(), m_knock(), m_credits();
|
||||
extern int m_license(), m_chghost(), m_rping(), m_rpong();
|
||||
extern int m_netinfo(), m_sendumode(), m_addmotd(), m_addomotd();
|
||||
extern int m_svsmotd(), m_dusers(), m_opermotd(), m_tsctl();
|
||||
extern int m_svsmotd(), m_opermotd(), m_tsctl();
|
||||
extern int m_svsjoin(), m_sajoin(), m_svspart(), m_sapart();
|
||||
extern int m_chgident(), m_swhois(), m_svso(), m_svsfline();
|
||||
extern int m_tkl(), m_vhost(), m_botmotd(), m_sjoin(), m_htm();
|
||||
extern int m_umode2(), m_dccdeny(), m_undccdeny();
|
||||
extern int m_chgname(), m_shun(), m_post();
|
||||
#ifdef GUEST
|
||||
extern int m_guest();
|
||||
#endif
|
||||
|
||||
#ifdef MSGTAB
|
||||
struct Message *msgmap[256];
|
||||
struct Message msgtab[] = {
|
||||
{ MSG_PRIVATE, m_private, 0, MAXPARA, 1, TOK_PRIVATE, 0L },
|
||||
{ MSG_NICK, m_nick, 0, MAXPARA, 1, TOK_NICK, 0L },
|
||||
{ MSG_NOTICE, m_notice, 0, MAXPARA, 1, TOK_NOTICE, 0L },
|
||||
{ MSG_JOIN, m_join, 0, MAXPARA, 1, TOK_JOIN, 0L },
|
||||
{ MSG_MODE, m_mode, 0, MAXPARA, 1, TOK_MODE, 0L },
|
||||
{ MSG_QUIT, m_quit, 0, MAXPARA, 1, TOK_QUIT, 0L },
|
||||
{ MSG_PART, m_part, 0, MAXPARA, 1, TOK_PART, 0L },
|
||||
{ MSG_TOPIC, m_topic, 0, MAXPARA, 1, TOK_TOPIC, 0L },
|
||||
{ MSG_INVITE, m_invite, 0, MAXPARA, 1, TOK_INVITE, 0L },
|
||||
{ MSG_KICK, m_kick, 0, MAXPARA, 1, TOK_KICK, 0L },
|
||||
{ MSG_WALLOPS, m_wallops, 0, 1, 1, TOK_WALLOPS, 0L },
|
||||
{ MSG_PING, m_ping, 0, MAXPARA, 1, TOK_PING, 0L },
|
||||
{ MSG_PONG, m_pong, 0, MAXPARA, 1, TOK_PONG, 0L },
|
||||
{ MSG_ERROR, m_error, 0, MAXPARA, 1, TOK_ERROR, 0L },
|
||||
{ MSG_KILL, m_kill, 0, MAXPARA, 1, TOK_KILL, 0L },
|
||||
{ MSG_PROTOCTL,m_protoctl, 0, MAXPARA, 1, TOK_PROTOCTL,0L },
|
||||
{ MSG_USER, m_user, 0, MAXPARA, 1, TOK_USER, 0L },
|
||||
{ MSG_AWAY, m_away, 0, MAXPARA, 1, TOK_AWAY, 0L },
|
||||
{ MSG_ISON, m_ison, 0, 1, 1, TOK_ISON, 0L },
|
||||
{ MSG_WATCH, m_watch, 0, 1, 1, TOK_WATCH, 0L },
|
||||
{ MSG_SERVER, m_server, 0, MAXPARA, 1, TOK_SERVER, 0L },
|
||||
{ MSG_SQUIT, m_squit, 0, MAXPARA, 1, TOK_SQUIT, 0L },
|
||||
{ MSG_WHOIS, m_whois, 0, MAXPARA, 1, TOK_WHOIS, 0L },
|
||||
{ MSG_WHO, m_who, 0, MAXPARA, 1, TOK_WHO, 0L },
|
||||
{ MSG_WHOWAS, m_whowas, 0, MAXPARA, 1, TOK_WHOWAS, 0L },
|
||||
{ MSG_LIST, m_list, 0, MAXPARA, 1, TOK_LIST, 0L },
|
||||
{ MSG_NAMES, m_names, 0, MAXPARA, 1, TOK_NAMES, 0L },
|
||||
{ MSG_USERHOST,m_userhost, 0, 1, 1, TOK_USERHOST,0L },
|
||||
{ MSG_TRACE, m_trace, 0, MAXPARA, 1, TOK_TRACE, 0L },
|
||||
{ MSG_PASS, m_pass, 0, MAXPARA, 1, TOK_PASS, 0L },
|
||||
{ MSG_LUSERS, m_lusers, 0, MAXPARA, 1, TOK_LUSERS, 0L },
|
||||
{ MSG_TIME, m_time, 0, MAXPARA, 1, TOK_TIME, 0L },
|
||||
{ MSG_OPER, m_oper, 0, MAXPARA, 1, TOK_OPER, 0L },
|
||||
{ MSG_CONNECT, m_connect, 0, MAXPARA, 1, TOK_CONNECT, 0L },
|
||||
{ MSG_VERSION, m_version, 0, MAXPARA, 1, TOK_VERSION, 0L },
|
||||
{ MSG_STATS, m_stats, 0, MAXPARA, 1, TOK_STATS, 0L },
|
||||
{ MSG_LINKS, m_links, 0, MAXPARA, 1, TOK_LINKS, 0L },
|
||||
{ MSG_ADMIN, m_admin, 0, MAXPARA, 1, TOK_ADMIN, 0L },
|
||||
{ MSG_USERS, m_users, 0, MAXPARA, 1, TOK_USERS, 0L },
|
||||
{ MSG_SVSMODE, m_svsmode, 0, MAXPARA, 1, TOK_SVSMODE, 0L },
|
||||
{ MSG_SAMODE, m_samode, 0, MAXPARA, 1, TOK_SAMODE, 0L },
|
||||
{ MSG_SVSKILL, m_svskill, 0, MAXPARA, 1, TOK_SVSKILL, 0L },
|
||||
{ MSG_SVSNICK, m_svsnick, 0, MAXPARA, 1, TOK_SVSNICK, 0L },
|
||||
{ MSG_SVSNOOP, m_svsnoop, 0, MAXPARA, 1, TOK_SVSNOOP, 0L },
|
||||
{ MSG_CHANSERV,m_chanserv, 0, 1, 1, TOK_CHANSERV,0L },
|
||||
/* { MSG_CS, m_noshortc, 0, 1, 1, TOK_CHANSERV,0L }, */
|
||||
{ MSG_NICKSERV,m_nickserv, 0, 1, 1, TOK_NICKSERV,0L },
|
||||
/* { MSG_NS, m_noshortn, 0, 1, 1, TOK_NICKSERV,0L }, */
|
||||
{ MSG_OPERSERV,m_operserv, 0, 1, 1, TOK_OPERSERV,0L },
|
||||
/* { MSG_OS, m_noshorto, 0, 1, 1, TOK_OPERSERV,0L }, */
|
||||
{ MSG_MEMOSERV,m_memoserv, 0, 1, 1, TOK_MEMOSERV,0L },
|
||||
/*{ MSG_MS, m_noshortm, 0, 1, 1, TOK_MEMOSERV,0L }, */
|
||||
{ MSG_HELPSERV,m_helpserv, 0, 1, 1, TOK_HELPSERV,0L },
|
||||
/* { MSG_HS, m_noshorth, 0, 1, 1, TOK_HELPSERV,0L }, */
|
||||
{ MSG_SERVICES,m_services, 0, 1, 1, TOK_SERVICES,0L },
|
||||
{ MSG_IDENTIFY,m_identify, 0, 1, 1, TOK_IDENTIFY,0L },
|
||||
{ MSG_SUMMON, m_summon, 0, MAXPARA, 1, TOK_SUMMON, 0L },
|
||||
{ MSG_HELP, m_help, 0, 1, 1, TOK_HELP, 0L },
|
||||
{ MSG_HELPOP, m_help, 0, 1, 1, TOK_HELP, 0L },
|
||||
{ MSG_INFO, m_info, 0, MAXPARA, 1, TOK_INFO, 0L },
|
||||
{ MSG_MOTD, m_motd, 0, MAXPARA, 1, TOK_MOTD, 0L },
|
||||
{ MSG_CLOSE, m_close, 0, MAXPARA, 1, TOK_CLOSE, 0L },
|
||||
{ MSG_SILENCE, m_silence, 0, MAXPARA, 1, TOK_SILENCE, 0L },
|
||||
{ MSG_AKILL, m_akill, 0, MAXPARA, 1, TOK_AKILL, 0L },
|
||||
{ MSG_SQLINE, m_sqline, 0, MAXPARA, 1, TOK_SQLINE, 0L },
|
||||
{ MSG_UNSQLINE,m_unsqline, 0, MAXPARA, 1, TOK_UNSQLINE,0L },
|
||||
{ MSG_KLINE, m_kline, 0, MAXPARA, 1, TOK_KLINE, 0L },
|
||||
{ MSG_UNKLINE, m_unkline, 0, MAXPARA, 1, TOK_UNKLINE, 0L },
|
||||
{ MSG_ZLINE, m_zline, 0, MAXPARA, 1, TOK_ZLINE, 0L },
|
||||
{ MSG_UNZLINE, m_unzline, 0, MAXPARA, 1, TOK_UNZLINE, 0L },
|
||||
{ MSG_RAKILL, m_rakill, 0, MAXPARA, 1, TOK_RAKILL, 0L },
|
||||
{ MSG_GNOTICE, m_gnotice, 0, MAXPARA, 1, TOK_GNOTICE, 0L },
|
||||
{ MSG_GOPER, m_goper, 0, MAXPARA, 1, TOK_GOPER, 0L },
|
||||
{ MSG_GLOBOPS, m_globops, 0, MAXPARA, 1, TOK_GLOBOPS, 0L },
|
||||
{ MSG_CHATOPS, m_chatops, 0, 1, 1, TOK_CHATOPS, 0L },
|
||||
{ MSG_LOCOPS, m_locops, 0, 1, 1, TOK_LOCOPS, 0L },
|
||||
{ MSG_HASH, m_hash, 0, MAXPARA, 1, TOK_HASH, 0L },
|
||||
{ MSG_DNS, m_dns, 0, MAXPARA, 1, TOK_DNS, 0L },
|
||||
{ MSG_REHASH, m_rehash, 0, MAXPARA, 1, TOK_REHASH, 0L },
|
||||
{ MSG_RESTART, m_restart, 0, MAXPARA, 1, TOK_RESTART, 0L },
|
||||
{ MSG_DIE, m_die, 0, MAXPARA, 1, TOK_DIE, 0L },
|
||||
{ MSG_RULES, m_rules, 0, MAXPARA, 1, TOK_RULES, 0L },
|
||||
{ MSG_MAP, m_map, 0, MAXPARA, 1, TOK_MAP, 0L },
|
||||
{ MSG_GLINE, m_gline, 0, MAXPARA, 1, TOK_GLINE, 0L },
|
||||
{ MSG_REMGLINE,m_remgline, 0, MAXPARA, 1, TOK_REMGLINE,0L },
|
||||
{ MSG_DALINFO, m_dalinfo, 0, MAXPARA, 1, TOK_DALINFO, 0L },
|
||||
{ MSG_SVS2MODE,m_svs2mode, 0, MAXPARA, 1, TOK_SVS2MODE,0L },
|
||||
{ MSG_MKPASSWD, m_mkpasswd, 0, MAXPARA, 1, TOK_MKPASSWD, 0L },
|
||||
{ MSG_ADDLINE, m_addline, 0, 1, 1, TOK_ADDLINE, 0L },
|
||||
{ MSG_ADMINCHAT, m_admins, 0, 1, 1, TOK_ADMINCHAT, 0L },
|
||||
{ MSG_SETHOST, m_sethost, 0, MAXPARA, 1, TOK_SETHOST, 0L },
|
||||
{ MSG_TECHAT, m_techat, 0, 1, 1, TOK_TECHAT, 0L },
|
||||
{ MSG_NACHAT, m_nachat, 0, 1, 1, TOK_NACHAT, 0L },
|
||||
{ MSG_SETIDENT, m_setident,0, MAXPARA, 1, TOK_SETIDENT, 0L },
|
||||
{ MSG_SETNAME, m_setname, 0, 1, 1, TOK_SETNAME, 0L },
|
||||
{ MSG_LAG, m_lag, 0, MAXPARA, 1, TOK_LAG, 0L },
|
||||
{ MSG_SDESC, m_sdesc, 0, 1, 1, TOK_SDESC, 0L },
|
||||
{ MSG_STATSERV,m_statserv, 0, 1, 1, TOK_STATSERV,0L },
|
||||
{ MSG_KNOCK, m_knock, 0, 2, 1, TOK_KNOCK, 0L },
|
||||
{ MSG_CREDITS, m_credits, 0, MAXPARA, 1, TOK_CREDITS, 0L },
|
||||
{ MSG_LICENSE, m_license, 0, MAXPARA, 1, TOK_LICENSE, 0L },
|
||||
{ MSG_CHGHOST, m_chghost, 0, MAXPARA, 1, TOK_CHGHOST, 0L },
|
||||
{ MSG_RPING, m_rping, 0, MAXPARA, 1, TOK_RPING, 0L },
|
||||
{ MSG_RPONG, m_rpong, 0, MAXPARA, 1, TOK_RPONG, 0L },
|
||||
{ MSG_NETINFO, m_netinfo, 0, MAXPARA, 1, TOK_NETINFO, 0L},
|
||||
{ MSG_SENDUMODE, m_sendumode, 0, MAXPARA, 1, TOK_SENDUMODE, 0L},
|
||||
{ MSG_SMO, m_sendumode, 0, MAXPARA, 1, TOK_SMO, 0L},
|
||||
{ MSG_ADDMOTD, m_addmotd, 0, 1, 1, TOK_ADDMOTD, 0L},
|
||||
{ MSG_ADDOMOTD, m_addomotd, 0, 1, 1, TOK_ADDOMOTD, 0L},
|
||||
{ MSG_SVSMOTD, m_svsmotd, 0, MAXPARA, 1, TOK_SVSMOTD, 0L},
|
||||
{ MSG_DUSERS, m_dusers, 0, MAXPARA, 1, TOK_DUSERS, 0L},
|
||||
{ MSG_OPERMOTD, m_opermotd, 0, MAXPARA, 1, TOK_OPERMOTD, 0L},
|
||||
{ MSG_TSCTL, m_tsctl, 0, MAXPARA, 1, TOK_TSCTL, 0L},
|
||||
{ MSG_SVSJOIN, m_svsjoin, 0, MAXPARA, 1, TOK_SVSJOIN, 0L},
|
||||
{ MSG_SAJOIN, m_sajoin, 0, MAXPARA, 1, TOK_SAJOIN,0L},
|
||||
{ MSG_SVSPART, m_svspart, 0, MAXPARA, 1, TOK_SVSPART, 0L},
|
||||
{ MSG_SAPART, m_sapart, 0, MAXPARA, 1, TOK_SAPART,0L},
|
||||
{ MSG_CHGIDENT, m_chgident,0, MAXPARA, 1, TOK_CHGIDENT,0L},
|
||||
{ MSG_SWHOIS, m_swhois, 0, MAXPARA, 1, TOK_SWHOIS, 0L},
|
||||
{ MSG_SVSO, m_svso, 0, MAXPARA, 1, TOK_SVSO, 0L},
|
||||
{ MSG_SVSFLINE, m_svsfline, 0, MAXPARA,1,TOK_SVSFLINE,0L},
|
||||
{ MSG_TKL, m_tkl, 0, MAXPARA,1,TOK_TKL,0L},
|
||||
{ MSG_VHOST, m_vhost, 0, MAXPARA,1,TOK_VHOST,0L},
|
||||
{ MSG_BOTMOTD, m_botmotd, 0, MAXPARA,1,TOK_BOTMOTD,0L},
|
||||
{ MSG_SJOIN, m_sjoin, 0, MAXPARA, 1, TOK_SJOIN,0L},
|
||||
{ MSG_HTM, m_htm, 0, MAXPARA, 1, TOK_HTM, 0L},
|
||||
{ (char *) 0, (int (*)()) 0 , 0, 0, 0, 0, 0L}
|
||||
{MSG_PRIVATE, m_private, 0, MAXPARA, TOK_PRIVATE, 0L},
|
||||
{MSG_NOTICE, m_notice, 0, MAXPARA, TOK_NOTICE, 0L},
|
||||
{MSG_MODE, m_mode, 0, MAXPARA, TOK_MODE, 0L},
|
||||
{MSG_NICK, m_nick, 0, MAXPARA, TOK_NICK, 0L},
|
||||
{MSG_JOIN, m_join, 0, MAXPARA, TOK_JOIN, 0L},
|
||||
{MSG_PING, m_ping, 0, MAXPARA, TOK_PING, 0L},
|
||||
{MSG_WHOIS, m_whois, 0, MAXPARA, TOK_WHOIS, 0L},
|
||||
{MSG_ISON, m_ison, 0, 1, TOK_ISON, 0L},
|
||||
{MSG_USER, m_user, 0, MAXPARA, TOK_USER, 0L},
|
||||
{MSG_PONG, m_pong, 0, MAXPARA, TOK_PONG, 0L},
|
||||
{MSG_PART, m_part, 0, MAXPARA, TOK_PART, 0L},
|
||||
{MSG_QUIT, m_quit, 0, MAXPARA, TOK_QUIT, 0L},
|
||||
{MSG_WATCH, m_watch, 0, 1, TOK_WATCH, 0L},
|
||||
{MSG_USERHOST, m_userhost, 0, 1, TOK_USERHOST, 0L},
|
||||
{MSG_SVSNICK, m_svsnick, 0, MAXPARA, TOK_SVSNICK, 0L},
|
||||
{MSG_SVSMODE, m_svsmode, 0, MAXPARA, TOK_SVSMODE, 0L},
|
||||
{MSG_LUSERS, m_lusers, 0, MAXPARA, TOK_LUSERS, 0L},
|
||||
{MSG_IDENTIFY, m_identify, 0, 1, TOK_IDENTIFY, 0L},
|
||||
{MSG_CHANSERV, m_chanserv, 0, 1, TOK_CHANSERV, 0L},
|
||||
{MSG_TOPIC, m_topic, 0, MAXPARA, TOK_TOPIC, 0L},
|
||||
{MSG_INVITE, m_invite, 0, MAXPARA, TOK_INVITE, 0L},
|
||||
{MSG_KICK, m_kick, 0, MAXPARA, TOK_KICK, 0L},
|
||||
{MSG_WALLOPS, m_wallops, 0, 1, TOK_WALLOPS, 0L},
|
||||
{MSG_ERROR, m_error, 0, MAXPARA, TOK_ERROR, 0L},
|
||||
{MSG_KILL, m_kill, 0, MAXPARA, TOK_KILL, 0L},
|
||||
{MSG_PROTOCTL, m_protoctl, 0, MAXPARA, TOK_PROTOCTL, 0L},
|
||||
{MSG_AWAY, m_away, 0, MAXPARA, TOK_AWAY, 0L},
|
||||
{MSG_SERVER, m_server, 0, MAXPARA, TOK_SERVER, 0L},
|
||||
{MSG_SQUIT, m_squit, 0, MAXPARA, TOK_SQUIT, 0L},
|
||||
{MSG_WHO, m_who, 0, MAXPARA, TOK_WHO, 0L},
|
||||
{MSG_WHOWAS, m_whowas, 0, MAXPARA, TOK_WHOWAS, 0L},
|
||||
{MSG_LIST, m_list, 0, MAXPARA, TOK_LIST, 0L},
|
||||
{MSG_NAMES, m_names, 0, MAXPARA, TOK_NAMES, 0L},
|
||||
{MSG_TRACE, m_trace, 0, MAXPARA, TOK_TRACE, 0L},
|
||||
{MSG_PASS, m_pass, 0, MAXPARA, TOK_PASS, 0L},
|
||||
{MSG_TIME, m_time, 0, MAXPARA, TOK_TIME, 0L},
|
||||
{MSG_OPER, m_oper, 0, MAXPARA, TOK_OPER, 0L},
|
||||
{MSG_CONNECT, m_connect, 0, MAXPARA, TOK_CONNECT, 0L},
|
||||
{MSG_VERSION, m_version, 0, MAXPARA, TOK_VERSION, 0L},
|
||||
{MSG_STATS, m_stats, 0, MAXPARA, TOK_STATS, 0L},
|
||||
{MSG_LINKS, m_links, 0, MAXPARA, TOK_LINKS, 0L},
|
||||
{MSG_ADMIN, m_admin, 0, MAXPARA, TOK_ADMIN, 0L},
|
||||
{MSG_SUMMON, m_summon, 0, 1, TOK_SUMMON, 0L},
|
||||
{MSG_USERS, m_users, 0, MAXPARA, TOK_USERS, 0L},
|
||||
{MSG_SAMODE, m_samode, 0, MAXPARA, TOK_SAMODE, 0L},
|
||||
{MSG_SVSKILL, m_svskill, 0, MAXPARA, TOK_SVSKILL, 0L},
|
||||
{MSG_SVSNOOP, m_svsnoop, 0, MAXPARA, TOK_SVSNOOP, 0L},
|
||||
{MSG_CS, m_chanserv, 0, 1, TOK_CHANSERV, 0L},
|
||||
{MSG_NICKSERV, m_nickserv, 0, 1, TOK_NICKSERV, 0L},
|
||||
{MSG_NS, m_nickserv, 0, 1, TOK_NICKSERV, 0L},
|
||||
{MSG_INFOSERV, m_infoserv, 0, 1, TOK_INFOSERV, 0L},
|
||||
{MSG_IS, m_infoserv, 0, 1, TOK_INFOSERV, 0L},
|
||||
{MSG_OPERSERV, m_operserv, 0, 1, TOK_OPERSERV, 0L},
|
||||
{MSG_OS, m_operserv, 0, 1, TOK_OPERSERV, 0L},
|
||||
{MSG_MEMOSERV, m_memoserv, 0, 1, TOK_MEMOSERV, 0L},
|
||||
{MSG_MS, m_memoserv, 0, 1, TOK_MEMOSERV, 0L},
|
||||
{MSG_HELPSERV, m_helpserv, 0, 1, TOK_HELPSERV, 0L},
|
||||
{MSG_HS, m_helpserv, 0, 1, TOK_HELPSERV, 0L},
|
||||
{MSG_SERVICES, m_services, 0, 1, TOK_SERVICES, 0L},
|
||||
{MSG_HELP, m_help, 0, 1, TOK_HELP, 0L},
|
||||
{MSG_HELPOP, m_help, 0, 1, TOK_HELP, 0L},
|
||||
{MSG_INFO, m_info, 0, MAXPARA, TOK_INFO, 0L},
|
||||
{MSG_MOTD, m_motd, 0, MAXPARA, TOK_MOTD, 0L},
|
||||
{MSG_CLOSE, m_close, 0, MAXPARA, TOK_CLOSE, 0L},
|
||||
{MSG_SILENCE, m_silence, 0, MAXPARA, TOK_SILENCE, 0L},
|
||||
{MSG_AKILL, m_akill, 0, MAXPARA, TOK_AKILL, 0L},
|
||||
{MSG_SQLINE, m_sqline, 0, MAXPARA, TOK_SQLINE, 0L},
|
||||
{MSG_UNSQLINE, m_unsqline, 0, MAXPARA, TOK_UNSQLINE, 0L},
|
||||
{MSG_KLINE, m_kline, 0, MAXPARA, TOK_KLINE, 0L},
|
||||
{MSG_UNKLINE, m_unkline, 0, MAXPARA, TOK_UNKLINE, 0L},
|
||||
{MSG_ZLINE, m_zline, 0, MAXPARA, TOK_ZLINE, 0L},
|
||||
{MSG_UNZLINE, m_unzline, 0, MAXPARA, TOK_UNZLINE, 0L},
|
||||
{MSG_RAKILL, m_rakill, 0, MAXPARA, TOK_RAKILL, 0L},
|
||||
{MSG_GNOTICE, m_gnotice, 0, MAXPARA, TOK_GNOTICE, 0L},
|
||||
{MSG_GOPER, m_goper, 0, MAXPARA, TOK_GOPER, 0L},
|
||||
{MSG_GLOBOPS, m_globops, 0, MAXPARA, TOK_GLOBOPS, 0L},
|
||||
{MSG_CHATOPS, m_chatops, 0, 1, TOK_CHATOPS, 0L},
|
||||
{MSG_LOCOPS, m_locops, 0, 1, TOK_LOCOPS, 0L},
|
||||
{MSG_HASH, m_hash, 0, MAXPARA, TOK_HASH, 0L},
|
||||
{MSG_DNS, m_dns, 0, MAXPARA, TOK_DNS, 0L},
|
||||
{MSG_REHASH, m_rehash, 0, MAXPARA, TOK_REHASH, 0L},
|
||||
{MSG_RESTART, m_restart, 0, MAXPARA, TOK_RESTART, 0L},
|
||||
{MSG_DIE, m_die, 0, MAXPARA, TOK_DIE, 0L},
|
||||
{MSG_RULES, m_rules, 0, MAXPARA, TOK_RULES, 0L},
|
||||
{MSG_MAP, m_map, 0, MAXPARA, TOK_MAP, 0L},
|
||||
{MSG_GLINE, m_gline, 0, MAXPARA, TOK_GLINE, 0L},
|
||||
{MSG_REMGLINE, m_remgline, 0, MAXPARA, TOK_REMGLINE, 0L},
|
||||
{MSG_GZLINE, m_gzline, 0, MAXPARA, TOK_GZLINE, 0L},
|
||||
{MSG_REMGZLINE, m_remgzline, 0, MAXPARA, TOK_REMGZLINE, 0L},
|
||||
{MSG_DALINFO, m_dalinfo, 0, MAXPARA, TOK_DALINFO, 0L},
|
||||
{MSG_SVS2MODE, m_svs2mode, 0, MAXPARA, TOK_SVS2MODE, 0L},
|
||||
{MSG_MKPASSWD, m_mkpasswd, 0, MAXPARA, TOK_MKPASSWD, 0L},
|
||||
{MSG_ADDLINE, m_addline, 0, 1, TOK_ADDLINE, 0L},
|
||||
{MSG_ADMINCHAT, m_admins, 0, 1, TOK_ADMINCHAT, 0L},
|
||||
{MSG_SETHOST, m_sethost, 0, MAXPARA, TOK_SETHOST, 0L},
|
||||
{MSG_NACHAT, m_nachat, 0, 1, TOK_NACHAT, 0L},
|
||||
{MSG_SETIDENT, m_setident, 0, MAXPARA, TOK_SETIDENT, 0L},
|
||||
{MSG_SETNAME, m_setname, 0, 1, TOK_SETNAME, 0L},
|
||||
{MSG_LAG, m_lag, 0, MAXPARA, TOK_LAG, 0L},
|
||||
{MSG_SDESC, m_sdesc, 0, 1, TOK_SDESC, 0L},
|
||||
{MSG_STATSERV, m_statserv, 0, 1, TOK_STATSERV, 0L},
|
||||
{MSG_KNOCK, m_knock, 0, 2, TOK_KNOCK, 0L},
|
||||
{MSG_CREDITS, m_credits, 0, MAXPARA, TOK_CREDITS, 0L},
|
||||
{MSG_LICENSE, m_license, 0, MAXPARA, TOK_LICENSE, 0L},
|
||||
{MSG_CHGHOST, m_chghost, 0, MAXPARA, TOK_CHGHOST, 0L},
|
||||
{MSG_RPING, m_rping, 0, MAXPARA, TOK_RPING, 0L},
|
||||
{MSG_RPONG, m_rpong, 0, MAXPARA, TOK_RPONG, 0L},
|
||||
{MSG_NETINFO, m_netinfo, 0, MAXPARA, TOK_NETINFO, 0L},
|
||||
{MSG_SENDUMODE, m_sendumode, 0, MAXPARA, TOK_SENDUMODE, 0L},
|
||||
{MSG_SMO, m_sendumode, 0, MAXPARA, TOK_SMO, 0L},
|
||||
{MSG_ADDMOTD, m_addmotd, 0, 1, TOK_ADDMOTD, 0L},
|
||||
{MSG_ADDOMOTD, m_addomotd, 0, 1, TOK_ADDOMOTD, 0L},
|
||||
{MSG_SVSMOTD, m_svsmotd, 0, MAXPARA, TOK_SVSMOTD, 0L},
|
||||
{MSG_OPERMOTD, m_opermotd, 0, MAXPARA, TOK_OPERMOTD, 0L},
|
||||
{MSG_TSCTL, m_tsctl, 0, MAXPARA, TOK_TSCTL, 0L},
|
||||
{MSG_SVSJOIN, m_svsjoin, 0, MAXPARA, TOK_SVSJOIN, 0L},
|
||||
{MSG_SAJOIN, m_sajoin, 0, MAXPARA, TOK_SAJOIN, 0L},
|
||||
{MSG_SVSPART, m_svspart, 0, MAXPARA, TOK_SVSPART, 0L},
|
||||
{MSG_SAPART, m_sapart, 0, MAXPARA, TOK_SAPART, 0L},
|
||||
{MSG_CHGIDENT, m_chgident, 0, MAXPARA, TOK_CHGIDENT, 0L},
|
||||
{MSG_SWHOIS, m_swhois, 0, MAXPARA, TOK_SWHOIS, 0L},
|
||||
{MSG_SVSO, m_svso, 0, MAXPARA, TOK_SVSO, 0L},
|
||||
{MSG_SVSFLINE, m_svsfline, 0, MAXPARA, TOK_SVSFLINE, 0L},
|
||||
{MSG_TKL, m_tkl, 0, MAXPARA, TOK_TKL, 0L},
|
||||
{MSG_VHOST, m_vhost, 0, MAXPARA, TOK_VHOST, 0L},
|
||||
{MSG_BOTMOTD, m_botmotd, 0, MAXPARA, TOK_BOTMOTD, 0L},
|
||||
{MSG_SJOIN, m_sjoin, 0, MAXPARA, TOK_SJOIN, 0L},
|
||||
{MSG_HTM, m_htm, 0, MAXPARA, TOK_HTM, 0L},
|
||||
{MSG_UMODE2, m_umode2, 0, MAXPARA, TOK_UMODE2, 0L},
|
||||
{MSG_DCCDENY, m_dccdeny, 0, 2, TOK_DCCDENY, 0L},
|
||||
{MSG_UNDCCDENY, m_undccdeny, 0, MAXPARA, TOK_UNDCCDENY, 0L},
|
||||
{MSG_CHGNAME, m_chgname, 0, MAXPARA, TOK_CHGNAME, 0L},
|
||||
{MSG_SVSNAME, m_chgname, 0, MAXPARA, TOK_CHGNAME, 0L},
|
||||
{MSG_SHUN, m_shun, 0, MAXPARA, TOK_SHUN, 0L},
|
||||
{MSG_NEWJOIN, m_join, 0, MAXPARA, TOK_JOIN, 0L},
|
||||
{MSG_BOTSERV, m_botserv, 0, MAXPARA, TOK_BOTSERV,0L},
|
||||
{TOK_BOTSERV, m_botserv, 0, MAXPARA, TOK_BOTSERV,0L},
|
||||
{(char *)0, (int (*)())0, 0, 0, 0, 0L}
|
||||
};
|
||||
|
||||
#else
|
||||
|
||||
+112
-92
@@ -23,10 +23,10 @@
|
||||
/*
|
||||
* Define constants based on rfc883
|
||||
*/
|
||||
#define PACKETSZ 512 /* maximum packet size */
|
||||
#define MAXDNAME 256 /* maximum domain name */
|
||||
#define MAXCDNAME 255 /* maximum compressed domain name */
|
||||
#define MAXLABEL 63 /* maximum length of domain label */
|
||||
#define PACKETSZ 512 /* maximum packet size */
|
||||
#define MAXDNAME 256 /* maximum domain name */
|
||||
#define MAXCDNAME 255 /* maximum compressed domain name */
|
||||
#define MAXLABEL 63 /* maximum length of domain label */
|
||||
/* Number of bytes of fixed size data in query structure */
|
||||
#define QFIXEDSZ 4
|
||||
/* number of bytes of fixed size data in resource record */
|
||||
@@ -40,74 +40,94 @@
|
||||
/*
|
||||
* Currently defined opcodes
|
||||
*/
|
||||
#define QUERY 0x0 /* standard query */
|
||||
#define IQUERY 0x1 /* inverse query */
|
||||
#define STATUS 0x2 /* nameserver status query */
|
||||
#define QUERY 0x0 /* standard query */
|
||||
#define IQUERY 0x1 /* inverse query */
|
||||
#define STATUS 0x2 /* nameserver status query */
|
||||
/*#define xxx 0x3 /* 0x3 reserved */
|
||||
/* non standard */
|
||||
#define UPDATEA 0x9 /* add resource record */
|
||||
#define UPDATED 0xa /* delete a specific resource record */
|
||||
#define UPDATEDA 0xb /* delete all nemed resource record */
|
||||
#define UPDATEM 0xc /* modify a specific resource record */
|
||||
#define UPDATEMA 0xd /* modify all named resource record */
|
||||
#define UPDATEA 0x9 /* add resource record */
|
||||
#define UPDATED 0xa /* delete a specific resource record */
|
||||
#define UPDATEDA 0xb /* delete all nemed resource record */
|
||||
#define UPDATEM 0xc /* modify a specific resource record */
|
||||
#define UPDATEMA 0xd /* modify all named resource record */
|
||||
|
||||
#define ZONEINIT 0xe /* initial zone transfer */
|
||||
#define ZONEREF 0xf /* incremental zone referesh */
|
||||
#define ZONEINIT 0xe /* initial zone transfer */
|
||||
#define ZONEREF 0xf /* incremental zone referesh */
|
||||
|
||||
/*
|
||||
* Currently defined response codes
|
||||
*/
|
||||
#ifdef NOERROR /* defined by solaris2 in */
|
||||
#undef NOERROR /* <sys/stream.h> to be -1 */
|
||||
#ifdef NOERROR /* defined by solaris2 in */
|
||||
#undef NOERROR /* <sys/stream.h> to be -1 */
|
||||
#endif
|
||||
#define NOERROR 0 /* no error */
|
||||
#define FORMERR 1 /* format error */
|
||||
#define SERVFAIL 2 /* server failure */
|
||||
#define NXDOMAIN 3 /* non existent domain */
|
||||
#define NOTIMP 4 /* not implemented */
|
||||
#define REFUSED 5 /* query refused */
|
||||
#define NOERROR 0 /* no error */
|
||||
#define FORMERR 1 /* format error */
|
||||
#define SERVFAIL 2 /* server failure */
|
||||
#define NXDOMAIN 3 /* non existent domain */
|
||||
#define NOTIMP 4 /* not implemented */
|
||||
#define REFUSED 5 /* query refused */
|
||||
/* non standard */
|
||||
#define NOCHANGE 0xf /* update failed to change db */
|
||||
#define NOCHANGE 0xf /* update failed to change db */
|
||||
|
||||
/*
|
||||
* Type values for resources and queries
|
||||
*/
|
||||
#define T_A 1 /* host address */
|
||||
#define T_NS 2 /* authoritative server */
|
||||
#define T_MD 3 /* mail destination */
|
||||
#define T_MF 4 /* mail forwarder */
|
||||
#define T_CNAME 5 /* connonical name */
|
||||
#define T_SOA 6 /* start of authority zone */
|
||||
#define T_MB 7 /* mailbox domain name */
|
||||
#define T_MG 8 /* mail group member */
|
||||
#define T_MR 9 /* mail rename name */
|
||||
#define T_NULL 10 /* null resource record */
|
||||
#define T_WKS 11 /* well known service */
|
||||
#define T_PTR 12 /* domain name pointer */
|
||||
#define T_HINFO 13 /* host information */
|
||||
#define T_MINFO 14 /* mailbox information */
|
||||
#define T_MX 15 /* mail routing information */
|
||||
#define T_TXT 16 /* text strings */
|
||||
#define T_A 1 /* host address */
|
||||
#define T_NS 2 /* authoritative server */
|
||||
#define T_MD 3 /* mail destination */
|
||||
#define T_MF 4 /* mail forwarder */
|
||||
#define T_CNAME 5 /* connonical name */
|
||||
#define T_SOA 6 /* start of authority zone */
|
||||
#define T_MB 7 /* mailbox domain name */
|
||||
#define T_MG 8 /* mail group member */
|
||||
#define T_MR 9 /* mail rename name */
|
||||
#define T_NULL 10 /* null resource record */
|
||||
#define T_WKS 11 /* well known service */
|
||||
#define T_PTR 12 /* domain name pointer */
|
||||
#define T_HINFO 13 /* host information */
|
||||
#define T_MINFO 14 /* mailbox information */
|
||||
#define T_MX 15 /* mail routing information */
|
||||
#define T_TXT 16 /* text strings */
|
||||
#define T_RP 17 /* responsible person */
|
||||
#define T_AFSDB 18 /* AFS cell database */
|
||||
#define T_X25 19 /* X_25 calling address */
|
||||
#define T_ISDN 20 /* ISDN calling address */
|
||||
#define T_RT 21 /* router */
|
||||
#define T_NSAP 22 /* NSAP address */
|
||||
#define T_NSAP_PTR 23 /* reverse NSAP lookup (deprecated) */
|
||||
#define T_SIG 24 /* security signature */
|
||||
#define T_KEY 25 /* security key */
|
||||
#define T_PX 26 /* X.400 mail mapping */
|
||||
#define T_GPOS 27 /* geographical position (withdrawn) */
|
||||
#define T_AAAA 28 /* IP6 Address */
|
||||
#define T_LOC 29 /* Location Information */
|
||||
#define T_NXT 30 /* Next Valid Name in Zone */
|
||||
#define T_EID 31 /* Endpoint identifier */
|
||||
#define T_NIMLOC 32 /* Nimrod locator */
|
||||
#define T_SRV 33 /* Server selection */
|
||||
#define T_ATMA 34 /* ATM Address */
|
||||
#define T_NAPTR 35 /* Naming Authority PoinTeR */
|
||||
|
||||
/* non standard */
|
||||
#define T_UINFO 100 /* user (finger) information */
|
||||
#define T_UID 101 /* user ID */
|
||||
#define T_GID 102 /* group ID */
|
||||
#define T_UNSPEC 103 /* Unspecified format (binary data) */
|
||||
#define T_UINFO 100 /* user (finger) information */
|
||||
#define T_UID 101 /* user ID */
|
||||
#define T_GID 102 /* group ID */
|
||||
#define T_UNSPEC 103 /* Unspecified format (binary data) */
|
||||
/* Query type values which do not appear in resource records */
|
||||
#define T_AXFR 252 /* transfer zone of authority */
|
||||
#define T_MAILB 253 /* transfer mailbox records */
|
||||
#define T_MAILA 254 /* transfer mail agent records */
|
||||
#define T_ANY 255 /* wildcard match */
|
||||
#define T_AXFR 252 /* transfer zone of authority */
|
||||
#define T_MAILB 253 /* transfer mailbox records */
|
||||
#define T_MAILA 254 /* transfer mail agent records */
|
||||
#define T_ANY 255 /* wildcard match */
|
||||
|
||||
/*
|
||||
* Values for class field
|
||||
*/
|
||||
|
||||
#define C_IN 1 /* the arpa internet */
|
||||
#define C_CHAOS 3 /* for chaos net at MIT */
|
||||
#define C_HS 4 /* for Hesiod name server at MIT */
|
||||
#define C_IN 1 /* the arpa internet */
|
||||
#define C_CHAOS 3 /* for chaos net at MIT */
|
||||
#define C_HS 4 /* for Hesiod name server at MIT */
|
||||
/* Query class values which do not appear in resource records */
|
||||
#define C_ANY 255 /* wildcard match */
|
||||
#define C_ANY 255 /* wildcard match */
|
||||
|
||||
/*
|
||||
* Status return codes for T_UNSPEC conversion routines
|
||||
@@ -130,10 +150,10 @@
|
||||
#define BYTE_ORDER LITTLE_ENDIAN
|
||||
|
||||
#endif
|
||||
#if defined(sel) || defined(pyr) || defined(mc68000) || defined(sparc) || \
|
||||
#if defined(sel) || defined(mc68000) || defined(sparc) || \
|
||||
defined(is68k) || defined(tahoe) || defined(ibm032) || defined(ibm370) || \
|
||||
defined(MIPSEB) || defined(__hpux) || defined(__convex__) || \
|
||||
defined(__pyr__) || defined(__mc68000__) || defined(__sparc__) ||\
|
||||
defined(__mc68000__) || defined(__sparc__) ||\
|
||||
defined(_IBMR2) || defined (BIT_ZERO_ON_LEFT)
|
||||
#define BYTE_ORDER BIG_ENDIAN
|
||||
#endif
|
||||
@@ -141,7 +161,7 @@
|
||||
|
||||
#ifndef BYTE_ORDER
|
||||
/* you must determine what the correct bit order is for your compiler */
|
||||
UNDEFINED_BIT_ORDER;
|
||||
UNDEFINED_BIT_ORDER;
|
||||
#endif
|
||||
/*
|
||||
* Structure for query header, the order of the fields is machine and
|
||||
@@ -151,38 +171,38 @@
|
||||
*/
|
||||
|
||||
typedef struct {
|
||||
u_short id; /* query identification number */
|
||||
u_short id; /* query identification number */
|
||||
#if BYTE_ORDER == BIG_ENDIAN
|
||||
/* fields in third byte */
|
||||
u_char qr:1; /* response flag */
|
||||
u_char opcode:4; /* purpose of message */
|
||||
u_char aa:1; /* authoritive answer */
|
||||
u_char tc:1; /* truncated message */
|
||||
u_char rd:1; /* recursion desired */
|
||||
/* fields in fourth byte */
|
||||
u_char ra:1; /* recursion available */
|
||||
u_char pr:1; /* primary server required (non standard) */
|
||||
u_char unused:2; /* unused bits */
|
||||
u_char rcode:4; /* response code */
|
||||
/* fields in third byte */
|
||||
u_char qr:1; /* response flag */
|
||||
u_char opcode:4; /* purpose of message */
|
||||
u_char aa:1; /* authoritive answer */
|
||||
u_char tc:1; /* truncated message */
|
||||
u_char rd:1; /* recursion desired */
|
||||
/* fields in fourth byte */
|
||||
u_char ra:1; /* recursion available */
|
||||
u_char pr:1; /* primary server required (non standard) */
|
||||
u_char unused:2; /* unused bits */
|
||||
u_char rcode:4; /* response code */
|
||||
#endif
|
||||
#if BYTE_ORDER == LITTLE_ENDIAN || BYTE_ORDER == PDP_ENDIAN
|
||||
/* fields in third byte */
|
||||
u_char rd:1; /* recursion desired */
|
||||
u_char tc:1; /* truncated message */
|
||||
u_char aa:1; /* authoritive answer */
|
||||
u_char opcode:4; /* purpose of message */
|
||||
u_char qr:1; /* response flag */
|
||||
/* fields in fourth byte */
|
||||
u_char rcode:4; /* response code */
|
||||
u_char unused:2; /* unused bits */
|
||||
u_char pr:1; /* primary server required (non standard) */
|
||||
u_char ra:1; /* recursion available */
|
||||
/* fields in third byte */
|
||||
u_char rd:1; /* recursion desired */
|
||||
u_char tc:1; /* truncated message */
|
||||
u_char aa:1; /* authoritive answer */
|
||||
u_char opcode:4; /* purpose of message */
|
||||
u_char qr:1; /* response flag */
|
||||
/* fields in fourth byte */
|
||||
u_char rcode:4; /* response code */
|
||||
u_char unused:2; /* unused bits */
|
||||
u_char pr:1; /* primary server required (non standard) */
|
||||
u_char ra:1; /* recursion available */
|
||||
#endif
|
||||
/* remaining bytes */
|
||||
u_short qdcount; /* number of question entries */
|
||||
u_short ancount; /* number of answer entries */
|
||||
u_short nscount; /* number of authority entries */
|
||||
u_short arcount; /* number of resource entries */
|
||||
/* remaining bytes */
|
||||
u_short qdcount; /* number of question entries */
|
||||
u_short ancount; /* number of answer entries */
|
||||
u_short nscount; /* number of authority entries */
|
||||
u_short arcount; /* number of resource entries */
|
||||
} HEADER;
|
||||
|
||||
/*
|
||||
@@ -194,23 +214,23 @@ typedef struct {
|
||||
* Structure for passing resource records around.
|
||||
*/
|
||||
struct rrec {
|
||||
short r_zone; /* zone number */
|
||||
short r_class; /* class number */
|
||||
short r_type; /* type number */
|
||||
short r_zone; /* zone number */
|
||||
short r_class; /* class number */
|
||||
short r_type; /* type number */
|
||||
#ifdef __alpha
|
||||
u_int r_ttl; /* time to live */
|
||||
u_int r_ttl; /* time to live */
|
||||
#else
|
||||
u_long r_ttl; /* time to live */
|
||||
u_long r_ttl; /* time to live */
|
||||
#endif
|
||||
int r_size; /* size of data area */
|
||||
char *r_data; /* pointer to data */
|
||||
int r_size; /* size of data area */
|
||||
char *r_data; /* pointer to data */
|
||||
};
|
||||
|
||||
extern u_short _getshort();
|
||||
extern u_short _getshort();
|
||||
#ifdef __alpha
|
||||
extern u_int _getlong();
|
||||
extern u_int _getlong();
|
||||
#else
|
||||
extern u_long _getlong();
|
||||
extern u_long _getlong();
|
||||
#endif
|
||||
|
||||
/*
|
||||
|
||||
+24
-10
@@ -1,5 +1,5 @@
|
||||
/************************************************************************
|
||||
* IRC - Internet Relay Chat, include/numeric.h
|
||||
* Unreal Internet Relay Chat Daemon, include/numeric.h
|
||||
* Copyright (C) 1990 Jarkko Oikarinen
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
@@ -20,8 +20,6 @@
|
||||
*/
|
||||
|
||||
/*
|
||||
* -- Potvin -- Feb 20/98
|
||||
*
|
||||
* Added numerics 600-799 as numeric_replies2[], we ran out
|
||||
*/
|
||||
|
||||
@@ -78,12 +76,16 @@
|
||||
#define ERR_NOLOGIN 444
|
||||
#define ERR_SUMMONDISABLED 445
|
||||
#define ERR_USERSDISABLED 446
|
||||
#define ERR_NONICKCHANGE 447
|
||||
|
||||
#define ERR_NOTREGISTERED 451
|
||||
|
||||
#define ERR_HOSTILENAME 455
|
||||
|
||||
#define ERR_NOHIDING 459
|
||||
#ifdef ENABLE_INVISOPER
|
||||
#define ERR_NOHIDING 459
|
||||
#endif
|
||||
|
||||
#define ERR_NOTFORHALFOPS 460
|
||||
#define ERR_NEEDMOREPARAMS 461
|
||||
#define ERR_ALREADYREGISTRED 462
|
||||
@@ -112,6 +114,8 @@
|
||||
#define ERR_ATTACKDENY 484
|
||||
#define ERR_KILLDENY 485
|
||||
|
||||
#define ERR_HTMDISABLED 486
|
||||
|
||||
#define ERR_NOOPERHOST 491
|
||||
#define ERR_NOSERVICEHOST 492
|
||||
|
||||
@@ -141,7 +145,7 @@
|
||||
#define RPL_WHOISREGNICK 307
|
||||
#define RPL_RULESSTART 308
|
||||
#define RPL_ENDOFRULES 309
|
||||
#define RPL_WHOISHELPOP 310 /* -Donwulff */
|
||||
#define RPL_WHOISHELPOP 310 /* -Donwulff */
|
||||
|
||||
#define RPL_WHOISUSER 311
|
||||
#define RPL_WHOISSERVER 312
|
||||
@@ -151,7 +155,7 @@
|
||||
/* rpl_endofwho below (315) */
|
||||
#define RPL_ENDOFWHOWAS 369
|
||||
|
||||
#define RPL_WHOISCHANOP 316 /* redundant and not needed but reserved */
|
||||
#define RPL_WHOISCHANOP 316 /* redundant and not needed but reserved */
|
||||
#define RPL_WHOISIDLE 317
|
||||
|
||||
#define RPL_ENDOFWHOIS 318
|
||||
@@ -206,6 +210,10 @@
|
||||
#define RPL_YOURESERVICE 383
|
||||
#define RPL_MYPORTIS 384
|
||||
#define RPL_NOTOPERANYMORE 385
|
||||
#define RPL_QLIST 386
|
||||
#define RPL_ENDOFQLIST 387
|
||||
#define RPL_ALIST 388
|
||||
#define RPL_ENDOFALIST 389
|
||||
|
||||
#define RPL_TIME 391
|
||||
#define RPL_USERSSTART 392
|
||||
@@ -217,6 +225,7 @@
|
||||
#define RPL_TRACECONNECTING 201
|
||||
#define RPL_TRACEHANDSHAKE 202
|
||||
#define RPL_TRACEUNKNOWN 203
|
||||
|
||||
#define RPL_TRACEOPERATOR 204
|
||||
#define RPL_TRACEUSER 205
|
||||
#define RPL_TRACESERVER 206
|
||||
@@ -227,7 +236,8 @@
|
||||
#define RPL_STATSLINKINFO 211
|
||||
#define RPL_STATSCOMMANDS 212
|
||||
#define RPL_STATSCLINE 213
|
||||
#define RPL_STATSNLINE 214
|
||||
#define RPL_STATSOLDNLINE 214
|
||||
|
||||
#define RPL_STATSILINE 215
|
||||
#define RPL_STATSKLINE 216
|
||||
#define RPL_STATSQLINE 217
|
||||
@@ -235,10 +245,14 @@
|
||||
#define RPL_ENDOFSTATS 219
|
||||
#define RPL_STATSBLINE 220
|
||||
|
||||
|
||||
#define RPL_UMODEIS 221
|
||||
#define RPL_SQLINE_NICK 222
|
||||
#define RPL_STATSGLINE 223
|
||||
#define RPL_STATSTLINE 224
|
||||
#define RPL_STATSELINE 225
|
||||
#define RPL_STATSNLINE 226
|
||||
#define RPL_STATSVLINE 227
|
||||
#define RPL_SERVICEINFO 231
|
||||
#define RPL_RULES 232
|
||||
#define RPL_SERVICE 233
|
||||
@@ -251,7 +265,7 @@
|
||||
#define RPL_STATSHLINE 244
|
||||
#define RPL_STATSSLINE 245
|
||||
#define RPL_STATSXLINE 247
|
||||
#define RPL_STATSULINE 248
|
||||
#define RPL_STATSULINE 248
|
||||
#define RPL_STATSDEBUG 249
|
||||
#define RPL_STATSCONN 250
|
||||
|
||||
@@ -266,13 +280,11 @@
|
||||
#define RPL_ADMINEMAIL 259
|
||||
|
||||
#define RPL_TRACELOG 261
|
||||
|
||||
#define RPL_LOCALUSERS 265
|
||||
#define RPL_GLOBALUSERS 266
|
||||
|
||||
#define RPL_SILELIST 271
|
||||
#define RPL_ENDOFSILELIST 272
|
||||
|
||||
#define RPL_STATSDLINE 275
|
||||
|
||||
#define RPL_HELPHDR 290
|
||||
@@ -305,3 +317,5 @@
|
||||
#define RPL_DUMPING 640
|
||||
#define RPL_DUMPRPL 641
|
||||
#define RPL_EODUMP 642
|
||||
|
||||
#define ERR_NUMERICERR 999
|
||||
|
||||
@@ -0,0 +1,99 @@
|
||||
/************************************************************************
|
||||
* Unreal Internet Relay Chat Daemon, include/proto.h
|
||||
* (C) Dominick Meglio <codemastr@unrealircd.com> 2000
|
||||
*
|
||||
* See file AUTHORS in IRC package for additional names of
|
||||
* the programmers.
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 1, or (at your option)
|
||||
* any later version.
|
||||
*
|
||||
* This program is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with this program; if not, write to the Free Software
|
||||
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
||||
*/
|
||||
|
||||
#ifndef proto_h
|
||||
#define proto_h
|
||||
/* badwords.c */
|
||||
int loadbadwords_message PROTO((char *wordfile));
|
||||
int loadbadwords_channel PROTO((char *wordfile));
|
||||
|
||||
/* channel.c */
|
||||
int sendmodeto_one PROTO((aClient *cptr, char *from, char *name, char *mode, char *param, TS creationtime));
|
||||
void make_cmodestr PROTO((void));
|
||||
|
||||
/* dynconf.c */
|
||||
int load_conf PROTO((char *filename, int type));
|
||||
int load_conf2 PROTO((FILE * conf, char *filename, int type));
|
||||
int load_conf3 PROTO((FILE * conf, char *filename, int type));
|
||||
void init_dynconf PROTO((void));
|
||||
void doneconf PROTO((int type));
|
||||
|
||||
/* lusers.c */
|
||||
void init_ircstats PROTO((void));
|
||||
|
||||
/* match.c */
|
||||
char *collapse PROTO((char *pattern));
|
||||
|
||||
/* scache.c */
|
||||
void clear_scache_hash_table PROTO((void));
|
||||
|
||||
/* send.c */
|
||||
void sendto_one PROTO((aClient *, char *, ...));
|
||||
void sendto_chanops_butone PROTO((aClient *one, aChannel *chptr, char *pattern, ...));
|
||||
void sendto_realops PROTO((char *pattern, ...));
|
||||
void sendto_serv_butone_token PROTO((aClient *one, char *prefix, char *command, char *token, char *pattern, ...));
|
||||
void sendto_serv_butone_token_opt PROTO((aClient *one, int opt, char *prefix, char *command, char *token, char *pattern, ...));
|
||||
void sendto_channel_ntadmins PROTO((aClient *from, aChannel *chptr, char *pattern, ...));
|
||||
|
||||
/* support.c */
|
||||
char *my_itoa PROTO((int i));
|
||||
|
||||
/* s_conf.c */
|
||||
int find_nline PROTO((aClient *cptr));
|
||||
|
||||
/* s_extra.c */
|
||||
int channel_canjoin PROTO((aClient *sptr, char *name));
|
||||
int dcc_loadconf PROTO((void));
|
||||
int cr_loadconf PROTO((void));
|
||||
int vhost_loadconf PROTO((void));
|
||||
|
||||
/* s_kline.c */
|
||||
int find_tkline_match PROTO((aClient *cptr, int xx));
|
||||
void tkl_check_expire PROTO((void));
|
||||
int tkl_sweep PROTO((void));
|
||||
|
||||
/* s_serv.c */
|
||||
void load_tunefile PROTO((void));
|
||||
void save_tunefile PROTO((void));
|
||||
aMotd *read_botmotd PROTO((char *filename));
|
||||
aMotd *read_rules PROTO((char *filename));
|
||||
aMotd *read_opermotd PROTO((char *filename));
|
||||
aMotd *read_motd PROTO((char *filename));
|
||||
aMotd *read_svsmotd PROTO((char *filename));
|
||||
void read_tlines PROTO((void));
|
||||
|
||||
/* s_unreal.c */
|
||||
void unrealmanual PROTO((void));
|
||||
|
||||
/* s_user.c */
|
||||
int check_for_target_limit PROTO((aClient *sptr, void *target, const char *name));
|
||||
void make_umodestr PROTO((void));
|
||||
|
||||
/* webtv.c */
|
||||
int is_halfop PROTO((aClient *cptr, aChannel *chptr));
|
||||
int is_chanprot PROTO((aClient *cptr, aChannel *chptr));
|
||||
char *convert_time PROTO((time_t ltime));
|
||||
char *get_mode_str PROTO((aClient *acptr));
|
||||
|
||||
/* whowas.c */
|
||||
void initwhowas PROTO((void));
|
||||
#endif /* proto_h */
|
||||
+36
-36
@@ -17,54 +17,54 @@
|
||||
|
||||
#define AR_TTL 600 /* TTL in seconds for dns cache entries */
|
||||
|
||||
struct hent {
|
||||
char *h_name; /* official name of host */
|
||||
char *h_aliases[MAXALIASES]; /* alias list */
|
||||
int h_addrtype; /* host address type */
|
||||
int h_length; /* length of address */
|
||||
struct hent {
|
||||
char *h_name; /* official name of host */
|
||||
char *h_aliases[MAXALIASES]; /* alias list */
|
||||
int h_addrtype; /* host address type */
|
||||
int h_length; /* length of address */
|
||||
/* list of addresses from name server */
|
||||
struct in_addr h_addr_list[MAXADDRS];
|
||||
struct IN_ADDR h_addr_list[MAXADDRS];
|
||||
#define h_addr h_addr_list[0] /* address, for backward compatiblity */
|
||||
};
|
||||
|
||||
typedef struct reslist {
|
||||
int id;
|
||||
int sent; /* number of requests sent */
|
||||
int srch;
|
||||
time_t ttl;
|
||||
char type;
|
||||
char retries; /* retry counter */
|
||||
char sends; /* number of sends (>1 means resent) */
|
||||
char resend; /* send flag. 0 == dont resend */
|
||||
time_t sentat;
|
||||
time_t timeout;
|
||||
struct in_addr addr;
|
||||
char *name;
|
||||
struct reslist *next;
|
||||
Link cinfo;
|
||||
typedef struct reslist {
|
||||
int id;
|
||||
int sent; /* number of requests sent */
|
||||
int srch;
|
||||
time_t ttl;
|
||||
char type;
|
||||
char retries; /* retry counter */
|
||||
char sends; /* number of sends (>1 means resent) */
|
||||
char resend; /* send flag. 0 == dont resend */
|
||||
time_t sentat;
|
||||
time_t timeout;
|
||||
struct IN_ADDR addr;
|
||||
char *name;
|
||||
struct reslist *next;
|
||||
Link cinfo;
|
||||
#ifndef _WIN32
|
||||
struct hent he;
|
||||
struct hent he;
|
||||
#else
|
||||
struct hostent *he;
|
||||
char locked;
|
||||
struct hostent *he;
|
||||
char locked;
|
||||
#endif
|
||||
} ResRQ;
|
||||
} ResRQ;
|
||||
|
||||
typedef struct cache {
|
||||
time_t expireat;
|
||||
time_t ttl;
|
||||
typedef struct cache {
|
||||
time_t expireat;
|
||||
time_t ttl;
|
||||
#ifndef _WIN32
|
||||
struct hostent he;
|
||||
struct hostent he;
|
||||
#else
|
||||
struct hostent *he;
|
||||
struct hostent *he;
|
||||
#endif
|
||||
struct cache *hname_next, *hnum_next, *list_next;
|
||||
} aCache;
|
||||
struct cache *hname_next, *hnum_next, *list_next;
|
||||
} aCache;
|
||||
|
||||
typedef struct cachetable {
|
||||
aCache *num_list;
|
||||
aCache *name_list;
|
||||
} CacheTable;
|
||||
typedef struct cachetable {
|
||||
aCache *num_list;
|
||||
aCache *name_list;
|
||||
} CacheTable;
|
||||
|
||||
#define ARES_CACSIZE 101
|
||||
|
||||
|
||||
+30
-27
@@ -33,25 +33,25 @@
|
||||
/*
|
||||
* Global defines and variables for resolver stub.
|
||||
*/
|
||||
#define MAXNS 3 /* max # name servers we'll track */
|
||||
#define MAXDFLSRCH 3 /* # default domain levels to try */
|
||||
#define MAXDNSRCH 6 /* max # domains in search path */
|
||||
#define LOCALDOMAINPARTS 2 /* min levels in name that is "local" */
|
||||
#define MAXSERVICES 2 /* max # of services to search */
|
||||
#define MAXNS 3 /* max # name servers we'll track */
|
||||
#define MAXDFLSRCH 3 /* # default domain levels to try */
|
||||
#define MAXDNSRCH 6 /* max # domains in search path */
|
||||
#define LOCALDOMAINPARTS 2 /* min levels in name that is "local" */
|
||||
#define MAXSERVICES 2 /* max # of services to search */
|
||||
|
||||
#define RES_TIMEOUT 5 /* min. seconds between retries */
|
||||
#define RES_TIMEOUT 5 /* min. seconds between retries */
|
||||
|
||||
struct state {
|
||||
int retrans; /* retransmition time interval */
|
||||
int retry; /* number of times to retransmit */
|
||||
long options; /* option flags - see below. */
|
||||
int nscount; /* number of name servers */
|
||||
struct sockaddr_in nsaddr_list[MAXNS]; /* address of name server */
|
||||
#define nsaddr nsaddr_list[0] /* for backward compatibility */
|
||||
unsigned short id; /* current packet id */
|
||||
char defdname[MAXDNAME]; /* default domain */
|
||||
char *dnsrch[MAXDNSRCH+1]; /* components of domain to search */
|
||||
unsigned short order[MAXSERVICES+1]; /* search service order */
|
||||
int retrans; /* retransmition time interval */
|
||||
int retry; /* number of times to retransmit */
|
||||
long options; /* option flags - see below. */
|
||||
int nscount; /* number of name servers */
|
||||
struct SOCKADDR_IN nsaddr_list[MAXNS]; /* address of name server */
|
||||
#define nsaddr nsaddr_list[0] /* for backward compatibility */
|
||||
unsigned short id; /* current packet id */
|
||||
char defdname[MAXDNAME]; /* default domain */
|
||||
char *dnsrch[MAXDNSRCH + 1]; /* components of domain to search */
|
||||
unsigned short order[MAXSERVICES + 1]; /* search service order */
|
||||
};
|
||||
|
||||
#define RES_SERVICE_NONE 0
|
||||
@@ -61,19 +61,22 @@ struct state {
|
||||
/*
|
||||
* Resolver options
|
||||
*/
|
||||
#define RES_INIT 0x0001 /* address initialized */
|
||||
#define RES_DEBUG 0x0002 /* print debug messages */
|
||||
#define RES_AAONLY 0x0004 /* authoritative answers only */
|
||||
#define RES_USEVC 0x0008 /* use virtual circuit */
|
||||
#define RES_PRIMARY 0x0010 /* query primary server only */
|
||||
#define RES_IGNTC 0x0020 /* ignore trucation errors */
|
||||
#define RES_RECURSE 0x0040 /* recursion desired */
|
||||
#define RES_DEFNAMES 0x0080 /* use default domain name */
|
||||
#define RES_STAYOPEN 0x0100 /* Keep TCP socket open */
|
||||
#define RES_DNSRCH 0x0200 /* search up local domain tree */
|
||||
#define RES_INIT 0x0001 /* address initialized */
|
||||
#define RES_DEBUG 0x0002 /* print debug messages */
|
||||
#define RES_AAONLY 0x0004 /* authoritative answers only */
|
||||
#define RES_USEVC 0x0008 /* use virtual circuit */
|
||||
#define RES_PRIMARY 0x0010 /* query primary server only */
|
||||
#define RES_IGNTC 0x0020 /* ignore trucation errors */
|
||||
#define RES_RECURSE 0x0040 /* recursion desired */
|
||||
#define RES_DEFNAMES 0x0080 /* use default domain name */
|
||||
#define RES_STAYOPEN 0x0100 /* Keep TCP socket open */
|
||||
#define RES_DNSRCH 0x0200 /* search up local domain tree */
|
||||
|
||||
|
||||
#define RES_DEFAULT (RES_RECURSE | RES_DEFNAMES | RES_DNSRCH)
|
||||
#if ((__GNU_LIBRARY__ == 6) && (__GLIBC__ >=2) && (__GLIBC_MINOR__ >= 2))
|
||||
#define res_init __res_init
|
||||
#endif
|
||||
|
||||
extern struct state _res;
|
||||
extern char *p_cdname(), *p_rr(), *p_type(), *p_class(), *p_time();
|
||||
|
||||
|
||||
+13
-27
@@ -1,5 +1,5 @@
|
||||
/************************************************************************
|
||||
* IRC - Internet Relay Chat, include/sjoin.h
|
||||
* Unreal Internet Relay Chat Daemon, include/sjoin.h
|
||||
* (C) Carsten Munk 2000
|
||||
* Contains code from StarChat IRCd, (C) their respective authors
|
||||
*
|
||||
@@ -21,45 +21,31 @@
|
||||
*/
|
||||
|
||||
|
||||
typedef struct SynchList aSynchList;
|
||||
typedef struct SynchList aSynchList;
|
||||
|
||||
/* SJOIN synch structure */
|
||||
struct SynchList {
|
||||
char nick[NICKLEN];
|
||||
int deop;
|
||||
int devoice;
|
||||
int dehalf;
|
||||
int deown;
|
||||
int deprot;
|
||||
int op;
|
||||
int voice;
|
||||
int half;
|
||||
int own;
|
||||
int prot;
|
||||
aSynchList *next, *prev;
|
||||
aClient *cptr;
|
||||
long setflags;
|
||||
aSynchList *next, *prev;
|
||||
};
|
||||
|
||||
aSynchList *SJSynchList = NULL;
|
||||
|
||||
aSynchList *make_synchlist()
|
||||
{
|
||||
Reg1 aSynchList *synchptr;
|
||||
Reg1 aSynchList *synchptr;
|
||||
|
||||
synchptr = (aSynchList *) MyMalloc(sizeof(aSynchList));
|
||||
synchptr = (aSynchList *) MyMalloc(sizeof(aSynchList));
|
||||
synchptr->cptr = NULL;
|
||||
synchptr->setflags = 0;
|
||||
synchptr->prev = synchptr->next = NULL;
|
||||
|
||||
synchptr->nick[0] = 0;
|
||||
synchptr->deop = synchptr->dehalf = synchptr->deown = synchptr->deprot = 0;
|
||||
synchptr->devoice = 0;
|
||||
synchptr->op = 0;
|
||||
synchptr->voice = synchptr->half = synchptr->own = synchptr->prot = 0;
|
||||
synchptr->prev = synchptr->next = NULL;
|
||||
|
||||
return synchptr;
|
||||
return synchptr;
|
||||
}
|
||||
|
||||
void free_synchlist(synchptr)
|
||||
aSynchList *synchptr;
|
||||
aSynchList *synchptr;
|
||||
{
|
||||
MyFree((char *) synchptr);
|
||||
MyFree((char *)synchptr);
|
||||
}
|
||||
|
||||
|
||||
+9
-3
@@ -1,5 +1,6 @@
|
||||
|
||||
/************************************************************************
|
||||
* IRC - Internet Relay Chat, include/sock.h
|
||||
* Unreal Internet Relay Chat Daemon, include/sock.h
|
||||
* Copyright (C) 1990 Jarkko Oikarinen and
|
||||
* University of Oulu, Computing Center
|
||||
*
|
||||
@@ -22,6 +23,12 @@
|
||||
* $Id$
|
||||
*
|
||||
* $Log$
|
||||
* Revision 1.1.1.1.6.1 2000/05/28 08:55:24 cmunk
|
||||
* Import of Unreal3.1-beta3
|
||||
*
|
||||
* Revision 1.2 2000/03/02 21:22:37 stskeeps
|
||||
* ...........
|
||||
*
|
||||
* Revision 1.1.1.1 2000/01/30 12:16:33 stskeeps
|
||||
* Begin of CVS at cvs.unreal.sourceforge.net
|
||||
*
|
||||
@@ -70,6 +77,5 @@
|
||||
#endif
|
||||
|
||||
#ifdef RCVTIMEO
|
||||
#define SO_RCVTIMEO 0x1006 /* receive timeout */
|
||||
#define SO_RCVTIMEO 0x1006 /* receive timeout */
|
||||
#endif
|
||||
|
||||
|
||||
@@ -0,0 +1,10 @@
|
||||
/* Make these what you want for cert & key files */
|
||||
#define CERTF "server.cert.pem"
|
||||
#define KEYF "server.key.pem"
|
||||
|
||||
|
||||
extern SSL_CTX * ctx;
|
||||
extern SSL_METHOD *meth;
|
||||
extern void init_ssl();
|
||||
extern int ssl_handshake(aClient *); /* Handshake the accpeted con.*/
|
||||
extern int ssl_client_handshake(aClient *); /* and the initiated con.*/
|
||||
+1
-2
@@ -1,4 +1,3 @@
|
||||
/* Auto created release stamping */
|
||||
#define RELEASEID2 "951777936"
|
||||
#define RELEASEID2 "961323751"
|
||||
#define RELEASESTUFF "draconic"
|
||||
|
||||
|
||||
+517
-429
File diff suppressed because it is too large
Load Diff
+80
-22
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* IRC - Internet Relay Chat, include/sys.h
|
||||
* Unreal Internet Relay Chat Daemon, include/sys.h
|
||||
* Copyright (C) 1990 University of Oulu, Computing Center
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
@@ -30,7 +30,6 @@
|
||||
#include <errno.h>
|
||||
# endif
|
||||
#endif
|
||||
|
||||
#include "setup.h"
|
||||
#include <stdio.h>
|
||||
#include <sys/types.h>
|
||||
@@ -54,7 +53,9 @@
|
||||
# include <string.h>
|
||||
# endif
|
||||
#endif
|
||||
|
||||
#ifdef SSL
|
||||
#include <openssl/ssl.h>
|
||||
#endif
|
||||
#ifndef GOT_STRCASECMP
|
||||
#define strcasecmp mycmp
|
||||
#define strncasecmp myncmp
|
||||
@@ -85,7 +86,7 @@ extern char *rindex PROTO((char *, char));
|
||||
#else
|
||||
#include <sys/time.h>
|
||||
#endif
|
||||
|
||||
#ifndef DMALLOC
|
||||
#if !defined(DEBUGMODE)
|
||||
# ifndef _WIN32
|
||||
# define MyFree(x) if ((x) != NULL) free(x)
|
||||
@@ -95,15 +96,15 @@ extern char *rindex PROTO((char *, char));
|
||||
#else
|
||||
#define free(x) MyFree(x)
|
||||
#endif
|
||||
|
||||
#endif
|
||||
#ifdef NEXT
|
||||
#define VOIDSIG int /* whether signal() returns int of void */
|
||||
#define VOIDSIG int /* whether signal() returns int of void */
|
||||
#else
|
||||
#define VOIDSIG void /* whether signal() returns int of void */
|
||||
#define VOIDSIG void /* whether signal() returns int of void */
|
||||
#endif
|
||||
|
||||
#ifdef SOL20
|
||||
#define OPT_TYPE char /* opt type for get/setsockopt */
|
||||
#ifdef _SOLARIS
|
||||
#define OPT_TYPE char /* opt type for get/setsockopt */
|
||||
#else
|
||||
#define OPT_TYPE void
|
||||
#endif
|
||||
@@ -116,26 +117,83 @@ extern char *rindex PROTO((char *, char));
|
||||
#endif
|
||||
|
||||
#ifndef _WIN32
|
||||
extern VOIDSIG dummy();
|
||||
#endif
|
||||
|
||||
#ifdef DYNIXPTX
|
||||
#define NO_U_TYPES
|
||||
typedef unsigned short n_short; /* short as received from the net */
|
||||
typedef unsigned long n_long; /* long as received from the net */
|
||||
typedef unsigned long n_time; /* ms since 00:00 GMT, byte rev */
|
||||
#define _NETINET_IN_SYSTM_INCLUDED
|
||||
extern VOIDSIG dummy();
|
||||
#endif
|
||||
|
||||
#ifdef NO_U_TYPES
|
||||
typedef unsigned char u_char;
|
||||
typedef unsigned short u_short;
|
||||
typedef unsigned long u_long;
|
||||
typedef unsigned int u_int;
|
||||
typedef unsigned char u_char;
|
||||
typedef unsigned short u_short;
|
||||
typedef unsigned long u_long;
|
||||
typedef unsigned int u_int;
|
||||
#endif
|
||||
|
||||
#ifdef _WIN32
|
||||
#define MYOSNAME "Win32"
|
||||
#endif
|
||||
#ifdef DEBUGMODE
|
||||
// #define ircsprintf sprintf
|
||||
//#define ircvsprintf vsprintf
|
||||
#endif
|
||||
|
||||
|
||||
/*
|
||||
* IPv4 or IPv6 structures?
|
||||
*/
|
||||
|
||||
#ifdef INET6
|
||||
|
||||
# define AND16(x) ((x)[0]&(x)[1]&(x)[2]&(x)[3]&(x)[4]&(x)[5]&(x)[6]&(x)[7]&(x)[8]&(x)[9]&(x)[10]&(x)[11]&(x)[12]&(x)[13]&(x)[14]&(x)[15])
|
||||
static unsigned char minus_one[] =
|
||||
{ 255, 255, 255, 255, 255, 255, 255, 255, 255,
|
||||
255, 255, 255, 255, 255, 255, 255, 0
|
||||
};
|
||||
|
||||
# define WHOSTENTP(x) ((x)[0]|(x)[1]|(x)[2]|(x)[3]|(x)[4]|(x)[5]|(x)[6]|(x)[7]|(x)[8]|(x)[9]|(x)[10]|(x)[11]|(x)[12]|(x)[13]|(x)[14]|(x)[15])
|
||||
|
||||
# define AFINET AF_INET6
|
||||
# define SOCKADDR_IN sockaddr_in6
|
||||
# define SOCKADDR sockaddr
|
||||
# define SIN_FAMILY sin6_family
|
||||
# define SIN_PORT sin6_port
|
||||
# define SIN_ADDR sin6_addr
|
||||
# define S_ADDR s6_addr
|
||||
# define IN_ADDR in6_addr
|
||||
|
||||
# ifndef uint32_t
|
||||
# define uint32_t __u32
|
||||
# endif
|
||||
|
||||
# define MYDUMMY_SIZE 128
|
||||
char mydummy[MYDUMMY_SIZE];
|
||||
char mydummy2[MYDUMMY_SIZE];
|
||||
|
||||
# if defined(linux) || defined(__NetBSD__) || defined(__FreeBSD__) || defined(bsdi)
|
||||
# ifndef s6_laddr
|
||||
# define s6_laddr s6_addr32
|
||||
# endif
|
||||
# endif
|
||||
|
||||
# if defined(linux)
|
||||
static const struct in6_addr in6addr_any = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
|
||||
0, 0, 0, 0, 0
|
||||
};
|
||||
|
||||
# endif
|
||||
|
||||
# define IRCDCONF_DELIMITER '%'
|
||||
|
||||
#else
|
||||
# define AFINET AF_INET
|
||||
# define SOCKADDR_IN sockaddr_in
|
||||
# define SOCKADDR sockaddr
|
||||
# define SIN_FAMILY sin_family
|
||||
# define SIN_PORT sin_port
|
||||
# define SIN_ADDR sin_addr
|
||||
# define S_ADDR s_addr
|
||||
# define IN_ADDR in_addr
|
||||
|
||||
# define WHOSTENTP(x) (x)
|
||||
# define IRCDCONF_DELIMITER ':'
|
||||
#endif
|
||||
|
||||
#endif /* __sys_include__ */
|
||||
|
||||
+12
-12
@@ -2,7 +2,7 @@
|
||||
* Userload module by Michael L. VanLoon (mlv) <michaelv@iastate.edu>
|
||||
* Written 2/93. Originally grafted into irc2.7.2g 4/93.
|
||||
*
|
||||
* IRC - Internet Relay Chat, ircd/userload.h
|
||||
* Unreal Internet Relay Chat Daemon, ircd/userload.h
|
||||
* Copyright (C) 1990 University of Oulu, Computing Center
|
||||
*
|
||||
* This program is free software; you can redistribute it and/or modify
|
||||
@@ -30,25 +30,25 @@
|
||||
#endif
|
||||
|
||||
struct current_load_struct {
|
||||
u_short client_count, local_count, conn_count;
|
||||
u_long entries;
|
||||
};
|
||||
u_short client_count, local_count, conn_count;
|
||||
u_long entries;
|
||||
};
|
||||
|
||||
extern struct current_load_struct current_load_data;
|
||||
|
||||
struct load_entry {
|
||||
struct load_entry *prev;
|
||||
u_short client_count, local_count, conn_count;
|
||||
struct load_entry *prev;
|
||||
u_short client_count, local_count, conn_count;
|
||||
#ifdef DEBUGMODE
|
||||
u_short cpu_usage;
|
||||
u_short cpu_usage;
|
||||
#endif
|
||||
long time_incr;
|
||||
long time_incr;
|
||||
};
|
||||
|
||||
extern struct load_entry *load_list_head, *load_list_tail,
|
||||
*load_free_head, *load_free_tail;
|
||||
*load_free_head, *load_free_tail;
|
||||
|
||||
|
||||
extern void initload PROTO ((void));
|
||||
extern void update_load PROTO ((void));
|
||||
extern void calc_load PROTO ((aClient *, char *));
|
||||
extern void initload PROTO((void));
|
||||
extern void update_load PROTO((void));
|
||||
extern void calc_load PROTO((aClient *, char *));
|
||||
|
||||
+15
-22
@@ -16,39 +16,32 @@
|
||||
#else
|
||||
#define DEBUGMODESET ""
|
||||
#endif
|
||||
/**/
|
||||
/**/
|
||||
#ifdef DEBUG
|
||||
#define DEBUGSET "(Debug)"
|
||||
#else
|
||||
#define DEBUGSET ""
|
||||
#endif
|
||||
/**/
|
||||
#define COMPILEINFO DEBUGMODESET DEBUGSET
|
||||
#ifndef WEBTV
|
||||
#define XTRAINFO ""
|
||||
#else
|
||||
#define XTRAINFO "(WebTV)"
|
||||
#endif
|
||||
/**/
|
||||
#define COMPILEINFO DEBUGMODESET DEBUGSET
|
||||
/*
|
||||
* Version Unreal3.0
|
||||
* Version Unreal3.1.4-Meadows
|
||||
*/
|
||||
#define UnrealProtocol 2300
|
||||
#define UnrealProtocol 2302
|
||||
#define PATCH1 "3"
|
||||
#define PATCH2 ".0"
|
||||
#define PATCH3 "-Morrigan"
|
||||
#define PATCH4 "(fix)"
|
||||
#define PATCH5 ""
|
||||
#define PATCH2 ".1"
|
||||
#define PATCH3 ".4"
|
||||
#define PATCH4 "-Meadows"
|
||||
#define PATCH5 "[beta3]"
|
||||
#define PATCH6 ""
|
||||
#define PATCH7 ""
|
||||
#define PATCH8 COMPILEINFO
|
||||
#define PATCH9 XTRAINFO
|
||||
|
||||
#ifndef _WIN32
|
||||
#define BASE_VERSION "Unreal"
|
||||
#ifdef _WIN32
|
||||
#define PATCH9 "+win32"
|
||||
#else
|
||||
#define BASE_VERSION "UnrealIRCd/32 v"
|
||||
#define PATCH9 ""
|
||||
#endif
|
||||
|
||||
/* release header */
|
||||
#define Rh BASE_VERSION
|
||||
#define VERSIONONLY PATCH1 PATCH2 PATCH3 PATCH4 PATCH5 PATCH6 PATCH7
|
||||
|
||||
#endif /* __versioninclude */
|
||||
#endif /* __versioninclude */
|
||||
|
||||
+17
-51
@@ -18,70 +18,36 @@
|
||||
*/
|
||||
|
||||
/*
|
||||
* $Id$
|
||||
*
|
||||
* $Log$
|
||||
* Revision 1.1.1.1 2000/01/30 12:16:34 stskeeps
|
||||
* Begin of CVS at cvs.unreal.sourceforge.net
|
||||
*
|
||||
*
|
||||
* Revision 1.1.1.1 1999/09/01 23:20:37 stskeeps
|
||||
*
|
||||
* Revision 1.1.1.1 1999/07/22 13:56:41 stskeeps
|
||||
* 16:56 22-07-99 techie
|
||||
* - Started on using CVS to develop Unreal
|
||||
*
|
||||
*
|
||||
* Revision 1.1.1.1 1999/07/21 10:48:18 stskeeps
|
||||
* 12:47 GMT+2 21 July 1999 - Techie
|
||||
* Starting Unreal with CVS..
|
||||
*
|
||||
*
|
||||
* Revision 1.2 1997/12/29 07:17:35 wd
|
||||
* df4.6.2
|
||||
* ee CHANGES for updates
|
||||
* -wd
|
||||
*
|
||||
* Revision 1.1.1.1 1997/08/22 17:23:01 donwulff
|
||||
* Original import from the "deadlined" version.
|
||||
*
|
||||
* Revision 1.1.1.1 1996/11/18 07:53:42 explorer
|
||||
* ircd 4.3.3 -- about time
|
||||
*
|
||||
* Revision 1.1.1.1.4.1 1996/09/16 02:45:41 donwulff
|
||||
* *** empty log message ***
|
||||
* from original rcs
|
||||
* $ Id: whowas.h,v 6.1 1991/07/04 21:04:39 gruner stable gruner $
|
||||
*
|
||||
* $ Log: whowas.h,v $
|
||||
* Revision 6.1 1991/07/04 21:04:39 gruner
|
||||
* Revision 2.6.1 [released]
|
||||
*
|
||||
* Revision 6.0 1991/07/04 18:05:08 gruner
|
||||
* frozen beta revision 2.6.1
|
||||
*
|
||||
* th+hybrid rcs version
|
||||
* $Id$
|
||||
*/
|
||||
|
||||
#ifndef __whowas_include__
|
||||
#define __whowas_include__
|
||||
|
||||
#ifndef PROTO
|
||||
#if __STDC__
|
||||
# define PROTO(x) x
|
||||
#else
|
||||
# define PROTO(x) ()
|
||||
#endif /* __STDC__ */
|
||||
#endif /* ! PROTO */
|
||||
|
||||
/*
|
||||
** WHOWAS structure moved here from whowas.c
|
||||
*/
|
||||
typedef struct aname {
|
||||
anUser *ww_user;
|
||||
aClient *ww_online;
|
||||
time_t ww_logout;
|
||||
long ww_umodes;
|
||||
char ww_nick[NICKLEN+1];
|
||||
char ww_info[REALLEN+1];
|
||||
anUser *ww_user;
|
||||
aClient *ww_online;
|
||||
time_t ww_logout;
|
||||
long ww_umodes;
|
||||
char ww_nick[NICKLEN + 1];
|
||||
char ww_info[REALLEN + 1];
|
||||
} aName;
|
||||
|
||||
|
||||
/*
|
||||
** add_history
|
||||
** Add the currently defined name of the client to history.
|
||||
@@ -89,7 +55,7 @@ typedef struct aname {
|
||||
** Client must be a fully registered user (specifically,
|
||||
** the user structure must have been allocated).
|
||||
*/
|
||||
void add_history PROTO((aClient *));
|
||||
void add_history(aClient *, int);
|
||||
|
||||
/*
|
||||
** off_history
|
||||
@@ -98,7 +64,7 @@ void add_history PROTO((aClient *));
|
||||
** structures and it must know when they cease to exist. This
|
||||
** also implicitly calls AddHistory.
|
||||
*/
|
||||
void off_history PROTO((aClient *));
|
||||
void off_history(aClient *);
|
||||
|
||||
/*
|
||||
** get_history
|
||||
@@ -106,15 +72,15 @@ void off_history PROTO((aClient *));
|
||||
** nickname within the timelimit. Returns NULL, if no
|
||||
** one found...
|
||||
*/
|
||||
aClient *get_history PROTO((char *, time_t));
|
||||
aClient *get_history(char *, time_t);
|
||||
/* Nick name */
|
||||
/* Time limit in seconds */
|
||||
|
||||
int m_whowas PROTO((aClient *, aClient *, int, char *[]));
|
||||
int m_whowas(aClient *, aClient *, int, char *[]);
|
||||
|
||||
/*
|
||||
** for debugging...counts related structures stored in whowas array.
|
||||
*/
|
||||
void count_whowas_memory PROTO((int *, int *, u_long *));
|
||||
void count_whowas_memory(int *, u_long *);
|
||||
|
||||
#endif /* __whowas_include__ */
|
||||
|
||||
@@ -1,3 +1,25 @@
|
||||
#define SPATH "."
|
||||
/*
|
||||
* VERSION: Unreal3.1.4 Meadows
|
||||
* DATE: Sat Jun 15 13:43:51 EST 2002
|
||||
* OS: Win-32
|
||||
*
|
||||
*/
|
||||
|
||||
#define DPATH "."
|
||||
#define DOMAINNAME "irc.net"
|
||||
#define SPATH "."
|
||||
#define DOMAINNAME "irc.net"
|
||||
#define LISTEN_SIZE 5
|
||||
#define MAXSENDQLENGTH 3000000
|
||||
#define BUFFERPOOL (9 * MAXSENDQLENGTH)
|
||||
#define MAXCONNECTIONS 1024
|
||||
#define NICKNAMEHISTORYLENGTH 2000
|
||||
#undef CRYPT_OPER_PASSWORD
|
||||
#undef USE_SSL
|
||||
#undef CRYPT_LINK_PASSWORD
|
||||
#undef CRYPT_ILINE_PASSWORD
|
||||
#undef CRYPT_XLINE_PASSWORD
|
||||
#undef ENABLE_INVISOPER
|
||||
#define HUB 1
|
||||
#define HAVE_REGEX 1
|
||||
#define NOSPOOF 1
|
||||
#define GLIBC2_x
|
||||
|
||||
@@ -24,6 +24,8 @@ echo "| (3) DPATH or SPATH's are incorrect. Run |"
|
||||
echo "| ./Config to correct that. |"
|
||||
echo "| (4) Someone else is running an ircd on the |"
|
||||
echo "| default port you chose in ircd.conf. |"
|
||||
echo "| |"
|
||||
echo "| see ircd.log for more information |"
|
||||
echo "|********************************************|"
|
||||
echo "| If you can't get Unreal IRCd to work - go |"
|
||||
echo "| to /server irc.flirt.org and join |"
|
||||
@@ -59,10 +61,10 @@ echo "| (4) Someone else is running an ircd on the |"
|
||||
echo "| default port you chose in ircd.conf. |"
|
||||
echo "|********************************************|"
|
||||
echo "| If you can't get Unreal IRCd to work - go |"
|
||||
echo "| to /server irc.global-irc.net and join |"
|
||||
echo "| #Global - Try ask in the channel or /msg |"
|
||||
echo "| Stskeeps/Techie(me!) or else-- email me at |"
|
||||
echo "| stskeeps@tspre.org |"
|
||||
echo "| to /server irc.flirt.org and join |"
|
||||
echo "| #UnrealIRCd or mail us at |"
|
||||
echo "| unreal-support@lists.sourceforge.net |"
|
||||
echo "| |"
|
||||
echo "|--------------------------------------------|"
|
||||
|
||||
exit
|
||||
|
||||
@@ -1,4 +0,0 @@
|
||||
#!/bin/sh
|
||||
# $Id$
|
||||
|
||||
lynx http://unreal.sourceforge.net/register.html
|
||||
@@ -13,6 +13,7 @@ ADMADDR="admin@no.where.com"
|
||||
OPERNAME="admin"
|
||||
OPERADDR="*@*"
|
||||
OPERPASS="password"
|
||||
NUMERIC=""
|
||||
PORT="6667"
|
||||
OPRT="default"
|
||||
LINKPASS="linkpass"
|
||||
@@ -21,7 +22,7 @@ ENCRYPT="Yes"
|
||||
FLAGS="OAZHWe"
|
||||
RESTARTPASS="restartpass"
|
||||
DIEPASS="diepass"
|
||||
SERVICES="Services.ShadowNet.Org"
|
||||
SERVICES="Services.IRC-Net.Org"
|
||||
|
||||
# these are so I can use stuff like $1 without it replacing it...like by
|
||||
# using $dlrsgn$uno for $1
|
||||
@@ -173,6 +174,15 @@ if [ ! -z "$cc" ]; then
|
||||
PORT="$cc"
|
||||
fi
|
||||
|
||||
echo " "
|
||||
echo "What server numeric does the server have (range = 1..256)"
|
||||
echo "Must NOT be the same as other servers you link with"
|
||||
echo $n " [] -> $c"
|
||||
read cc
|
||||
if [ ! -z "$cc" ]; then
|
||||
NUMERIC="$cc"
|
||||
fi
|
||||
|
||||
echo " "
|
||||
echo "What is your real name? (ie: John Doe)"
|
||||
echo $n " [$ADMIN] -> $c"
|
||||
@@ -214,7 +224,6 @@ echo " O = global oper"
|
||||
echo " N = network administrator"
|
||||
echo " A = server administrator"
|
||||
echo " C = co administrator"
|
||||
echo " T = technical administrator"
|
||||
echo " read unrealircd.doc for more info about O:line flags)"
|
||||
echo $n " [$FLAGS] -> $c"
|
||||
read cc
|
||||
@@ -311,7 +320,7 @@ cat > $CONF << __EOF__
|
||||
########################
|
||||
|
||||
############ Server Info ############
|
||||
M:$SERVNAME:$VIRTUAL:$COMMENT:$PORT
|
||||
M:$SERVNAME:$VIRTUAL:$COMMENT:$PORT:$NUMERIC
|
||||
#####################################
|
||||
|
||||
############ Administrator Information #############
|
||||
@@ -320,7 +329,7 @@ A:$ADMIN:$ADMNICK:$ADMADDR
|
||||
|
||||
############ Y-lines #############
|
||||
# Client Y:lines
|
||||
Y:1:90:0:$MAXCONNECTIONS:100000
|
||||
Y:1:90:0:245:100000
|
||||
# Server Y:lines
|
||||
Y:50:300:600:1:1000000
|
||||
##################################
|
||||
|
||||
+243
-177
@@ -1,177 +1,243 @@
|
||||
#
|
||||
# Win32Gui Config File .. By DrBin
|
||||
#
|
||||
CC=cl
|
||||
# Here you put your settings
|
||||
FD_SETSIZE=/D FD_SETSIZE=16384
|
||||
NS_ADDRESS=/D NS_ADDRESS="\"nospoof@dal.net\""
|
||||
CFLAGS=/MT /O2 /G5 /I ./INCLUDE /Fosrc/ /nologo $(FD_SETSIZE) $(NS_ADDRESS) /D _WIN32GUI /D NOSPOOF=1 /c
|
||||
INCLUDES=./include/struct.h ./include/config.h ./include/sys.h \
|
||||
./include/common.h ./include/version.h ./include/h.h ./include/numeric.h \
|
||||
./include/msg.h ./include/setup.h ./include/dynconf.h
|
||||
LINK=link.exe
|
||||
LFLAGS=kernel32.lib user32.lib gdi32.lib shell32.lib wsock32.lib \
|
||||
oldnames.lib libcmt.lib comctl32.lib /nodefaultlib /nologo /out:WIRCD2.EXE
|
||||
OBJ_FILES=SRC/CHANNEL.OBJ SRC/USERLOAD.OBJ SRC/SEND.OBJ SRC/BSD.OBJ \
|
||||
SRC/S_CONF.OBJ SRC/FDLIST.OBJ SRC/DBUF.OBJ SRC/RES.OBJ \
|
||||
SRC/CLOAK.OBJ SRC/HASH.OBJ SRC/PARSE.OBJ SRC/IRCD.OBJ \
|
||||
SRC/S_NUMERIC.OBJ SRC/WHOWAS.OBJ SRC/RES_COMP.OBJ SRC/S_AUTH.OBJ \
|
||||
SRC/HELP.OBJ SRC/S_MISC.OBJ SRC/MATCH.OBJ SRC/CRULE.OBJ \
|
||||
SRC/S_DEBUG.OBJ SRC/RES_INIT.OBJ SRC/SUPPORT.OBJ SRC/LIST.OBJ \
|
||||
SRC/S_ERR.OBJ SRC/PACKET.OBJ SRC/CLASS.OBJ SRC/S_BSD.OBJ \
|
||||
SRC/MD5.OBJ SRC/S_SERV.OBJ SRC/S_USER.OBJ SRC/WIN32GUI.OBJ \
|
||||
SRC/VERSION.OBJ SRC/win32/WIN32.RES SRC/S_UNREAL.OBJ SRC/DYNCONF.OBJ \
|
||||
SRC/S_SOCKS.OBJ SRC/S_KLINE.OBJ SRC/S_EXTRA.OBJ
|
||||
RC=rc.exe
|
||||
|
||||
ALL: WIRCD.EXE CHKCONF.EXE
|
||||
@echo Please, please REMEMBER to add those U lines!
|
||||
@echo Read the file READTHIS.NOW formore info
|
||||
|
||||
CLEAN:
|
||||
-@erase src\*.exe 2>NUL
|
||||
-@erase src\*.obj 2>NUL
|
||||
-@erase src\win32.res 2>NUL
|
||||
-@erase src\version.c 2>NUL
|
||||
-@erase src\win32\*.obj 2>NUL
|
||||
-@erase .\*.exe 2>NUL
|
||||
|
||||
#include/setup.h:
|
||||
# @echo Hmm...doesn't look like you've run Config...
|
||||
# @echo Doing so now.
|
||||
# @config.exe
|
||||
|
||||
#src/version.c: dummy
|
||||
# @config.exe -v
|
||||
|
||||
src/version.obj: src/win32/version.c
|
||||
$(CC) $(CFLAGS) src/win32/version.c
|
||||
|
||||
./WIRCD.EXE: $(OBJ_FILES) src/win32/version.obj
|
||||
$(LINK) $(LFLAGS) $(OBJ_FILES)
|
||||
|
||||
./CHKCONF.EXE: ./include/struct.h ./include/config.h ./include/sys.h \
|
||||
./include/common.h ./src/crule.c ./src/match.c ./src/chkconf.c
|
||||
$(CC) /nologo /I ./include /D CR_CHKCONF /Fosrc/chkcrule.obj /c src/crule.c
|
||||
$(CC) /nologo /I ./include /D CR_CHKCONF /Fosrc/chkmatch.obj /c src/match.c
|
||||
$(CC) /nologo /I ./include /D CR_CHKCONF /Fosrc/chkconf.obj /c src/chkconf.c
|
||||
$(LINK) /nologo /out:./chkconf.exe src/chkconf.obj src/chkmatch.obj \
|
||||
src/chkcrule.obj
|
||||
|
||||
src/parse.obj: src/parse.c $(INCLUDES)
|
||||
$(CC) $(CFLAGS) src/parse.c
|
||||
|
||||
src/bsd.obj: src/bsd.c $(INCLUDES)
|
||||
$(CC) $(CFLAGS) src/bsd.c
|
||||
|
||||
src/dbuf.obj: src/dbuf.c $(INCLUDES) ./include/dbuf.h
|
||||
$(CC) $(CFLAGS) src/dbuf.c
|
||||
|
||||
src/packet.obj: src/packet.c $(INCLUDES)
|
||||
$(CC) $(CFLAGS) src/packet.c
|
||||
|
||||
src/fdlist.obj: src/fdlist.c $(INCLUDES)
|
||||
$(CC) $(CFLAGS) src/fdlist.c
|
||||
|
||||
src/dynconf.obj: src/dynconf.c $(INCLUDES) ./include/dbuf.h \
|
||||
./include/channel.h ./include/whowas.h
|
||||
$(CC) $(CFLAGS) src/dynconf.c
|
||||
|
||||
src/send.obj: src/send.c $(INCLUDES)
|
||||
$(CC) $(CFLAGS) src/send.c
|
||||
|
||||
src/match.obj: src/match.c $(INCLUDES)
|
||||
$(CC) $(CFLAGS) src/match.c
|
||||
|
||||
src/support.obj: src/support.c $(INCLUDES)
|
||||
$(CC) $(CFLAGS) src/support.c
|
||||
|
||||
src/channel.obj: src/channel.c $(INCLUDES) ./include/channel.h
|
||||
$(CC) $(CFLAGS) src/channel.c
|
||||
|
||||
src/class.obj: src/class.c $(INCLUDES) ./include/class.h
|
||||
$(CC) $(CFLAGS) src/class.c
|
||||
|
||||
src/ircd.obj: src/ircd.c $(INCLUDES)
|
||||
$(CC) $(CFLAGS) src/ircd.c
|
||||
|
||||
src/list.obj: src/list.c $(INCLUDES)
|
||||
$(CC) $(CFLAGS) src/list.c
|
||||
|
||||
src/res.obj: src/res.c $(INCLUDES)
|
||||
$(CC) $(CFLAGS) src/res.c
|
||||
|
||||
src/s_bsd.obj: src/s_bsd.c $(INCLUDES)
|
||||
$(CC) $(CFLAGS) src/s_bsd.c
|
||||
|
||||
src/s_auth.obj: src/s_auth.c $(INCLUDES)
|
||||
$(CC) $(CFLAGS) src/s_auth.c
|
||||
|
||||
src/s_conf.obj: src/s_conf.c $(INCLUDES)
|
||||
$(CC) $(CFLAGS) src/s_conf.c
|
||||
|
||||
src/s_debug.obj: src/s_debug.c $(INCLUDES)
|
||||
$(CC) $(CFLAGS) src/s_debug.c
|
||||
|
||||
src/s_err.obj: src/s_err.c $(INCLUDES)
|
||||
$(CC) $(CFLAGS) src/s_err.c
|
||||
|
||||
src/s_kline.obj: src/s_kline.c $(INCLUDES)
|
||||
$(CC) $(CFLAGS) src/s_kline.c
|
||||
|
||||
src/s_misc.obj: src/s_misc.c $(INCLUDES) ./include/dbuf.h
|
||||
$(CC) $(CFLAGS) src/s_misc.c
|
||||
|
||||
src/s_socks.obj: src/s_socks.c $(INCLUDES)
|
||||
$(CC) $(CFLAGS) src/s_socks.c
|
||||
|
||||
src/s_user.obj: src/s_user.c $(INCLUDES) ./include/dbuf.h \
|
||||
./include/channel.h ./include/whowas.h
|
||||
$(CC) $(CFLAGS) src/s_user.c
|
||||
|
||||
src/s_extra.obj: src/s_extra.c $(INCLUDES) ./include/dbuf.h \
|
||||
./include/channel.h ./include/whowas.h
|
||||
$(CC) $(CFLAGS) src/s_extra.c
|
||||
|
||||
src/s_unreal.obj: src/s_unreal.c $(INCLUDES) ./include/dbuf.h \
|
||||
./include/channel.h ./include/whowas.h
|
||||
$(CC) $(CFLAGS) src/s_unreal.c
|
||||
|
||||
src/s_serv.obj: src/s_serv.c $(INCLUDES) ./include/dbuf.h ./include/whowas.h
|
||||
$(CC) $(CFLAGS) src/s_serv.c
|
||||
|
||||
src/s_numeric.obj: src/s_numeric.c $(INCLUDES) ./include/dbuf.h
|
||||
$(CC) $(CFLAGS) src/s_numeric.c
|
||||
|
||||
src/whowas.obj: src/whowas.c $(INCLUDES) ./include/dbuf.h ./include/whowas.h
|
||||
$(CC) $(CFLAGS) src/whowas.c
|
||||
|
||||
src/hash.obj: src/hash.c $(INCLUDES) ./include/hash.h
|
||||
$(CC) $(CFLAGS) src/hash.c
|
||||
|
||||
src/crule.obj: src/crule.c $(INCLUDES)
|
||||
$(CC) $(CFLAGS) src/crule.c
|
||||
|
||||
src/win32gui.obj: src/win32/win32gui.c $(INCLUDES) ./src/win32/resource.h
|
||||
#./include/resource.h
|
||||
$(CC) $(CFLAGS) src/win32/win32gui.c
|
||||
|
||||
src/res_comp.obj: src/res_comp.c $(INCLUDES)
|
||||
$(CC) $(CFLAGS) src/res_comp.c
|
||||
|
||||
src/res_init.obj: src/res_init.c $(INCLUDES)
|
||||
$(CC) $(CFLAGS) src/res_init.c
|
||||
|
||||
src/help.obj: src/help.c $(INCLUDES)
|
||||
$(CC) $(CFLAGS) src/help.c
|
||||
|
||||
src/md5.obj: src/md5.c $(INCLUDES)
|
||||
$(CC) $(CFLAGS) src/md5.c
|
||||
|
||||
src/win32/win32.res: src/win32/win32gui.rc
|
||||
$(RC) /l 0x409 /fosrc/win32/win32.res /i ./include /i ./src \
|
||||
/d NDEBUG src/win32/win32gui.rc
|
||||
|
||||
dummy:
|
||||
|
||||
|
||||
#
|
||||
# Win32Gui Config File .. By DrBin
|
||||
# Modified by Zogg for 3.1.x
|
||||
|
||||
CC=cl
|
||||
COMPILERHELP=compilerhelp.exe
|
||||
# Here you put your settings
|
||||
FD_SETSIZE=/D FD_SETSIZE=16384
|
||||
NS_ADDRESS=/D NS_ADDRESS="\"nospoof@dal.net\""
|
||||
|
||||
!IFNDEF DEBUG
|
||||
|
||||
!IFNDEF DISTDEBUG
|
||||
CFLAGS=/MT /O2 /G5 /I ./INCLUDE /Fosrc/ /nologo $(FD_SETSIZE) $(NS_ADDRESS) /D _WIN32GUI /D NOSPOOF=1 /c
|
||||
|
||||
LFLAGS=kernel32.lib user32.lib gdi32.lib shell32.lib wsock32.lib \
|
||||
oldnames.lib libcmt.lib comctl32.lib /nodefaultlib /nologo /out:WIRCD2.EXE
|
||||
|
||||
!ELSE
|
||||
|
||||
CFLAGS= /MTd /Zi /I ./INCLUDE /Fosrc/ /nologo $(FD_SETSIZE) $(NS_ADDRESS) /D _WIN32GUI /D NOSPOOF=1 /c
|
||||
#/Od /Yd /G5
|
||||
LFLAGS=kernel32.lib user32.lib gdi32.lib shell32.lib wsock32.lib \
|
||||
oldnames.lib libcmt.lib comctl32.lib /nodefaultlib /nologo /debug /debugtype:BOTH /OUT:WIRCD.EXE
|
||||
|
||||
|
||||
!ENDIF
|
||||
|
||||
|
||||
!ELSE
|
||||
|
||||
CFLAGS= /MTd /Zi /I ./INCLUDE /Fosrc/ /nologo $(FD_SETSIZE) $(NS_ADDRESS) /D DEBUG /D DEBUGMODE /D _DEBUG /D _WIN32GUI /D NOSPOOF=1 /c
|
||||
#/Od /Yd /G5
|
||||
LFLAGS=kernel32.lib user32.lib gdi32.lib shell32.lib wsock32.lib \
|
||||
oldnames.lib libcmt.lib comctl32.lib /nodefaultlib /nologo /debug /debugtype:BOTH /OUT:WIRCD.EXE
|
||||
|
||||
!ENDIF
|
||||
|
||||
|
||||
INCLUDES=./include/struct.h ./include/config.h ./include/sys.h \
|
||||
./include/common.h ./include/version.h ./include/h.h ./include/numeric.h \
|
||||
./include/msg.h ./include/setup.h ./include/dynconf.h
|
||||
LINK=link.exe
|
||||
OBJ_FILES=SRC/CHANNEL.OBJ SRC/USERLOAD.OBJ SRC/SEND.OBJ SRC/BSD.OBJ \
|
||||
SRC/S_CONF.OBJ SRC/FDLIST.OBJ SRC/DBUF.OBJ \
|
||||
SRC/CLOAK.OBJ SRC/HASH.OBJ SRC/PARSE.OBJ SRC/IRCD.OBJ \
|
||||
SRC/S_NUMERIC.OBJ SRC/WHOWAS.OBJ SRC/S_AUTH.OBJ \
|
||||
SRC/HELP.OBJ SRC/S_MISC.OBJ SRC/MATCH.OBJ SRC/CRULE.OBJ \
|
||||
SRC/S_DEBUG.OBJ SRC/SUPPORT.OBJ SRC/LIST.OBJ \
|
||||
SRC/S_ERR.OBJ SRC/PACKET.OBJ SRC/CLASS.OBJ SRC/S_BSD.OBJ \
|
||||
SRC/S_SERV.OBJ SRC/S_USER.OBJ SRC/WIN32GUI.OBJ \
|
||||
SRC/VERSION.OBJ SRC/S_UNREAL.OBJ SRC/DYNCONF.OBJ \
|
||||
SRC/S_SOCKS.OBJ SRC/S_KLINE.OBJ SRC/S_EXTRA.OBJ SRC/IRCSPRINTF.OBJ SRC/LUSERS.OBJ \
|
||||
SRC/SCACHE.OBJ SRC/ALN.OBJ SRC/BADWORDS.OBJ SRC/WEBTV.OBJ \
|
||||
SRC/RES.OBJ SRC/RES_INIT.OBJ SRC/RES_COMP.OBJ
|
||||
RC=rc.exe
|
||||
|
||||
ALL: COMPILERHELP.EXE WIRCD.EXE
|
||||
|
||||
CLEAN:
|
||||
-@erase src\*.exe 2>NUL
|
||||
-@erase src\*.obj 2>NUL
|
||||
-@erase src\win32.res 2>NUL
|
||||
-@erase src\version.c 2>NUL
|
||||
-@erase src\win32\*.obj 2>NUL
|
||||
-@erase .\*.exe 2>NUL
|
||||
|
||||
#include/setup.h:
|
||||
# @echo Hmm...doesn't look like you've run Config...
|
||||
# @echo Doing so now.
|
||||
# @config.exe
|
||||
|
||||
#src/version.c: dummy
|
||||
# @config.exe -v
|
||||
|
||||
./COMPILERHELP.EXE:
|
||||
cl src/win32/compilerhelp.c /link /out:compilerhelp.exe
|
||||
|
||||
./WIRCD.EXE: $(OBJ_FILES) SRC/win32/WIN32.RES
|
||||
$(LINK) $(LFLAGS) $(OBJ_FILES) SRC/win32/WIN32.RES SRC/WIN32/GNU_REGEX.LIB SRC/WIN32/DEBUG/STACKTRACE.LIB /MAPINFO:LINES /MAP
|
||||
-@erase src\win32\win32.res
|
||||
!IFNDEF DEBUG
|
||||
!IFNDEF DISTDEBUG
|
||||
@echo Non Debug version built
|
||||
!ELSE
|
||||
@echo Distribution DEBUG Version Built
|
||||
!ENDIF
|
||||
!ELSE
|
||||
@echo Debug version built ...
|
||||
!ENDIF
|
||||
|
||||
./CHKCONF.EXE: ./include/struct.h ./include/config.h ./include/sys.h \
|
||||
./include/common.h ./src/crule.c ./src/match.c ./src/chkconf.c
|
||||
$(CC) /nologo /I ./include /D CR_CHKCONF /Fosrc/chkcrule.obj /c src/crule.c
|
||||
$(CC) /nologo /I ./include /D CR_CHKCONF /Fosrc/chkmatch.obj /c src/match.c
|
||||
$(CC) /nologo /I ./include /D CR_CHKCONF /Fosrc/chkconf.obj /c src/chkconf.c
|
||||
$(LINK) /nologo /out:./chkconf.exe src/chkconf.obj src/chkmatch.obj \
|
||||
src/chkcrule.obj
|
||||
|
||||
src/version.obj: src/win32/version.c
|
||||
$(CC) $(CFLAGS) src/win32/version.c
|
||||
|
||||
src/parse.obj: src/parse.c $(INCLUDES)
|
||||
$(CC) $(CFLAGS) src/parse.c
|
||||
|
||||
src/badwords.obj: src/badwords.c $(INCLUDES)
|
||||
$(CC) $(CFLAGS) src/badwords.c
|
||||
|
||||
src/webtv.obj: src/webtv.c $(INCLUDES)
|
||||
$(CC) $(CFLAGS) src/webtv.c
|
||||
|
||||
src/bsd.obj: src/bsd.c $(INCLUDES)
|
||||
$(CC) $(CFLAGS) src/bsd.c
|
||||
|
||||
src/dbuf.obj: src/dbuf.c $(INCLUDES) ./include/dbuf.h
|
||||
$(CC) $(CFLAGS) src/dbuf.c
|
||||
|
||||
src/ircsprintf.obj: src/ircsprintf.c $(INCLUDES)
|
||||
$(CC) $(CFLAGS) src/ircsprintf.c
|
||||
|
||||
src/packet.obj: src/packet.c $(INCLUDES)
|
||||
$(CC) $(CFLAGS) src/packet.c
|
||||
|
||||
src/fdlist.obj: src/fdlist.c $(INCLUDES)
|
||||
$(CC) $(CFLAGS) src/fdlist.c
|
||||
|
||||
src/dynconf.obj: src/dynconf.c $(INCLUDES) ./include/dbuf.h \
|
||||
./include/channel.h ./include/whowas.h
|
||||
$(CC) $(CFLAGS) src/dynconf.c
|
||||
|
||||
src/send.obj: src/send.c $(INCLUDES)
|
||||
$(CC) $(CFLAGS) src/send.c
|
||||
|
||||
src/match.obj: src/match.c $(INCLUDES)
|
||||
$(CC) $(CFLAGS) src/match.c
|
||||
|
||||
src/support.obj: src/support.c $(INCLUDES)
|
||||
$(CC) $(CFLAGS) src/support.c
|
||||
|
||||
src/channel.obj: src/channel.c $(INCLUDES) ./include/channel.h
|
||||
$(CC) $(CFLAGS) src/channel.c
|
||||
|
||||
src/class.obj: src/class.c $(INCLUDES) ./include/class.h
|
||||
$(CC) $(CFLAGS) src/class.c
|
||||
|
||||
src/lusers.obj: src/lusers.c $(INCLUDES)
|
||||
$(CC) $(CFLAGS) src/lusers.c
|
||||
|
||||
src/aln.obj: src/aln.c $(INCLUDES)
|
||||
$(CC) $(CFLAGS) src/aln.c
|
||||
|
||||
src/ircd.obj: src/ircd.c $(INCLUDES)
|
||||
$(CC) $(CFLAGS) src/ircd.c
|
||||
|
||||
src/list.obj: src/list.c $(INCLUDES)
|
||||
$(CC) $(CFLAGS) src/list.c
|
||||
|
||||
src/res.obj: src/res.c $(INCLUDES)
|
||||
$(CC) $(CFLAGS) src/res.c
|
||||
|
||||
src/s_bsd.obj: src/s_bsd.c $(INCLUDES)
|
||||
$(CC) $(CFLAGS) src/s_bsd.c
|
||||
|
||||
src/s_auth.obj: src/s_auth.c $(INCLUDES)
|
||||
$(CC) $(CFLAGS) src/s_auth.c
|
||||
|
||||
src/s_conf.obj: src/s_conf.c $(INCLUDES)
|
||||
$(CC) $(CFLAGS) src/s_conf.c
|
||||
|
||||
src/s_debug.obj: src/s_debug.c $(INCLUDES)
|
||||
$(CC) $(CFLAGS) src/s_debug.c
|
||||
|
||||
src/s_err.obj: src/s_err.c $(INCLUDES)
|
||||
$(CC) $(CFLAGS) src/s_err.c
|
||||
|
||||
src/s_kline.obj: src/s_kline.c $(INCLUDES)
|
||||
$(CC) $(CFLAGS) src/s_kline.c
|
||||
|
||||
src/s_misc.obj: src/s_misc.c $(INCLUDES) ./include/dbuf.h
|
||||
$(CC) $(CFLAGS) src/s_misc.c
|
||||
|
||||
src/scache.obj: src/scache.c $(INCLUDES) ./include/dbuf.h
|
||||
$(CC) $(CFLAGS) src/scache.c
|
||||
|
||||
src/s_socks.obj: src/s_socks.c $(INCLUDES)
|
||||
$(CC) $(CFLAGS) src/s_socks.c
|
||||
|
||||
src/s_user.obj: src/s_user.c $(INCLUDES) ./include/dbuf.h \
|
||||
./include/channel.h ./include/whowas.h
|
||||
$(CC) $(CFLAGS) src/s_user.c
|
||||
|
||||
src/s_extra.obj: src/s_extra.c $(INCLUDES) ./include/dbuf.h \
|
||||
./include/channel.h ./include/whowas.h
|
||||
$(CC) $(CFLAGS) src/s_extra.c
|
||||
|
||||
src/s_unreal.obj: src/s_unreal.c $(INCLUDES) ./include/dbuf.h \
|
||||
./include/channel.h ./include/whowas.h
|
||||
$(CC) $(CFLAGS) src/s_unreal.c
|
||||
|
||||
src/s_serv.obj: src/s_serv.c $(INCLUDES) ./include/dbuf.h ./include/whowas.h
|
||||
$(CC) $(CFLAGS) src/s_serv.c
|
||||
|
||||
src/s_numeric.obj: src/s_numeric.c $(INCLUDES) ./include/dbuf.h
|
||||
$(CC) $(CFLAGS) src/s_numeric.c
|
||||
|
||||
src/whowas.obj: src/whowas.c $(INCLUDES) ./include/dbuf.h ./include/whowas.h
|
||||
$(CC) $(CFLAGS) src/whowas.c
|
||||
|
||||
src/hash.obj: src/hash.c $(INCLUDES) ./include/hash.h
|
||||
$(CC) $(CFLAGS) src/hash.c
|
||||
|
||||
src/crule.obj: src/crule.c $(INCLUDES)
|
||||
$(CC) $(CFLAGS) src/crule.c
|
||||
|
||||
src/win32gui.obj: src/win32/win32gui.c $(INCLUDES) ./src/win32/resource.h
|
||||
#./include/resource.h
|
||||
$(CC) $(CFLAGS) src/win32/win32gui.c
|
||||
|
||||
src/res_comp.obj: src/res_comp.c $(INCLUDES)
|
||||
$(CC) $(CFLAGS) src/res_comp.c
|
||||
|
||||
src/res_init.obj: src/res_init.c $(INCLUDES)
|
||||
$(CC) $(CFLAGS) src/res_init.c
|
||||
|
||||
src/help.obj: src/help.c $(INCLUDES)
|
||||
$(CC) $(CFLAGS) src/help.c
|
||||
|
||||
src/md5.obj: src/md5.c $(INCLUDES)
|
||||
$(CC) $(CFLAGS) src/md5.c
|
||||
|
||||
src/win32/win32.res: src/win32/win32gui.rc
|
||||
!IFNDEF DISTDEBUG
|
||||
$(COMPILERHELP) src/win32/leavealone.h
|
||||
!ELSE
|
||||
$(COMPILERHELP) src/win32/leavealone.h 0
|
||||
!ENDIF
|
||||
$(RC) /l 0x409 /fosrc/win32/win32.res /i ./include /i ./src \
|
||||
/d NDEBUG src/win32/win32gui.rc
|
||||
|
||||
dummy:
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -1,71 +0,0 @@
|
||||
ver2^2
|
||||
#
|
||||
# Network Configuration File Template
|
||||
# -----------------------------------------
|
||||
# Added-at: <day> <month> <year> <hh:dd> GMT
|
||||
# Author: <nick> (<real name>)
|
||||
# E-Mail: <email>
|
||||
# $Id$
|
||||
# -----------------------------------------
|
||||
# This is a template so you can create your own network configuration files
|
||||
# Just follow the instructions and it will prolly work ;)
|
||||
# 0 = No 1 = Yes
|
||||
# -------------------------------------------------------
|
||||
#
|
||||
# These two specify the name of the IRC network, set the same in both fields
|
||||
Network >..........: 972-Scripterz
|
||||
Set ircnetwork ....: 972-Scripterz
|
||||
|
||||
# This is where your DNS pool is (like irc.dal.net)
|
||||
Set defserv .......: irc.972-Scripterz.org
|
||||
|
||||
# This is the name of your Services Server
|
||||
Set SERVICES_NAME .: services.972-Scripterz.org
|
||||
|
||||
# This is the virtual hostname IRCops will get if iNAH option is enabled
|
||||
# on oper up
|
||||
Set oper_host .....: ircop.972-Scripterz.org
|
||||
|
||||
# This is the virtual hostname Server Admins will get if iNAH option is enabled
|
||||
# on oper up
|
||||
Set admin_host ....: admin.972-Scripterz.org
|
||||
|
||||
# This is the virtual hostname Local IRCops will get if iNAH option is enabled
|
||||
# on oper up
|
||||
|
||||
Set locop_host ....: locop.972-Scripterz.org
|
||||
|
||||
# This is the virtual hostname Services Operators/Admins will get
|
||||
# if iNAH option is enabled on oper up
|
||||
|
||||
Set sadmin_host ...: serviceop.972-Scripterz.org
|
||||
|
||||
# This is the virtual hostname NetAdmins will get
|
||||
# if iNAH option is enabled on oper up
|
||||
|
||||
Set netadmin_host .: netadmin.972-Scripterz.org
|
||||
|
||||
# This is the virtual hostname CoAdmins will get
|
||||
# if iNAH option is enabled on oper up
|
||||
Set coadmin_host ..: coadmin.972-Scripterz.org
|
||||
|
||||
|
||||
# This is the virtual hostname TechAdmins will get
|
||||
# if iNAH option is enabled on oper up
|
||||
Set techadmin_host : techadmin.972-Scripterz.org
|
||||
|
||||
# This is the prefix of the hidden host (cloaking) hostname
|
||||
Set hidden_host ...: sz
|
||||
# This is the domain of the IRC network
|
||||
Set netdomain .....: 972-Scripterz.org
|
||||
# This is where people can go for help
|
||||
Set helpchan ......: #972-Scripterz
|
||||
# This is the name of the stats server
|
||||
Set STATS_SERVER ..: stats.972-Scripters.org
|
||||
# -- Not in use--
|
||||
Set HUB ...........: 0
|
||||
# This enables the auto-setting of f.x @netadmin.network.net
|
||||
# on oper up
|
||||
Set iNAH ..........: 0
|
||||
# -- Not in use but still here --
|
||||
Set net_quit ......: sz
|
||||
@@ -1,71 +0,0 @@
|
||||
ver^2.2
|
||||
#
|
||||
# Network Configuration File Template
|
||||
# -----------------------------------------
|
||||
# Added-at: <11> <09> <1999> <14:32> GMT
|
||||
# Author: <Kerjin> Steve>)
|
||||
# E-Mail: <kerjin@alternativenet.org>
|
||||
# $Id$
|
||||
# -----------------------------------------
|
||||
# This is a template so you can create your own network configuration files
|
||||
# Just follow the instructions and it will prolly work ;)
|
||||
# 0 = No 1 = Yes
|
||||
# -------------------------------------------------------
|
||||
#
|
||||
# These two specify the name of the IRC network, set the same in both fields
|
||||
Network >..........: AltNet IRC
|
||||
Set ircnetwork ....: AltNet IRC
|
||||
|
||||
# This is where your DNS pool is (like irc.dal.net)
|
||||
Set defserv .......: irc.alternativenet.org
|
||||
|
||||
# This is the name of your Services Server
|
||||
Set SERVICES_NAME .: services.alternativenet.org
|
||||
|
||||
# This is the virtual hostname IRCops will get if iNAH option is enabled
|
||||
# on oper up
|
||||
Set oper_host .....: ircop.alternativenet.org
|
||||
|
||||
# This is the virtual hostname Server Admins will get if iNAH option is enabled
|
||||
# on oper up
|
||||
Set admin_host ....: admin.alternativenet.org
|
||||
|
||||
# This is the virtual hostname Local IRCops will get if iNAH option is enabled
|
||||
# on oper up
|
||||
|
||||
Set locop_host ....: locop.alternativenet.org
|
||||
|
||||
# This is the virtual hostname Services Operators/Admins will get
|
||||
# if iNAH option is enabled on oper up
|
||||
|
||||
Set sadmin_host ...: serviceop.alternativenet.org
|
||||
|
||||
# This is the virtual hostname NetAdmins will get
|
||||
# if iNAH option is enabled on oper up
|
||||
|
||||
Set netadmin_host .: netadmin.alternativenet.org
|
||||
|
||||
# This is the virtual hostname CoAdmins will get
|
||||
# if iNAH option is enabled on oper up
|
||||
Set coadmin_host ..: coadmin.alternativenet.org
|
||||
|
||||
|
||||
# This is the virtual hostname TechAdmins will get
|
||||
# if iNAH option is enabled on oper up
|
||||
Set techadmin_host : techadmin.alternativenet.org
|
||||
|
||||
# This is the prefix of the hidden host (cloaking) hostname
|
||||
Set hidden_host ...: altirc
|
||||
# This is the domain of the IRC network
|
||||
Set netdomain .....: alternativenet.org
|
||||
# This is where people can go for help
|
||||
Set helpchan ......: #AltNetHelp
|
||||
# This is the name of the stats server
|
||||
Set STATS_SERVER ..: statistics.alternativenet.org
|
||||
# -- Not in use--
|
||||
Set HUB ...........: 1
|
||||
# This enables the auto-setting of f.x @netadmin.network.net
|
||||
# on oper up
|
||||
Set iNAH ..........: 1
|
||||
# -- Not in use but still here --
|
||||
Set net_quit ......: alt
|
||||
@@ -1,29 +0,0 @@
|
||||
ver^2.2
|
||||
#
|
||||
# Bunker7.net Network Configuration File
|
||||
# -----------------------------------------
|
||||
# Added-at: 17 August 1999 12:34 CT
|
||||
# Author: Rogue
|
||||
# E-Mail: rogue@bunker7.net
|
||||
# $Id$
|
||||
# -----------------------------------------
|
||||
#
|
||||
|
||||
Network >..........: bunker7
|
||||
Set ircnetwork ....: bunker7
|
||||
Set defserv .......: irc.bunker7.net
|
||||
Set SERVICES_NAME .: services.bunker7.net
|
||||
Set oper_host .....: global.bunker7.net
|
||||
Set admin_host ....: admin.bunker7.net
|
||||
Set locop_host ....: local.bunker7.net
|
||||
Set sadmin_host ...: sadm.bunker7.net
|
||||
Set netadmin_host .: netadmin.bunker7.net
|
||||
Set coadmin_host ..: coadmin.bunker7.net
|
||||
Set techadmin_host : techadmin.bunker7.net
|
||||
Set hidden_host ...: bunker7
|
||||
Set netdomain .....: bunker7.net
|
||||
Set helpchan ......: #bunker7
|
||||
Set STATS_SERVER ..: stats.bunker7.net
|
||||
Set HUB ...........: 1
|
||||
Set iNAH ..........: 0
|
||||
Set net_quit ......: B7
|
||||
@@ -1,65 +0,0 @@
|
||||
#
|
||||
# Network Configuration File Template
|
||||
# -----------------------------------------
|
||||
# Added-at: <day> <month> <year> <hh:dd> GMT
|
||||
# Author: Curt|s
|
||||
# E-Mail: <email>
|
||||
# $Id$
|
||||
#
|
||||
# These two specify the name of the IRC network, set the same in both fields
|
||||
Network >..........: DigitalIRC.Net
|
||||
Set ircnetwork ....: DigitalIRC.Net
|
||||
|
||||
# This is where your DNS pool is (like irc.dal.net)
|
||||
Set defserv .......: irc.digitalirc.net
|
||||
|
||||
# This is the name of your Services Server
|
||||
Set SERVICES_NAME .: Services.DigitalIRC.Net
|
||||
|
||||
# This is the virtual hostname IRCops will get if iNAH option is enabled
|
||||
# on oper up
|
||||
Set oper_host .....: Oper.DigitalIRC.Net
|
||||
|
||||
# This is the virtual hostname Server Admins will get if iNAH option is enabled
|
||||
# on oper up
|
||||
Set admin_host ....: Admin.DigitalIRC.Net
|
||||
|
||||
# This is the virtual hostname Local IRCops will get if iNAH option is enabled
|
||||
# on oper up
|
||||
|
||||
Set locop_host ....: LocOper.DigitalIRC.Net
|
||||
|
||||
# This is the virtual hostname Services Operators/Admins will get
|
||||
# if iNAH option is enabled on oper up
|
||||
|
||||
Set sadmin_host ...: ServicesOp.DigitalIRC.Net
|
||||
|
||||
# This is the virtual hostname NetAdmins will get
|
||||
# if iNAH option is enabled on oper up
|
||||
|
||||
Set netadmin_host .: NetAdmin.DigitalIRC.Net
|
||||
|
||||
# This is the virtual hostname CoAdmins will get
|
||||
# if iNAH option is enabled on oper up
|
||||
Set coadmin_host ..: NetAdmin.DigitalIRC.Net
|
||||
|
||||
|
||||
# This is the virtual hostname TechAdmins will get
|
||||
# if iNAH option is enabled on oper up
|
||||
Set techadmin_host : Tech.DigitalIRC.Net
|
||||
|
||||
# This is the prefix of the hidden host (cloaking) hostname
|
||||
Set hidden_host ...: NN
|
||||
# This is the domain of the IRC network
|
||||
Set netdomain .....: DigtialIRC.Net
|
||||
#This is where people can go for help
|
||||
Set helpchan ......: #Digitalirc
|
||||
# This is the name of the stats server
|
||||
Set STATS_SERVER ..: Statistics.DigitalIRC.com
|
||||
# -- Not in use--
|
||||
Set HUB ...........: 1
|
||||
# This enables the auto-setting of f.x @netadmin.network.net
|
||||
# on oper up
|
||||
Set iNAH ..........: 0
|
||||
# -- Not in use but still here --
|
||||
Set net_quit ......: ic
|
||||
@@ -1,29 +0,0 @@
|
||||
ver^2.2
|
||||
#
|
||||
# DragonWings.org Network Configuration File
|
||||
# -----------------------------------------
|
||||
# Added-at: 14 July 1999 00:00 GMT
|
||||
# Author: Stskeeps (Carsten Munk)
|
||||
# E-Mail: stskeeps@global-irc.net
|
||||
# $Id$
|
||||
# -----------------------------------------
|
||||
#
|
||||
|
||||
Network >..........: DragonWings
|
||||
Set ircnetwork ....: DragonWings
|
||||
Set defserv .......: irc.dragonwings.org
|
||||
Set SERVICES_NAME .: saturn.dragonwings.org
|
||||
Set oper_host .....: ircop.dragonwings.org
|
||||
Set admin_host ....: admin.dragonwings.org
|
||||
Set locop_host ....: locop.dragonwings.org
|
||||
Set sadmin_host ...: serviceop.dragonwings.org
|
||||
Set netadmin_host .: netadmin.dragonwings.org
|
||||
Set coadmin_host ..: coadmin.dragonwings.org
|
||||
Set techadmin_host : techadmin.dragonwings.org
|
||||
Set hidden_host ...: dw
|
||||
Set netdomain .....: dragonwings.org
|
||||
Set helpchan ......: #DragonWings
|
||||
Set STATS_SERVER ..: stats.dragonwings.org
|
||||
Set HUB ...........: 1
|
||||
Set iNAH ..........: 0
|
||||
Set net_quit ......: DW
|
||||
@@ -1,30 +0,0 @@
|
||||
|
||||
#
|
||||
# FireIRC Network Configuration File
|
||||
# -----------------------------------------
|
||||
# Added-at: 14 July 1999 00:00 GMT
|
||||
# Author: MasterSatan (Erik Kerr)
|
||||
# E-Mail: Kerrfarm@bright.net
|
||||
#
|
||||
# -----------------------------------------
|
||||
#
|
||||
|
||||
|
||||
Network >..........: FireIRC
|
||||
Set ircnetwork ....: FireIRC
|
||||
Set defserv .......: irc.FireIRC.Net
|
||||
Set SERVICES_NAME .: services.FireIRC.Net
|
||||
Set oper_host .....: ircOP.FireIRC.Net
|
||||
Set admin_host ....: Admin.FireIRC.Net
|
||||
Set locop_host ....: localOP.FireIRC.Net
|
||||
Set sadmin_host ...: serviceOP.FireIRC.Net
|
||||
Set netadmin_host .: NetADMIN.FireIRC.Net
|
||||
Set coadmin_host ..: CoADMIN.FireIRC.Net
|
||||
Set techadmin_host : TechAdmin.FireIRC.Net
|
||||
Set hidden_host ...: FireIRC
|
||||
Set netdomain .....: FireIRC.Net
|
||||
Set helpchan ......: #Services
|
||||
Set STATS_SERVER ..: stats.FireIRC.Net
|
||||
Set HUB ...........: 1
|
||||
Set iNAH ..........: 0
|
||||
Set net_quit ......: FI
|
||||
@@ -1,29 +0,0 @@
|
||||
ver^2.2
|
||||
#
|
||||
# Global-IRC.net Network Configuration File
|
||||
# -----------------------------------------
|
||||
# Added-at: 14 July 1999 00:00 GMT
|
||||
# Author: Stskeeps (Carsten Munk)
|
||||
# E-Mail: stskeeps@global-irc.net
|
||||
# $Id$
|
||||
# -----------------------------------------
|
||||
#
|
||||
|
||||
Network >..........: Global-IRC
|
||||
Set ircnetwork ....: Global-IRC
|
||||
Set defserv .......: irc.global-irc.net
|
||||
Set SERVICES_NAME .: services.global-irc.net
|
||||
Set oper_host .....: ircop.global-irc.net
|
||||
Set admin_host ....: admin.global-irc.net
|
||||
Set locop_host ....: locop.global-irc.net
|
||||
Set sadmin_host ...: serviceop.global-irc.net
|
||||
Set netadmin_host .: netadmin.global-irc.net
|
||||
Set coadmin_host ..: coadmin.global-irc.net
|
||||
Set techadmin_host : techadmin.global-irc.net
|
||||
Set hidden_host ...: global
|
||||
Set netdomain .....: global-irc.net
|
||||
Set helpchan ......: #Global
|
||||
Set STATS_SERVER ..: stats.global-irc.net
|
||||
Set HUB ...........: 1
|
||||
Set iNAH ..........: 0
|
||||
Set net_quit ......: GI
|
||||
@@ -1,29 +0,0 @@
|
||||
ver^2.2
|
||||
#
|
||||
# Global-IRC.net Network Configuration File
|
||||
# -----------------------------------------
|
||||
# Added-at: 14 July 1999 00:00 GMT
|
||||
# Author: Stskeeps (Carsten Munk)
|
||||
# E-Mail: stskeeps@global-irc.net
|
||||
# $Id$
|
||||
# -----------------------------------------
|
||||
#
|
||||
|
||||
Network >..........: Infinity-IRC.org
|
||||
Set ircnetwork ....: Infinity-IRC.org
|
||||
Set defserv .......: irc.infinity-irc.org
|
||||
Set SERVICES_NAME .: services.infinity-irc.org
|
||||
Set oper_host .....: IRCop.Infinity-IRC.org
|
||||
Set admin_host ....: IRCop-Admin.Infinity-IRC.org
|
||||
Set locop_host ....: LOCop.Infinity-IRC.org
|
||||
Set sadmin_host ...: IRCop-ServiceAdmin.Infinity-IRC.org
|
||||
Set netadmin_host .: IRCop-NetAdmin.Infinity-IRC.org
|
||||
Set coadmin_host ..: IRCop-CoAdmin.Infinity-IRC.org
|
||||
Set techadmin_host : IRCop-TechAdmin.Infinity-IRC.org
|
||||
Set hidden_host ...: Infinity
|
||||
Set netdomain .....: Infinity-IRC.org
|
||||
Set helpchan ......: #Infinity
|
||||
Set STATS_SERVER ..: stats.infinity-irc.org
|
||||
Set HUB ...........: 1
|
||||
Set iNAH ..........: 1
|
||||
Set net_quit ......: IN
|
||||
Executable
+277
@@ -0,0 +1,277 @@
|
||||
#!/bin/sh
|
||||
|
||||
# makenet v1.0 - generates a network file for UnrealIRCd
|
||||
#
|
||||
# you may freely use this file with any other program as
|
||||
# long as the credits remain intact
|
||||
#
|
||||
# (c) 2000 codemastr (Dominick Meglio) and the UnrealIRCd Team
|
||||
|
||||
VERSION="2.3"
|
||||
DATE=`date "+%d %B %Y %H:%M"`
|
||||
FILE="mynet.network"
|
||||
EXISTS="y"
|
||||
NICK="MyNick"
|
||||
EMAIL="me@mynet.org"
|
||||
NETWORK="My IRC Network"
|
||||
DEFSERV="irc.mynet.org"
|
||||
SERVICES_NAME="services.mynet.org"
|
||||
OPER_HOST="oper.mynet.org"
|
||||
ADMIN_HOST="admin.mynet.org"
|
||||
LOCOP_HOST="locop.mynet.org"
|
||||
CSOP_HOST="csop.mynet.org"
|
||||
NETADMIN_HOST="netadmin.mynet.org"
|
||||
COADMIN_HOST="coadmin.mynet.org"
|
||||
HIDDEN_HOST="hide"
|
||||
NETDOMAIN="mynet.org"
|
||||
HELPCHAN="#help"
|
||||
STATS_SERVER="stats.mynet.org"
|
||||
INAH="1"
|
||||
SUBMIT="y"
|
||||
|
||||
# Checking out how to specify not to make a new line with the current OS
|
||||
c=''
|
||||
n=''
|
||||
2>/dev/null
|
||||
if [ "`eval echo -n 'a'`" = "-n a" ]; then
|
||||
c='\c'
|
||||
else
|
||||
n='-n'
|
||||
fi
|
||||
|
||||
clear
|
||||
echo "Welcome to the UnrealIRCd network file generator"
|
||||
echo "If you need help to set the IRCd up,"
|
||||
echo "mail unreal-support@lists.sourceforge.net or ask"
|
||||
echo "at IRC: /server irc.ircsystems.net, /join #unrealircd"
|
||||
echo ""
|
||||
echo "For any sake, read Unreal.nfo and read doc/faq before asking"
|
||||
echo "questions"
|
||||
echo "[Enter to Begin]"
|
||||
read cc
|
||||
|
||||
echo ""
|
||||
echo "What do you want your network file to be called?"
|
||||
echo $n "[$FILE] -> $c"
|
||||
read cc
|
||||
if [ ! -z $cc ]; then
|
||||
FILE="$cc"
|
||||
fi
|
||||
|
||||
if [ -f $FILE ]; then
|
||||
echo ""
|
||||
echo "$FILE already exists do you want to override it?"
|
||||
echo $n "[$EXISTS] -> $c"
|
||||
read cc
|
||||
if [ ! -z $cc ]; then
|
||||
EXISTS="$cc"
|
||||
fi
|
||||
case "$EXISTS" in
|
||||
[Nn]*)
|
||||
exit
|
||||
;;
|
||||
*)
|
||||
;;
|
||||
esac
|
||||
fi
|
||||
|
||||
echo ""
|
||||
echo "What is your IRC nickname?"
|
||||
echo $n "[$NICK] -> $c"
|
||||
read cc
|
||||
if [ ! -z $cc ]; then
|
||||
NICK="$cc"
|
||||
fi
|
||||
|
||||
echo ""
|
||||
echo "What is your email address?"
|
||||
echo $n "[$EMAIL] -> $c"
|
||||
read cc
|
||||
if [ ! -z $cc ]; then
|
||||
EMAIL="$cc"
|
||||
fi
|
||||
|
||||
echo ""
|
||||
echo "What is the name of your IRC network?"
|
||||
echo $n "[$NETWORK] -> $c"
|
||||
read cc
|
||||
if [ ! -z $cc ]; then
|
||||
NETWORK="$cc"
|
||||
fi
|
||||
|
||||
echo ""
|
||||
echo "What is the default server for your network?"
|
||||
echo $n "[$DEFSERV] -> $c"
|
||||
read cc
|
||||
if [ ! -z $cc ]; then
|
||||
DEFSERV="$cc"
|
||||
fi
|
||||
|
||||
echo ""
|
||||
echo "What is the name of your services server?"
|
||||
echo $n "[$SERVICES_NAME] -> $c"
|
||||
read cc
|
||||
if [ ! -z $cc ]; then
|
||||
SERVICES_NAME="$cc"
|
||||
fi
|
||||
|
||||
echo ""
|
||||
echo "What is the virtual host opers will get when they oper up?"
|
||||
echo $n "[$OPER_HOST] -> $c"
|
||||
read cc
|
||||
if [ ! -z $cc ]; then
|
||||
OPER_HOST="$cc"
|
||||
fi
|
||||
|
||||
echo ""
|
||||
echo "What is the virtual host services opers will get when they oper up?"
|
||||
echo $n "[$CSOP_HOST] -> $c"
|
||||
read cc
|
||||
if [ ! -z $cc ]; then
|
||||
CSOP_HOST="$cc"
|
||||
fi
|
||||
|
||||
echo ""
|
||||
echo "What is the virtual host admins will get when they oper up?"
|
||||
echo $n "[$ADMIN_HOST] -> $c"
|
||||
read cc
|
||||
if [ ! -z $cc ]; then
|
||||
ADMIN_HOST="$cc"
|
||||
fi
|
||||
|
||||
echo ""
|
||||
echo "What is the virtual host local opers will get when they oper up?"
|
||||
echo $n "[$LOCOP_HOST] -> $c"
|
||||
read cc
|
||||
if [ ! -z $cc ]; then
|
||||
LOCOP_HOST="$cc"
|
||||
fi
|
||||
|
||||
echo ""
|
||||
echo "What is the virtual host coadmins will get when they oper up?"
|
||||
echo $n "[$COADMIN_HOST] -> $c"
|
||||
read cc
|
||||
if [ ! -z $cc ]; then
|
||||
COADMIN_HOST="$cc"
|
||||
fi
|
||||
|
||||
echo ""
|
||||
echo "What is the virtual host netadmins will get when they oper up?"
|
||||
echo $n "[$NETADMIN_HOST] -> $c"
|
||||
read cc
|
||||
if [ ! -z $cc ]; then
|
||||
NETADMIN_HOST="$cc"
|
||||
fi
|
||||
|
||||
echo ""
|
||||
echo "What do you want the prefix for the hidden hosts to be?"
|
||||
echo $n "[$HIDDEN_HOST] -> $c"
|
||||
read cc
|
||||
if [ ! -z $cc ]; then
|
||||
HIDDEN_HOST="$cc"
|
||||
fi
|
||||
|
||||
echo ""
|
||||
echo "What is your network's domain name?"
|
||||
echo $n "[$NETDOMAIN] -> $c"
|
||||
read cc
|
||||
if [ ! -z $cc ]; then
|
||||
NETDOMAIN="$cc"
|
||||
fi
|
||||
|
||||
echo ""
|
||||
echo "What is your network's help channel?"
|
||||
echo $n "[$HELPCHAN] -> $c"
|
||||
read cc
|
||||
if [ ! -z $cc ]; then
|
||||
HELPCHAN="$cc"
|
||||
fi
|
||||
|
||||
echo ""
|
||||
echo "What is the name of your stats server?"
|
||||
echo $n "[$STATS_SERVER] -> $c"
|
||||
read cc
|
||||
if [ ! -z $cc ]; then
|
||||
STATS_SERVER="$cc"
|
||||
fi
|
||||
|
||||
echo ""
|
||||
echo "Do you want oper's hosts to be changed on /oper?"
|
||||
echo "1 = yes 0 = no"
|
||||
echo $n "[$INAH] -> $c"
|
||||
read cc
|
||||
if [ ! -z $cc ]; then
|
||||
INAH="$cc"
|
||||
fi
|
||||
|
||||
# write the actual conf
|
||||
|
||||
cat > $FILE << __EOF__
|
||||
ver^$VERSION
|
||||
#
|
||||
# $NETWORK ($DEFSERV) Network Configuration File
|
||||
# --------------------------------------------------
|
||||
# Added-at: $DATE
|
||||
# Author: $NICK
|
||||
# Email: $EMAIL
|
||||
# -----------------------------------------
|
||||
#
|
||||
|
||||
Network >..........: $NETWORK
|
||||
Set ircnetwork ....: $NETWORK
|
||||
Set defserv .......: $DEFSERV
|
||||
Set SERVICES_NAME .: $SERVICES_NAME
|
||||
Set oper_host .....: $OPER_HOST
|
||||
Set admin_host ....: $ADMIN_HOST
|
||||
Set locop_host ....: $LOCOP_HOST
|
||||
Set sadmin_host ...: $CSOP_HOST
|
||||
Set netadmin_host .: $NETADMIN_HOST
|
||||
Set coadmin_host ..: $COADMIN_HOST
|
||||
Set hidden_host ...: $HIDDEN_HOST
|
||||
Set netdomain .....: $NETDOMAIN
|
||||
Set helpchan ......: $HELPCHAN
|
||||
Set STATS_SERVER ..: $STATS_SERVER
|
||||
Set HUB ...........: not_in_use
|
||||
Set iNAH ..........: $INAH
|
||||
Set net_quit ......: not_in_use
|
||||
__EOF__
|
||||
|
||||
echo ""
|
||||
echo "Would you like to submit the your network file to be included with future releases of unreal?"
|
||||
echo $n "[$SUBMIT] -> $c"
|
||||
read cc
|
||||
if [ ! -z $cc ]; then
|
||||
SUBMIT="$cc"
|
||||
fi
|
||||
case "$SUBMIT" in
|
||||
[Nn]*)
|
||||
echo "Ok all done, all you have to do is,"
|
||||
echo "Change the Include line in unrealircd.conf to:"
|
||||
echo "Include .................: networks/$FILE"
|
||||
echo "Thank your for choosing UnrealIRCd"
|
||||
exit
|
||||
;;
|
||||
*)
|
||||
;;
|
||||
esac
|
||||
|
||||
if [ "$NETWORK" == "My IRC Network" ] ; then
|
||||
echo ""
|
||||
echo "You may not submit a network file that uses default values"
|
||||
exit
|
||||
fi
|
||||
|
||||
cat |sendmail -t << __EOF__&
|
||||
To: unreal-networks@lists.sourceforge.net
|
||||
From: $EMAIL
|
||||
Subject: Network file submission for $NETWORK
|
||||
|
||||
`cat $FILE`
|
||||
.
|
||||
__EOF__
|
||||
echo ""
|
||||
echo "Ok all done, all you have to do is,"
|
||||
echo "Change the Include line in unrealircd.conf to:"
|
||||
echo "Include .................: networks/$FILE"
|
||||
echo "Thank your for choosing UnrealIRCd"
|
||||
exit
|
||||
@@ -1,31 +0,0 @@
|
||||
ver^2.2
|
||||
#
|
||||
# MegaIRC.net Network Configuration File
|
||||
# -----------------------------------------
|
||||
# Added-at: 1 August 1999 00:00 GMT
|
||||
# Author: NonMortal (Luke Slotwinski)
|
||||
# E-Mail: NonMortal@MegaIRC.Com
|
||||
# $Id$
|
||||
# -----------------------------------------
|
||||
#
|
||||
|
||||
Network >..........: MegaIRC
|
||||
Set ircnetwork ....: MegaIRC
|
||||
Set defserv .......: irc.MegaIRC.Net
|
||||
Set SERVICES_NAME .: Services.MegaIRC.Net
|
||||
Set oper_host .....: Ircop.MegaIRC.Net
|
||||
Set admin_host ....: Server-Admin.MegaIRC.Net
|
||||
Set locop_host ....: Local-Ircop.MegaIRC.Net
|
||||
Set sadmin_host ...: SOP.MegaIRC.Net
|
||||
Set netadmin_host .: NetAdmin.MegaIRC.Net
|
||||
Set coadmin_host ..: Server-CoAdmin.MegaIRC.Net
|
||||
Set techadmin_host : TechAdmin.MegaIRC.Net
|
||||
Set hidden_host ...: mega
|
||||
Set netdomain .....: MegaIRC.Net
|
||||
Set helpchan ......: #helpdesk
|
||||
Set STATS_SERVER ..: Stats.MegaIRC.Net
|
||||
Set HUB ...........: 1
|
||||
Set iNAH ..........: 1
|
||||
Set net_quit ......: MI
|
||||
# To protect people from using normal edition Unreal to link to MegaIRC
|
||||
Set STOPSE ........: 1
|
||||
@@ -1,29 +0,0 @@
|
||||
ver^2.2
|
||||
#
|
||||
# Mp3Fans.net Network Configuration File
|
||||
# -----------------------------------------
|
||||
# Added-at: 14 July 1999 00:00 GMT
|
||||
# Author: Stskeeps (Carsten Munk)
|
||||
# E-Mail: stskeeps@global-irc.net
|
||||
# $Id$
|
||||
# -----------------------------------------
|
||||
#
|
||||
|
||||
Network >..........: Mp3FansNet
|
||||
Set ircnetwork ....: Mp3FansNet
|
||||
Set defserv .......: irc.mp3fans.net
|
||||
Set SERVICES_NAME .: services.mp3fans.net
|
||||
Set oper_host .....: ircop.mp3fans.net
|
||||
Set admin_host ....: admin.mp3fans.net
|
||||
Set locop_host ....: locop.mp3fans.net
|
||||
Set sadmin_host ...: serviceop.mp3fans.net
|
||||
Set netadmin_host .: netadmin.mp3fans.net
|
||||
Set coadmin_host ..: coadmin.mp3fans.net
|
||||
Set techadmin_host : techadmin.mp3fans.net
|
||||
Set hidden_host ...: mpx
|
||||
Set netdomain .....: mp3fans.net
|
||||
Set helpchan ......: #Mp3Fans
|
||||
Set STATS_SERVER ..: stats.mp3fans.net
|
||||
Set HUB ...........: 1
|
||||
Set iNAH ..........: 0
|
||||
Set net_quit ......: m3
|
||||
@@ -1,70 +0,0 @@
|
||||
ver^2.2
|
||||
#
|
||||
# Network Configuration File Template
|
||||
# -----------------------------------------
|
||||
# Added-at: 23 August 1999 <18:00> GMT
|
||||
# Author: codemastr <codemastr@elite-hacker.cx>
|
||||
# $Id$
|
||||
# -----------------------------------------
|
||||
# This is a template so you can create your own network configuration files
|
||||
# Just follow the instructions and it will prolly work ;)
|
||||
# 0 = No 1 = Yes
|
||||
# -------------------------------------------------------
|
||||
#
|
||||
# These two specify the name of the IRC network, set the same in both fields
|
||||
Network >..........: NeoHorizon
|
||||
Set ircnetwork ....: NeoHorizon
|
||||
|
||||
# This is where your DNS pool is (like irc.dal.net)
|
||||
Set defserv .......: irc.nhn.net
|
||||
|
||||
# This is the name of your Services Server
|
||||
Set SERVICES_NAME .: services.nhn.net
|
||||
|
||||
# This is the virtual hostname IRCops will get if iNAH option is enabled
|
||||
# on oper up
|
||||
Set oper_host .....: IRCop.nhn.net
|
||||
|
||||
# This is the virtual hostname Server Admins will get if iNAH option is enabled
|
||||
# on oper up
|
||||
Set admin_host ....: Admin.nhn.net
|
||||
|
||||
# This is the virtual hostname Local IRCops will get if iNAH option is enabled
|
||||
# on oper up
|
||||
|
||||
Set locop_host ....: Locop.nhn.net
|
||||
|
||||
# This is the virtual hostname Services Operators/Admins will get
|
||||
# if iNAH option is enabled on oper up
|
||||
|
||||
Set sadmin_host ...: ServicesOP.nhn.net
|
||||
|
||||
# This is the virtual hostname NetAdmins will get
|
||||
# if iNAH option is enabled on oper up
|
||||
|
||||
Set netadmin_host .: NetAdmin.nhn.net
|
||||
|
||||
# This is the virtual hostname CoAdmins will get
|
||||
# if iNAH option is enabled on oper up
|
||||
Set coadmin_host ..: Co-Admin.nhn.net
|
||||
|
||||
|
||||
# This is the virtual hostname TechAdmins will get
|
||||
# if iNAH option is enabled on oper up
|
||||
Set techadmin_host : techadmin.nhn.net
|
||||
|
||||
# This is the prefix of the hidden host (cloaking) hostname
|
||||
Set hidden_host ...: Neo
|
||||
# This is the domain of the IRC network
|
||||
Set netdomain .....: nhn.net
|
||||
# This is where people can go for help
|
||||
Set helpchan ......: #neohorizon
|
||||
# This is the name of the stats server
|
||||
Set STATS_SERVER ..: stats.nhn.net
|
||||
# -- Not in use--
|
||||
Set HUB ...........: 1
|
||||
# This enables the auto-setting of f.x @netadmin.network.net
|
||||
# on oper up
|
||||
Set iNAH ..........: 1
|
||||
# -- Not in use but still here --
|
||||
Set net_quit ......: NH
|
||||
@@ -1,24 +0,0 @@
|
||||
# Networks index file - do not touch please
|
||||
networks/global-irc.network ......: Global-IRC (http://www.global-irc.net)
|
||||
networks/mp3fans.network .........: Mp3Fans.Net (http://www.mp3fans.net)
|
||||
networks/roxnet.network ..........: ROXnet (http://www.rox.za.net)
|
||||
networks/dragonwings.network .....: DragonWings (http://www.dragonwings.org)
|
||||
networks/megairc.network .........: MegaIRC (http://www.megairc.net)
|
||||
networks/neohorizon.network ......: NeoHorizon (http://www.nhn.net)
|
||||
networks/spynet.network ..........: SpyNet (http://www.spynet.org)
|
||||
networks/nevernet.network ........: NeverNET (http://www.nevernet.net)
|
||||
networks/altirc.network ..........: AlternativeNet IRC (http://www.
|
||||
networks/bunker7.network .........: Bunker7 (http://www.bunker7.net)
|
||||
networks/realchat.network ........: RealChat.org (http://www.realchat.org)
|
||||
networks/newmilennium.network ....: NewMilennium (http://www.newmilennium.net)
|
||||
networks/solarxtreme.network .....: SolarXTreme (http://www.solarxtreme.net)
|
||||
networks/ss.network ..............: StarSpace (http://www.starspace.net)
|
||||
networks/uzaynet.network .........: UzayNet (http://www.uzaynet.nu)
|
||||
networks/infinity.network ........: Infinity-IRC.org (http://www.infinity-irc.org)
|
||||
networks/tspre.network ...........: TSpre (http://www.tspre.org)
|
||||
networks/solargalaxy.network .....: SolarGalaxy (http://www.solargalaxy.net)
|
||||
networks/digitalirc.network ......: DigitalIRC (http://www.digitalirc.net)
|
||||
networks/fireirc.network .........: FireIRC (http://www.fireirc.net)
|
||||
networks/stormdancing.network ....: StormDancing (http://www.stormdancing.net)
|
||||
networks/972-scripterz.network ...: 972-scripterz
|
||||
networks/v64net.network ..........: v64
|
||||
@@ -1,72 +0,0 @@
|
||||
ver^2.2
|
||||
|
||||
#
|
||||
# Network Configuration File Template
|
||||
# -----------------------------------------
|
||||
# Added-at: <day> <month> <year> <hh:dd> GMT
|
||||
# Author: <nick> (<real name>)
|
||||
# E-Mail: <email>
|
||||
# $Id$
|
||||
# -----------------------------------------
|
||||
# This is a template so you can create your own network configuration files
|
||||
# Just follow the instructions and it will prolly work ;)
|
||||
# 0 = No 1 = Yes
|
||||
# -------------------------------------------------------
|
||||
#
|
||||
# These two specify the name of the IRC network, set the same in both fields
|
||||
Network >..........: NeverNET
|
||||
Set ircnetwork ....: NeverNET
|
||||
|
||||
# This is where your DNS pool is (like irc.dal.net)
|
||||
Set defserv .......: IRC.NeverNET.Net
|
||||
|
||||
# This is the name of your Services Server
|
||||
Set SERVICES_NAME .: Services.NeverNET.Net
|
||||
|
||||
# This is the virtual hostname IRCops will get if iNAH option is enabled
|
||||
# on oper up
|
||||
Set oper_host .....: Opers.NeverNET.Net
|
||||
|
||||
# This is the virtual hostname Server Admins will get if iNAH option is enabled
|
||||
# on oper up
|
||||
Set admin_host ....: Admins.NeverNET.Net
|
||||
|
||||
# This is the virtual hostname Local IRCops will get if iNAH option is enabled
|
||||
# on oper up
|
||||
|
||||
Set locop_host ....: Opers.NeverNET.Net
|
||||
|
||||
# This is the virtual hostname Services Operators/Admins will get
|
||||
# if iNAH option is enabled on oper up
|
||||
|
||||
Set sadmin_host ...: Services.NeverNET.Net
|
||||
|
||||
# This is the virtual hostname NetAdmins will get
|
||||
# if iNAH option is enabled on oper up
|
||||
|
||||
Set netadmin_host .: Nevermore.NeverNET.Net
|
||||
|
||||
# This is the virtual hostname CoAdmins will get
|
||||
# if iNAH option is enabled on oper up
|
||||
Set coadmin_host ..: NetAdmins.NeverNET.Net
|
||||
|
||||
|
||||
# This is the virtual hostname TechAdmins will get
|
||||
# if iNAH option is enabled on oper up
|
||||
Set techadmin_host : Tech.NeverNET.Net
|
||||
|
||||
# This is the prefix of the hidden host (cloaking) hostname
|
||||
Set hidden_host ...: NN
|
||||
# This is the domain of the IRC network
|
||||
Set netdomain .....: NeverNET.Net
|
||||
#This is where people can go for help
|
||||
Set helpchan ......: #NeverNET
|
||||
# This is the name of the stats server
|
||||
Set STATS_SERVER ..: Stats.NeverNET.Net
|
||||
# -- Not in use--
|
||||
Set HUB ...........: 1
|
||||
# This enables the auto-setting of f.x @netadmin.network.net
|
||||
# on oper up
|
||||
Set iNAH ..........: 0
|
||||
# -- Not in use but still here --
|
||||
Set net_quit ......: ic
|
||||
@@ -1,26 +0,0 @@
|
||||
ver^2.2
|
||||
#
|
||||
# newmilennium.net Network Configuration File
|
||||
# Made by: Dave Ellsworth (MasterJedi)
|
||||
# E-Mail: mj@planetz.net
|
||||
# ---------------------------------------
|
||||
|
||||
|
||||
Network >..........: NewMilennium
|
||||
Set ircnetwork ....: NewMilennium
|
||||
Set defserv .......: irc.NewMilennium.net
|
||||
Set SERVICES_NAME .: Services.NewMilennium.net
|
||||
Set oper_host .....: ircop.newmilennium.net
|
||||
Set admin_host ....: admin.newmilennium.net
|
||||
Set locop_host ....: locop.newmilennium.net
|
||||
Set sadmin_host ...: serviceop.newmilennium.net
|
||||
Set netadmin_host .: netadmin.newmilennium.net
|
||||
Set coadmin_host ..: coadmin.newmilennium.net
|
||||
Set techadmin_host : techadmin.newmilennium.net
|
||||
Set hidden_host ...: newmilennium
|
||||
Set netdomain .....: newmilennium.net
|
||||
Set helpchan ......: #newmilennium
|
||||
Set STATS_SERVER ..: stats.newmilennium.net
|
||||
Set HUB ...........: 1
|
||||
Set iNAH ..........: 1
|
||||
Set net_quit ......: SN
|
||||
@@ -1,70 +0,0 @@
|
||||
ver^2.2
|
||||
#
|
||||
# Network Configuration File Template
|
||||
# -----------------------------------------
|
||||
# Added-at: 14 August 1999 16:34 GMT
|
||||
# Author: Sandman
|
||||
# $Id$
|
||||
# -----------------------------------------
|
||||
# This is a template so you can create your own network configuration files
|
||||
# Just follow the instructions and it will prolly work ;)
|
||||
# 0 = No 1 = Yes
|
||||
# -------------------------------------------------------
|
||||
#
|
||||
# These two specify the name of the IRC network, set the same in both fields
|
||||
Network >..........: RealChat.Org
|
||||
Set ircnetwork ....: RealChat.Org
|
||||
|
||||
# This is where your DNS pool is (like irc.dal.net)
|
||||
Set defserv .......: irc.RealChat.Org
|
||||
|
||||
# This is the name of your Services Server
|
||||
Set SERVICES_NAME .: Services.RealChat.Org
|
||||
|
||||
# This is the virtual hostname IRCops will get if iNAH option is enabled
|
||||
# on oper up
|
||||
Set oper_host .....: Oper.RealChat.Org
|
||||
|
||||
# This is the virtual hostname Server Admins will get if iNAH option is enabled
|
||||
# on oper up
|
||||
Set admin_host ....: Admins.RealChat.Org
|
||||
|
||||
# This is the virtual hostname Local IRCops will get if iNAH option is enabled
|
||||
# on oper up
|
||||
|
||||
Set locop_host ....: LocalOper.RealChat.Org
|
||||
|
||||
# This is the virtual hostname Services Operators/Admins will get
|
||||
# if iNAH option is enabled on oper up
|
||||
|
||||
Set sadmin_host ...: servicesOper.RealChat.Org
|
||||
|
||||
# This is the virtual hostname NetAdmins will get
|
||||
# if iNAH option is enabled on oper up
|
||||
|
||||
Set netadmin_host .: NetAdmin.RealChat.Org
|
||||
|
||||
# This is the virtual hostname CoAdmins will get
|
||||
# if iNAH option is enabled on oper up
|
||||
Set coadmin_host ..: CoAdmin.RealChat.Org
|
||||
|
||||
|
||||
# This is the virtual hostname TechAdmins will get
|
||||
# if iNAH option is enabled on oper up
|
||||
Set techadmin_host : TechAdmin.RealChat.Org
|
||||
|
||||
# This is the prefix of the hidden host (cloaking) hostname
|
||||
Set hidden_host ...: realchat
|
||||
# This is the domain of the IRC network
|
||||
Set netdomain .....: RealChat.Org
|
||||
# This is where people can go for help
|
||||
Set helpchan ......: #services
|
||||
# This is the name of the stats server
|
||||
Set STATS_SERVER ..: stats.realchat.org
|
||||
# -- Not in use--
|
||||
Set HUB ...........: 1
|
||||
# This enables the auto-setting of f.x @netadmin.network.net
|
||||
# on oper up
|
||||
Set iNAH ..........: 0
|
||||
# -- Not in use but still here --
|
||||
Set net_quit ......: RC
|
||||
@@ -1,30 +0,0 @@
|
||||
ver^2.2
|
||||
#
|
||||
# ROXnet (irc.rox.za.net) Network Configuration File
|
||||
# --------------------------------------------------
|
||||
# Added-at: 14 July 1999 00:00 GMT
|
||||
# Author: Stskeeps (Carsten Munk)
|
||||
# E-Mail: stskeeps@roxnet.org
|
||||
# $Id$
|
||||
# -----------------------------------------
|
||||
#
|
||||
|
||||
Network >..........: ROXnet
|
||||
Set ircnetwork ....: ROXnet
|
||||
Set defserv .......: irc.roxnet.org
|
||||
Set SERVICES_NAME .: services.roxnet.org
|
||||
Set oper_host .....: ircop.roxnet.org
|
||||
Set admin_host ....: admin.roxnet.org
|
||||
Set locop_host ....: locop.roxnet.org
|
||||
Set sadmin_host ...: csops.roxnet.org
|
||||
Set netadmin_host .: netadmin.roxnet.org
|
||||
Set coadmin_host ..: coadmin.roxnet.org
|
||||
Set techadmin_host : techadmin.roxnet.org
|
||||
Set hidden_host ...: rox
|
||||
Set netdomain .....: roxnet.org
|
||||
Set helpchan ......: #ROXnet
|
||||
Set STATS_SERVER ..: stats.roxnet.org
|
||||
Set HUB ...........: 1
|
||||
Set iNAH ..........: 0
|
||||
Set net_quit ......: Rox
|
||||
|
||||
@@ -1,36 +0,0 @@
|
||||
ver^2.2
|
||||
Network >..........: SolarGalaxy
|
||||
|
||||
Set ircnetwork ....: SolarGalaxy
|
||||
|
||||
Set defserv .......: Irc.SolarGalaxy.Net
|
||||
|
||||
Set SERVICES_NAME .: Services.SolarGalaxy.Net
|
||||
|
||||
Set oper_host .....: IRCop.SolarGalaxy.Net
|
||||
|
||||
Set admin_host ....: Admin.SolarGalaxy.Net
|
||||
|
||||
Set locop_host ....: Locop.SolarGalaxy.Net
|
||||
|
||||
Set sadmin_host ...: ServiceOp.SolarGalaxy.Net
|
||||
|
||||
Set netadmin_host .: NetAdmin.SolarGalaxy.Net
|
||||
|
||||
Set coadmin_host ..: CoAdmin.SolarGalaxy.Net
|
||||
|
||||
Set techadmin_host : TechAdmin.SolarGalaxy.Net
|
||||
|
||||
Set hidden_host ...: solargalaxy
|
||||
|
||||
Set netdomain .....: SolarGalaxy.Net
|
||||
|
||||
Set helpchan ......: #SolarGalaxy
|
||||
|
||||
Set STATS_SERVER ..: Stats.SolarGalaxy.Net
|
||||
|
||||
Set HUB ...........: 1
|
||||
|
||||
Set iNAH ..........: 1
|
||||
|
||||
Set net_quit ......: sg
|
||||
@@ -1,69 +0,0 @@
|
||||
ver^2.2
|
||||
#
|
||||
# Network Configuration File Template
|
||||
# -----------------------------------------
|
||||
# $Id$
|
||||
# -----------------------------------------
|
||||
# This is a template so you can create your own network configuration
|
||||
# files Just follow the instructions and it will prolly work ;) 0 = No 1
|
||||
# = Yes -------------------------------------------------------
|
||||
#
|
||||
# These two specify the name of the IRC network, set the same in both
|
||||
# fields
|
||||
Network >..........: SolarXTreme
|
||||
Set ircnetwork ....: SolarXTreme
|
||||
|
||||
# This is where your DNS pool is (like irc.dal.net)
|
||||
Set defserv .......: irc.solarxtreme.net
|
||||
|
||||
# This is the name of your Services Server
|
||||
Set SERVICES_NAME .: Services.SolarXTreme.Net
|
||||
|
||||
# This is the virtual hostname IRCops will get if iNAH option is enabled
|
||||
# on oper up
|
||||
Set oper_host .....: IRCop.SolarXTreme.Net
|
||||
|
||||
# This is the virtual hostname Server Admins will get if iNAH option is
|
||||
# enabled on oper up
|
||||
Set admin_host ....: Admin.SolarXTreme.Net
|
||||
|
||||
# This is the virtual hostname Local IRCops will get if iNAH option is
|
||||
# enabled on oper up
|
||||
|
||||
Set locop_host ....: LocOp.SolarXTreme.Net
|
||||
|
||||
# This is the virtual hostname Services Operators/Admins will get
|
||||
# if iNAH option is enabled on oper up
|
||||
|
||||
Set sadmin_host ...: ServicesOp.SolarXTreme.Net
|
||||
|
||||
# This is the virtual hostname NetAdmins will get
|
||||
# if iNAH option is enabled on oper up
|
||||
|
||||
Set netadmin_host .: NetAdmin.SolarXTreme.Net
|
||||
|
||||
# This is the virtual hostname CoAdmins will get
|
||||
# if iNAH option is enabled on oper up
|
||||
Set coadmin_host ..: CoAdmin.SolarXTreme.Net
|
||||
|
||||
|
||||
# This is the virtual hostname TechAdmins will get
|
||||
# if iNAH option is enabled on oper up
|
||||
Set techadmin_host : TechAdmin.SolarXTreme.Net
|
||||
|
||||
# This is the prefix of the hidden host (cloaking) hostname
|
||||
Set hidden_host ...: solar
|
||||
# This is the domain of the IRC network
|
||||
Set netdomain .....: solarxtreme.net
|
||||
# This is where people can go for help
|
||||
Set helpchan ......: #SolarHelp
|
||||
# This is the name of the stats server
|
||||
Set STATS_SERVER ..: Stats.SolarXTreme.Net
|
||||
# -- Not in use--
|
||||
Set HUB ...........: 1
|
||||
# This enables the auto-setting of f.x @netadmin.network.net
|
||||
# on oper up
|
||||
Set iNAH ..........: 1
|
||||
# -- Not in use but still here --
|
||||
Set net_quit ......: ic
|
||||
|
||||
@@ -1,28 +0,0 @@
|
||||
ver^2.2
|
||||
# SpyNet Network Configuration File
|
||||
# -----------------------------------------
|
||||
# Added-at: 23 August 1999 18:00 GMT
|
||||
# Author: Son|c
|
||||
# E-Mail: stskeeps@global-irc.net
|
||||
# $Id$
|
||||
# -----------------------------------------
|
||||
#
|
||||
|
||||
Network >..........: SpyNet
|
||||
Set ircnetwork ....: SpyNet
|
||||
Set defserv .......: irc.SpyNet.Org
|
||||
Set SERVICES_NAME .: Services.SpyNet.Org
|
||||
Set oper_host .....: IRCops.SpyNet.Org
|
||||
Set admin_host ....: Admin.SpyNet.Org
|
||||
Set locop_host ....: LocalOper.SpyNet.Org
|
||||
Set sadmin_host ...: Sops.SpyNet.Org
|
||||
Set netadmin_host .: NetAdmin.SpyNet.Org
|
||||
Set coadmin_host ..: CoAdmin.SpyNet.Org
|
||||
Set techadmin_host : TechAdmin.SpyNet.Org
|
||||
Set hidden_host ...: Spy
|
||||
Set netdomain .....: SpyNet.Org
|
||||
Set helpchan ......: #SpyNet
|
||||
Set STATS_SERVER ..: stats.SpyNet.Org
|
||||
Set HUB ...........: 0
|
||||
Set iNAH ..........: 0
|
||||
Set net_quit ......: SN
|
||||
@@ -1,58 +0,0 @@
|
||||
ver^2.2
|
||||
# These two specify the name of the IRC network, set the same in both fields
|
||||
Network >..........: StarSpace
|
||||
Set ircnetwork ....: StarSpace
|
||||
|
||||
# This is where your DNS pool is (like irc.dal.net)
|
||||
Set defserv .......: IRC.StarSpace.Net
|
||||
|
||||
# This is the name of your Services Server
|
||||
Set SERVICES_NAME .: Services.StarSpace.Net
|
||||
|
||||
# This is the virtual hostname IRCops will get if iNAH option is enabled
|
||||
# on oper up
|
||||
Set oper_host .....: Global.StarSpace.Net
|
||||
|
||||
# This is the virtual hostname Server Admins will get if iNAH option is enabled
|
||||
# on oper up
|
||||
Set admin_host ....: Admin.StarSpace.Net
|
||||
|
||||
# This is the virtual hostname Local IRCops will get if iNAH option is enabled
|
||||
# on oper up
|
||||
|
||||
Set locop_host ....: Local.StarSpace.Net
|
||||
|
||||
# This is the virtual hostname Services Operators/Admins will get
|
||||
# if iNAH option is enabled on oper up
|
||||
|
||||
Set sadmin_host ...: ServOp.StarSpace.Net
|
||||
|
||||
# This is the virtual hostname NetAdmins will get
|
||||
# if iNAH option is enabled on oper up
|
||||
|
||||
Set netadmin_host .: NetAdmin.StarSpace.Net
|
||||
|
||||
# This is the virtual hostname CoAdmins will get
|
||||
# if iNAH option is enabled on oper up
|
||||
Set coadmin_host ..: CoAdmin.StarSpace.Net
|
||||
|
||||
|
||||
# This is the virtual hostname TechAdmins will get
|
||||
# if iNAH option is enabled on oper up
|
||||
Set techadmin_host : TechAdmin.StarSpace.Net
|
||||
|
||||
# This is the prefix of the hidden host (cloaking) hostname
|
||||
Set hidden_host ...: starspace
|
||||
# This is the domain of the IRC network
|
||||
Set netdomain .....: StarSpace.Net
|
||||
# This is where people can go for help
|
||||
Set helpchan ......: #OperHelp
|
||||
# This is the name of the stats server
|
||||
Set STATS_SERVER ..: Stats.StarSpace.Net
|
||||
# -- Not in use--
|
||||
Set HUB ...........: 1
|
||||
# This enables the auto-setting of f.x @netadmin.network.net
|
||||
# on oper up
|
||||
Set iNAH ..........: 1
|
||||
# -- Not in use but still here --
|
||||
Set net_quit ......: SS
|
||||
@@ -1,4 +1,4 @@
|
||||
ver^2.2
|
||||
ver^2.3
|
||||
#
|
||||
# Network Configuration File Template
|
||||
# -----------------------------------------
|
||||
@@ -50,10 +50,6 @@ Set netadmin_host .: netadmin.ircnet.org
|
||||
Set coadmin_host ..: coadmin.ircnet.org
|
||||
|
||||
|
||||
# This is the virtual hostname TechAdmins will get
|
||||
# if iNAH option is enabled on oper up
|
||||
Set techadmin_host : techadmin.ircnet.org
|
||||
|
||||
# This is the prefix of the hidden host (cloaking) hostname
|
||||
Set hidden_host ...: mpx
|
||||
# This is the domain of the IRC network
|
||||
|
||||
@@ -1,71 +0,0 @@
|
||||
ver^2.2
|
||||
#
|
||||
# Network Configuration File Template
|
||||
# -----------------------------------------
|
||||
# Added-at: <day> <month> <year> <hh:dd> GMT
|
||||
# Author: <nick> (<real name>)
|
||||
# E-Mail: <email>
|
||||
# $Id$
|
||||
# -----------------------------------------
|
||||
# This is a template so you can create your own network configuration files
|
||||
# Just follow the instructions and it will prolly work ;)
|
||||
# 0 = No 1 = Yes
|
||||
# -------------------------------------------------------
|
||||
#
|
||||
# These two specify the name of the IRC network, set the same in both fields
|
||||
Network >..........: TSpre
|
||||
Set ircnetwork ....: TSpre
|
||||
|
||||
# This is where your DNS pool is (like irc.dal.net)
|
||||
Set defserv .......: irc.tspre.org
|
||||
|
||||
# This is the name of your Services Server
|
||||
Set SERVICES_NAME .: services.tspre.org
|
||||
|
||||
# This is the virtual hostname IRCops will get if iNAH option is enabled
|
||||
# on oper up
|
||||
Set oper_host .....: ircop.tspre.org
|
||||
|
||||
# This is the virtual hostname Server Admins will get if iNAH option is enabled
|
||||
# on oper up
|
||||
Set admin_host ....: admin.tspre.org
|
||||
|
||||
# This is the virtual hostname Local IRCops will get if iNAH option is enabled
|
||||
# on oper up
|
||||
|
||||
Set locop_host ....: locop.tspre.org
|
||||
|
||||
# This is the virtual hostname Services Operators/Admins will get
|
||||
# if iNAH option is enabled on oper up
|
||||
|
||||
Set sadmin_host ...: serviceop.tspre.org
|
||||
|
||||
# This is the virtual hostname NetAdmins will get
|
||||
# if iNAH option is enabled on oper up
|
||||
|
||||
Set netadmin_host .: netadmin.tspre.org
|
||||
|
||||
# This is the virtual hostname CoAdmins will get
|
||||
# if iNAH option is enabled on oper up
|
||||
Set coadmin_host ..: coadmin.tspre.org
|
||||
|
||||
|
||||
# This is the virtual hostname TechAdmins will get
|
||||
# if iNAH option is enabled on oper up
|
||||
Set techadmin_host : techadmin.tspre.org
|
||||
|
||||
# This is the prefix of the hidden host (cloaking) hostname
|
||||
Set hidden_host ...: ts
|
||||
# This is the domain of the IRC network
|
||||
Set netdomain .....: tspre.org
|
||||
# This is where people can go for help
|
||||
Set helpchan ......: #TSpre
|
||||
# This is the name of the stats server
|
||||
Set STATS_SERVER ..: stats.tspre.org
|
||||
# -- Not in use--
|
||||
Set HUB ...........: 1
|
||||
# This enables the auto-setting of f.x @netadmin.network.net
|
||||
# on oper up
|
||||
Set iNAH ..........: 0
|
||||
# -- Not in use but still here --
|
||||
Set net_quit ......: ic
|
||||
@@ -1,8 +1,9 @@
|
||||
ver^1.1
|
||||
ver^1.6
|
||||
#
|
||||
# UnrealIRCd Configuration file - unrealircd.conf
|
||||
# (C) Carsten Munk 1999 - Under the GNU license
|
||||
# $Id$
|
||||
# $Id: unrealircd.conf,v 1.1.1.1.6.1.2.6 2000/08/18 16:44:35 codemastr
|
||||
Exp $
|
||||
# Follow the instructions here.
|
||||
#
|
||||
# change the filename to what network header file you use
|
||||
@@ -12,7 +13,7 @@ Include .................: networks/roxnet.network
|
||||
#
|
||||
# What K:Line address can K:lined users mail at?
|
||||
#
|
||||
Set KLINE_ADDRESS .......: the admin of this server
|
||||
Set KLINE_ADDRESS .......: lame.admin.needs.to.set.a.email
|
||||
|
||||
# If you want users to get auto +x on connect
|
||||
# 1 = Yes 0 = No
|
||||
@@ -22,6 +23,9 @@ Set MODE_X ..............: 1
|
||||
# 1 = Yes 0 = No
|
||||
Set MODE_I ..............: 0
|
||||
|
||||
# Auto +G users when they connect? This can help as a new REMOVE_ADVERTISE
|
||||
Set MODE_STRIPWORDS .....: 0
|
||||
|
||||
# If compiled on a halfhub network this will upgrade it to be a real hub
|
||||
# * else if tried on a leaf (not hub) it will cause an error
|
||||
# * NOTE: There are only TWO versions of UnrealIRCd - Leaf and [Half]Hub
|
||||
@@ -37,7 +41,7 @@ Set TRUEHUB .............: 1
|
||||
# The IRCd won't boot if not this setting set correctly
|
||||
# RTFM and go thru the config file (this file)
|
||||
# 1 = Yes 0 = No
|
||||
Set CONFIG_FILE_STOP ....: 0
|
||||
Set CONFIG_FILE_STOP ....: 1
|
||||
|
||||
#
|
||||
# If to let non-opers do /stats O
|
||||
@@ -48,7 +52,7 @@ Set SHOWOPERS ...........: 0
|
||||
#
|
||||
# This will get the IRCd to exit links with different protocol ( < / > )
|
||||
#
|
||||
Set KILLDIFF ............: 1
|
||||
Set KILLDIFF ............: 0
|
||||
|
||||
#
|
||||
# Show Oper MOTD at oper up?
|
||||
@@ -58,7 +62,7 @@ Set SHOWOPERMOTD ........: 1
|
||||
#
|
||||
# Hide U:lines from non-opers in /links?
|
||||
# 1 = Yes 0 = No
|
||||
Set HIDE_ULINES .........: 0
|
||||
Set HIDE_ULINES .........: 1
|
||||
|
||||
#
|
||||
# Allow use of ChatOps?
|
||||
@@ -79,3 +83,62 @@ Set SOCKS_QUIT_MESSAGE ..: Insecure SOCKS server
|
||||
# How many seconds will a insecure SOCKS be banned?
|
||||
#
|
||||
Set SOCKSBANTIME ........: 86400
|
||||
|
||||
#
|
||||
# How many channels are users allowed to join?
|
||||
#
|
||||
Set MAXCHANNELSPERUSER ..: 10
|
||||
|
||||
#
|
||||
# Will we support WebTV, NOTE replaces /NOTICE with a /PRIVMSG
|
||||
# 1 = Yes 0 = No
|
||||
Set WEBTV_SUPPORT .......: 0
|
||||
|
||||
#
|
||||
# Should usermode +I (Total Invisibility) be disabled?
|
||||
# 1 = Yes 0 = No
|
||||
Set NO_OPER_HIDING ......: 1
|
||||
|
||||
#
|
||||
# Should we make the user join a channel(s) on connect?
|
||||
# 0 = No, if Yes, enter the channel name
|
||||
# to make them join multiple channels seperate with ,s
|
||||
# ex Set AUTO_JOIN_CHANS .....: #chan1,#chan2,#chan3
|
||||
#
|
||||
Set AUTO_JOIN_CHANS .....: 0
|
||||
|
||||
#
|
||||
# Should we make the user join a channel(s) on /oper?
|
||||
# 0 = No, if Yes, enter the channel name
|
||||
# to make them join multiple channels seperate with ,s
|
||||
# ex Set OPER_AUTO_JOIN_CHANS : #chan1,#chan2,#chan3
|
||||
#
|
||||
Set OPER_AUTO_JOIN_CHANS : 0
|
||||
|
||||
#
|
||||
# This allows you specify the amount of time (in seconds)
|
||||
# to wait for a DNS response. Set this to 0 to disable
|
||||
# hostname resolving
|
||||
#
|
||||
Set HOST_TIMEOUT ........: 2
|
||||
|
||||
#
|
||||
# This allows you to specify the amount of retries
|
||||
# that should be send when no DNS response is received
|
||||
#
|
||||
Set HOST_RETRIES ........: 2
|
||||
|
||||
#
|
||||
# This allows exempt lines in ircd.conf to match glines
|
||||
# and akills instead of just local klines. [NEW]
|
||||
#
|
||||
Set EXEMPT_ALL ..........: 1
|
||||
|
||||
#
|
||||
# These three cloak keys SHOULD BE THE SAME ON ALL SERVERS.
|
||||
# They are part of the algorithm that cloaks hosts for users
|
||||
# that are +x.
|
||||
#
|
||||
Set CLOAK_KEY_1 .........: 0
|
||||
Set CLOAK_KEY_2 .........: 0
|
||||
Set CLOAK_KEY_3 .........: 0
|
||||
|
||||
@@ -1,72 +0,0 @@
|
||||
ver^2.2
|
||||
#
|
||||
# Network Configuration File Template
|
||||
# -----------------------------------------
|
||||
# Added-at: <day> <month> <year> <hh:dd> GMT
|
||||
# Author: <nick> (<real name>)
|
||||
# E-Mail: <email>
|
||||
# $Id$
|
||||
# -----------------------------------------
|
||||
# This is a template so you can create your own network configuration files
|
||||
# Just follow the instructions and it will prolly work ;)
|
||||
# 0 = No 1 = Yes
|
||||
# -------------------------------------------------------
|
||||
#
|
||||
# These two specify the name of the IRC network, set the same in both fields
|
||||
Network >..........: UzayNet
|
||||
Set ircnetwork ....: UzayNet
|
||||
|
||||
# This is where your DNS pool is (like irc.dal.net)
|
||||
Set defserv .......: uzaynet.com
|
||||
|
||||
|
||||
# This is the name of your Services Server
|
||||
Set SERVICES_NAME .: service.uzaynet.com
|
||||
|
||||
# This is the virtual hostname IRCops will get if iNAH option is enabled
|
||||
# on oper up
|
||||
Set oper_host .....: ircop.silverserver.nu
|
||||
|
||||
# This is the virtual hostname Server Admins will get if iNAH option is enabled
|
||||
# on oper up
|
||||
Set admin_host ....: admin.uzaynet.nu
|
||||
|
||||
# This is the virtual hostname Local IRCops will get if iNAH option is enabled
|
||||
# on oper up
|
||||
|
||||
Set locop_host ....: locop.uzaynet.nu
|
||||
|
||||
# This is the virtual hostname Services Operators/Admins will get
|
||||
# if iNAH option is enabled on oper up
|
||||
|
||||
Set sadmin_host ...: serviceop.uzaynet.nu
|
||||
|
||||
# This is the virtual hostname NetAdmins will get
|
||||
# if iNAH option is enabled on oper up
|
||||
|
||||
Set netadmin_host .: netadmin.uzaynet.nu
|
||||
|
||||
# This is the virtual hostname CoAdmins will get
|
||||
# if iNAH option is enabled on oper up
|
||||
Set coadmin_host ..: coadmin.uzaynet.nu
|
||||
|
||||
|
||||
# This is the virtual hostname TechAdmins will get
|
||||
# if iNAH option is enabled on oper up
|
||||
Set techadmin_host : techadmin.uzaynet.nu
|
||||
|
||||
# This is the prefix of the hidden host (cloaking) hostname
|
||||
Set hidden_host ...: UzayNet
|
||||
# This is the domain of the IRC network
|
||||
Set netdomain .....: uzaynet.nu
|
||||
# This is where people can go for help
|
||||
Set helpchan ......: #Help
|
||||
# This is the name of the stats server
|
||||
Set STATS_SERVER ..: statserv.uzaynet.com
|
||||
# -- Not in use--
|
||||
Set HUB ...........: 1
|
||||
# This enables the auto-setting of f.x @netadmin.network.net
|
||||
# on oper up
|
||||
Set iNAH ..........: 1
|
||||
# -- Not in use but still here --
|
||||
Set net_quit ......: ic
|
||||
@@ -1,71 +0,0 @@
|
||||
ver^2.2
|
||||
#
|
||||
# Network Configuration File Template
|
||||
# -----------------------------------------
|
||||
# Added-at: 27 February 2000 05:46 CST
|
||||
# Author: Venusaur64 (Jahn Veach)
|
||||
# E-Mail: venusaur@flash.net
|
||||
# $Id$
|
||||
# -----------------------------------------
|
||||
# This is a template so you can create your own network configuration files
|
||||
# Just follow the instructions and it will prolly work ;)
|
||||
# 0 = No 1 = Yes
|
||||
# -------------------------------------------------------
|
||||
#
|
||||
# These two specify the name of the IRC network, set the same in both fields
|
||||
Network >..........: V64net
|
||||
Set ircnetwork ....: V64net
|
||||
|
||||
# This is where your DNS pool is (like irc.dal.net)
|
||||
Set defserv .......: irc.v64.net
|
||||
|
||||
# This is the name of your Services Server
|
||||
Set SERVICES_NAME .: services.v64.net
|
||||
|
||||
# This is the virtual hostname IRCops will get if iNAH option is enabled
|
||||
# on oper up
|
||||
Set oper_host .....: ircop.v64.net
|
||||
|
||||
# This is the virtual hostname Server Admins will get if iNAH option is enabled
|
||||
# on oper up
|
||||
Set admin_host ....: admin.v64.net
|
||||
|
||||
# This is the virtual hostname Local IRCops will get if iNAH option is enabled
|
||||
# on oper up
|
||||
|
||||
Set locop_host ....: locop.v64.net
|
||||
|
||||
# This is the virtual hostname Services Operators/Admins will get
|
||||
# if iNAH option is enabled on oper up
|
||||
|
||||
Set sadmin_host ...: serviceop.v64.net
|
||||
|
||||
# This is the virtual hostname NetAdmins will get
|
||||
# if iNAH option is enabled on oper up
|
||||
|
||||
Set netadmin_host .: netadmin.v64.net
|
||||
|
||||
# This is the virtual hostname CoAdmins will get
|
||||
# if iNAH option is enabled on oper up
|
||||
Set coadmin_host ..: coadmin.v64.net
|
||||
|
||||
|
||||
# This is the virtual hostname TechAdmins will get
|
||||
# if iNAH option is enabled on oper up
|
||||
Set techadmin_host : techadmin.v64.net
|
||||
|
||||
# This is the prefix of the hidden host (cloaking) hostname
|
||||
Set hidden_host ...: V64net
|
||||
# This is the domain of the IRC network
|
||||
Set netdomain .....: v64.net
|
||||
# This is where people can go for help
|
||||
Set helpchan ......: #HELP
|
||||
# This is the name of the stats server
|
||||
Set STATS_SERVER ..: stats.v64.net
|
||||
# -- Not in use--
|
||||
Set HUB ...........: 1
|
||||
# This enables the auto-setting of f.x @netadmin.network.net
|
||||
# on oper up
|
||||
Set iNAH ..........: 0
|
||||
# -- Not in use but still here --
|
||||
Set net_quit ......: ic
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user