ViewVC Help
View File | Revision Log | Show Annotations | Revision Graph | Root Listing
root/i-scream/projects/libstatgrab/src/libstatgrab/tools.c
(Generate patch)

Comparing projects/libstatgrab/src/libstatgrab/tools.c (file contents):
Revision 1.1 by pajs, Tue Mar 4 18:07:42 2003 UTC vs.
Revision 1.7 by ats, Sun Oct 19 00:09:22 2003 UTC

# Line 1 | Line 1
1 + /*
2 + * i-scream central monitoring system
3 + * http://www.i-scream.org
4 + * Copyright (C) 2000-2003 i-scream
5 + *
6 + * This program is free software; you can redistribute it and/or
7 + * modify it under the terms of the GNU General Public License
8 + * as published by the Free Software Foundation; either version 2
9 + * of the License, or (at your option) any later version.
10 + *
11 + * This program is distributed in the hope that it will be useful,
12 + * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14 + * GNU General Public License for more details.
15 + *
16 + * You should have received a copy of the GNU General Public License
17 + * along with this program; if not, write to the Free Software
18 + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
19 + */
20 +
21 + #ifdef HAVE_CONFIG_H
22 + #include "config.h"
23 + #endif
24 +
25   #include <stdio.h>
26   #include <string.h>
27 + #include <stdlib.h>
28 + #include <sys/types.h>
29 + #include <regex.h>
30  
31 + #include "tools.h"
32 +
33   char *f_read_line(FILE *f, const char *string){
34          /* Max line length. 8k should be more than enough */
35          static char line[8192];
36  
37 <        while((fgets(line, sizeof(line), f))==NULL){
9 <
37 >        while((fgets(line, sizeof(line), f))!=NULL){
38                  if(strncmp(string, line, strlen(string))==0){
39                          return line;
40                  }
# Line 14 | Line 42 | char *f_read_line(FILE *f, const char *string){
42  
43          return NULL;
44   }
45 +
46 + char *get_string_match(char *line, regmatch_t *match){
47 +        int len=match->rm_eo - match->rm_so;
48 +        char *match_string=malloc(len+1);
49 +
50 +        match_string=strncpy(match_string, line+match->rm_so, len);
51 +        match_string[len]='\0';
52 +
53 +        return match_string;
54 + }
55 +
56 + #ifdef HAVE_ATOLL
57 + long long get_ll_match(char *line, regmatch_t *match){
58 +        char *ptr;
59 +        long long num;
60 +
61 +        ptr=line+match->rm_so;
62 +        num=atoll(ptr);
63 +
64 +        return num;
65 + }
66 + #endif

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines