home *** CD-ROM | disk | FTP | other *** search
/ Amiga Plus 2000 #4 / Amiga Plus CD - 2000 - No. 4.iso / Tools / WWW / Unreal / doc / faq < prev    next >
Encoding:
Text File  |  2000-05-27  |  5.8 KB  |  193 lines

  1. [ $Id: faq,v 1.3 2000/02/09 19:40:23 stskeeps Exp $ ]
  2.  
  3. UnrealIRCd FAQ
  4. Made by Stskeeps
  5.  
  6. This file will contain frequently asked questions about 
  7. Unreal IRCd. If you need more help email stskeeps@tspre.org
  8.  
  9. 1) * I compile and everything seems fine during the compiling, but when it
  10.    comes time for the program to link, I get errors complaining about dns and
  11.    res things. What causes this?
  12.  
  13. A: You need to make sure -lresolv is included in the "extra libraries"
  14.    option of ./Config (or IRCDLIBS in top-level makefile)
  15.  
  16. 2) * When I start up the IRCd it complains about something with chdir()?
  17.  
  18. A: You need to make sure the right directory is specified when you was 
  19.    asked about "What directory are all the server configuration files in?"
  20.    ./Config question
  21.  
  22. 3) The server says like: 
  23.    *** Link server1 -> server2 is now synced [secs: 30 recv: 130.4 sent: 120.0]
  24.    when I link two servers together, what does that mean?
  25.  
  26. A: That means the link is "synced" (all infodata transfered about the server).
  27.    The "secs" (30 in this example) means it took 30 seconds to do the sync
  28.    "recv: 130.4" means there was recieved 130 KiloBytes and 4 bytes.
  29.    "sent: 120.0" means there was sent 120 kilobytes from my side.
  30.  
  31. 4) What is a negative TS split?
  32.  
  33. A: Every computer/server has got a time (so they can do TimeStamps) .. 
  34.    When the clock on the computer is set wrong and the computer it links 
  35.    upto is wrong it creates a Negative TS split (means time is lower it
  36.    actually is. How to fix this is contacting the root of the machine
  37.    and ask him to fix the time (when you made sure it's YOUR server that's 
  38.    wrong)
  39.  
  40. 5) What is an uProtocol ?
  41.  
  42. A: UnrealIRCd uses numbers to check if a link is compatible with itself
  43.    F.x Unreal v2.1.3 has got number 2103 while version 2.1 only has got 
  44.    2100 - This means .. if the number is lower/higher than the uProtocol
  45.    the server uses, it's an incompatible link (of some reasons)
  46.  
  47. 6) How does T:Lines work and what are they?
  48.  
  49. A: T:Lines is a new Unreal feature that makes it able to show different 
  50.   MOTDs and RULES to people who matches a certain hostmask . Lemme show you some examples:
  51.  
  52.    T:*.dk:motds/danish.motd:rules/danish.rules
  53.    T:*.fr:motds/french.motd:rules/french.rules
  54.  
  55.   This will get people from Denmark to see the "Danish" MOTD and the "Dandish" RULLES
  56.   and people from France to see the French ones:) 
  57.   
  58.   NOTE: T:Lines are read up side down so if you have a T:*:ircd.motd:ircd.rules in the bottom
  59.         it should be at the top so the other motd lines can work as well
  60.  
  61. 7) Where can i download updates to Unreal?
  62.  
  63. A: Mostly you can download the newest version at 
  64.    http://unreal.tspre.org
  65.  
  66.    Versions may be spewed out regulary due to new features and bugs.. 
  67.  
  68. 8) Why does it say "unlimit core failed" or something when I boot the IRCd?
  69. A: It's just a warning, mainly just ignore it.
  70.  
  71. 9) I use Linux Mandrake and ./Config always hangs! What can I do??
  72. A: Go edit the Config script and remove those lines:
  73. -SNIP START-
  74. cat > $TMP <<__EOF__
  75. #$STRINGH STRINGH
  76. #$STRINGSH STRINGSH
  77. #ifdef STRINGH
  78. #include <string.h>
  79. #endif
  80. #ifdef STRINGSH
  81. #include <strings.h>
  82. #endif
  83. main()
  84. {
  85.     char  *t = "a", *s = strtok(t, ",");
  86.     if (!strcmp(t, s))
  87.         exit(0);
  88.     exit(1);
  89. }
  90. __EOF__
  91. $COMP >/dev/null 2>&1
  92. if [ $? -ne 0 ] ; then
  93.     echo $n " strtok$c"
  94.     NSTRTOK=define
  95. else
  96.     $EXEC
  97.     if [ $? -ne 0 ] ; then
  98.         echo $n " strtok$c"
  99.         NSTRTOK=define
  100.     fi
  101. fi
  102. $RM -f $EXEC $TMP
  103. --- SNIP END---
  104. And replace it by
  105. NSTRTOK=undef
  106.  
  107. This should get it to work=) (thanks to Joe Whipple for reporting this bug)
  108. ---END----
  109.  
  110. 10) Hosts show up as (null).network.net !!
  111. A:  This is because you have forgotten to include the network file.
  112.     The correct form is (in unrealircd.conf)
  113.     Include ..........: <network file>
  114.  
  115.     If this doesn't work .. seek me at irc.global-irc.net #unrealircd
  116.  
  117. 11) The IRCd uses like 66.7% CPU !!!?
  118. A:  Try run it with nice :
  119.     /usr/bin/nice -n 19 src/ircd
  120.  
  121.     if services go this way too just place ./<name> instead of src/ircd
  122.     Any more support seek me at the default place:P
  123.  
  124. 12) My IRCd which runs on a FreeBSD says something about FDs and
  125.     Max: 0 What shall I do?? 
  126. A:  Well it's somekinda bug but you can workaround it by removing those
  127.     lines in src/s_bsd.c: (init_sys())
  128.  
  129. <- snippet 1 ->
  130. #ifdef RLIMIT_FD_MAX
  131.     struct rlimit limit;
  132.     int     pid;
  133.  
  134.     if (!getrlimit(RLIMIT_FD_MAX, &limit))
  135.         {
  136. # ifdef    pyr
  137.         if (limit.rlim_cur < MAXCONNECTIONS)
  138. #else
  139.         if (limit.rlim_max < MAXCONNECTIONS)
  140. # endif
  141.             {
  142.             (void)fprintf(stderr,"ircd fd table too big\n");
  143.             (void)fprintf(stderr,"Hard Limit: %d IRC max: %d\n",
  144.                 limit.rlim_max, MAXCONNECTIONS);
  145.             (void)fprintf(stderr,"Fix MAXCONNECTIONS\n");
  146.             exit(-1);
  147.             }
  148. # ifndef    pyr
  149.         limit.rlim_cur = limit.rlim_max; /* make soft limit the max */
  150.         if (setrlimit(RLIMIT_FD_MAX, &limit) == -1)
  151.             {
  152.             (void)fprintf(stderr,"error setting max fd's to %d\n",
  153.                     limit.rlim_cur);
  154.             exit(-1);
  155.             }
  156. # endif
  157.         }
  158. #endif
  159.  
  160. <-snippet 2->
  161. #ifdef sequent
  162. # ifndef    DYNIXPTX
  163.     int    fd_limit;
  164.  
  165.     fd_limit = setdtablesize(MAXCONNECTIONS + 1);
  166.     if (fd_limit < MAXCONNECTIONS)
  167.         {
  168.         (void)fprintf(stderr,"ircd fd table too big\n");
  169.         (void)fprintf(stderr,"Hard Limit: %d IRC max: %d\n",
  170.             fd_limit, MAXCONNECTIONS);
  171.         (void)fprintf(stderr,"Fix MAXCONNECTIONS\n");
  172.         exit(-1);
  173.         }
  174. # endif
  175. #endif
  176.  
  177. 13) I run debian-sparc and i get errors when compiling in match.c
  178.     What should I do?
  179. A: If it says like this
  180. <-snippet->
  181. match.c: In function 'myncmp':
  182. match.c:247: argument 'str1' doesn't match prototype
  183. /usr/include/string.h:255: prototype declaration
  184. match.c:247: argument 'str2' doesn't match prototype
  185. /usr/include/string.h:255: prototype declaration
  186. match.c:247: argument 'n' doesn't match prototype
  187. /usr/include/string.h:255: prototype declaration
  188. <-end of snippet>
  189.  
  190. Then go into include/setup.h and add this line:
  191. #define GOT_STRCASECMP
  192.  
  193. (C) Carsten Munk 1999