]> arthur.barton.de Git - ngircd-alex.git/blob - src/ngircd/tool.c
- IRC_RELOAD() in IRC_REHASH() umbenannt.
[ngircd-alex.git] / src / ngircd / tool.c
1 /*
2  * ngIRCd -- The Next Generation IRC Daemon
3  * Copyright (c)2001,2002 by Alexander Barton (alex@barton.de)
4  *
5  * Dieses Programm ist freie Software. Sie koennen es unter den Bedingungen
6  * der GNU General Public License (GPL), wie von der Free Software Foundation
7  * herausgegeben, weitergeben und/oder modifizieren, entweder unter Version 2
8  * der Lizenz oder (wenn Sie es wuenschen) jeder spaeteren Version.
9  * Naehere Informationen entnehmen Sie bitter der Datei COPYING. Eine Liste
10  * der an ngIRCd beteiligten Autoren finden Sie in der Datei AUTHORS.
11  *
12  * $Id: tool.c,v 1.9 2002/05/27 13:09:27 alex Exp $
13  *
14  * tool.c: Hilfsfunktionen, ggf. Platformabhaengig
15  */
16
17
18 #include "portab.h"
19
20 #include "imp.h"
21 #include <assert.h>
22 #include <ctype.h>
23 #include <stdio.h>
24 #include <string.h>
25
26 #include "exp.h"
27 #include "tool.h"
28
29
30 GLOBAL VOID
31 ngt_TrimStr( CHAR *String )
32 {
33         /* Mit ngt_TrimStr() werden fuehrende und folgende Leerzeichen,
34          * Tabulatoren und Zeilenumbrueche (ASCII 10 und ASCII 13) aus
35          * dem String entfernt. */
36         
37         CHAR *start, *ptr;
38
39         assert( String != NULL );
40
41         start = String;
42         
43         /* Zeichen am Anfang pruefen ... */
44         while(( *start == ' ' ) || ( *start == 9 )) start++;
45         
46         /* Zeichen am Ende pruefen ... */
47         ptr = strchr( start, '\0' ) - 1;
48         while((( *ptr == ' ' ) || ( *ptr == 9 ) || ( *ptr == 10 ) || ( *ptr == 13 )) && ptr >= start ) ptr--;
49         *(++ptr) = '\0';
50
51         memmove( String, start, strlen( start ) + 1 );
52 } /* ngt_TrimStr */
53
54
55 GLOBAL CHAR *
56 ngt_LowerStr( CHAR *String )
57 {
58         /* String in Kleinbuchstaben konvertieren. Der uebergebene
59          * Speicherbereich wird durch das Ergebnis ersetzt, zusaetzlich
60          * wird dieser auch als Pointer geliefert. */
61
62         CHAR *ptr;
63
64         assert( String != NULL );
65
66         /* Zeichen konvertieren */
67         ptr = String;
68         while( *ptr )
69         {
70                 *ptr = tolower( *ptr );
71                 ptr++;
72         }
73         
74         return String;
75 } /* ngt_LowerStr */
76
77
78 /* -eof- */