On Friday, 3 August 2007 18:36, Alon Bar-Lev wrote:
> On Friday 03 August 2007, Rafael J. Wysocki wrote:
> > On Friday, 3 August 2007 01:16, Alon Bar-Lev wrote:
> > > 
> > > config.* conflicts with autoconf files.
> > > Rename the to configparser.*.
> > > 
> > > After applying this patch, you should rename:
> > > config.h->configparser.h
> > > config.c->configparser.c
> > 
> > OK
> > 
> > > I did not want to include the removal/addition in patch.
> > 
> > Please do, it's easier to apply complete patches.
> > 
> > Greetings,
> > Rafael
> 
> But it is less easy to review :)
> And it takes much more space...
> We should have patch rename command... Something like:
> @@ RENAME from, to @@
> 
> OK... Here it is.

Thanks.

I'm going to apply it if no one objects.

Greetings,
Rafael


> ---
> 
> diff -urNp suspend.org/resume.c suspend-0.6_beta1/resume.c
> --- suspend.org/resume.c      2007-05-13 20:53:13.000000000 +0300
> +++ suspend-0.6_beta1/resume.c        2007-08-01 23:05:59.000000000 +0300
> @@ -34,3 +34,3 @@
>  #include "swsusp.h"
> -#include "config.h"
> +#include "configparser.h"
>  #include "md5.h"
> diff -urNp suspend.org/s2ram.c suspend-0.6_beta1/s2ram.c
> --- suspend.org/s2ram.c       2007-06-17 23:51:30.000000000 +0300
> +++ suspend-0.6_beta1/s2ram.c 2007-08-02 17:36:49.000000000 +0300
> @@ -16,7 +17,7 @@
>  #endif
>  #include "vt.h"
>  #include "s2ram.h"
> -#include "config.h"
> +#include "configparser.h"
>  
>  
>  /* Actually enter the suspend. May be ran on frozen system. */
> diff -urNp suspend.org/s2ram-x86.c suspend-0.6_beta1/s2ram-x86.c
> --- suspend.org/s2ram-x86.c   2007-08-03 00:33:20.000000000 +0300
> +++ suspend-0.6_beta1/s2ram-x86.c     2007-08-02 23:50:33.000000000 +0300
> @@ -16,7 +17,7 @@
>  #include "vbetool/vbetool.h"
>  #include "vt.h"
>  #include "s2ram.h"
> -#include "config.h"
> +#include "configparser.h"
>  
>  /* From dmidecode.c */
>  void dmi_scan(void);
> diff -urNp suspend.org/suspend.c suspend-0.6_beta1/suspend.c
> --- suspend.org/suspend.c     2007-07-29 21:30:27.000000000 +0300
> +++ suspend-0.6_beta1/suspend.c       2007-08-02 23:55:20.000000000 +0300
> @@ -42,4 +41,4 @@
>  #include "swsusp.h"
> -#include "config.h"
> +#include "configparser.h"
>  #include "md5.h"
>  #include "splash.h"
> --- suspend.org/Makefile      2007-07-29 21:30:27.000000000 +0300
> +++ suspend-0.6_beta1/Makefile        2007-08-03 01:14:35.000000000 +0300
> @@ -23,7 +23,7 @@ LD_FLAGS=-L/usr/local/lib
>  BINARIES=s2disk s2both s2ram swap-offset resume
>  BINARIES_MIN=s2disk swap-offset
>  
> -S2RAM_OBJ=vt.o config.o
> -SWSUSP_OBJ=vt.o md5.o encrypt.o config.o loglevel.o splash.o bootsplash.o 
> +S2RAM_OBJ=vt.o configparser.o
> +SWSUSP_OBJ=vt.o md5.o encrypt.o configparser.o loglevel.o splash.o 
> bootsplash.o 
>  
>  S2RAM_LD_FLAGS = $(LD_FLAGS)
> @@ -94,7 +94,7 @@ md5.o encrypt.o: %.o : %.c %.h md5.h
>       $(CC) $(CC_FLAGS) -DHAVE_INTTYPES_H -DHAVE_STDINT_H -c $< -o $@
>  
>  # Simple objects with header
> -config.o vt.o bootsplash.o splash.o splashy_funcs.o vbetool/vbetool.o 
> s2ram-ppc.o: %.o : %.c %.h
> +configparser.o vt.o bootsplash.o splash.o splashy_funcs.o vbetool/vbetool.o 
> s2ram-ppc.o: %.o : %.c %.h
>       $(CC) $(CC_FLAGS) -c $< -o $@
>  
>  # Simple object without header
> --- suspend.org/config.h      2007-05-13 20:53:13.000000000 +0300
> +++ suspend.inter/config.h    1970-01-01 02:00:00.000000000 +0200
> @@ -1,28 +0,0 @@
> -/*
> - * config.h
> - *
> - * Configuration file-related definitions for user space suspend and resume
> - * tools.
> - *
> - * Copyright (C) 2006 Rafael J. Wysocki <[EMAIL PROTECTED]>
> - *
> - * This file is released under the GPLv2.
> - *
> - */
> -
> -#include <getopt.h>
> -
> -#define MAX_STR_LEN  256
> -
> -struct config_par {
> -     char *name;
> -     char *fmt;
> -     void *ptr;
> -     unsigned int len;
> -};
> -
> -int parse(char *my_name, char *file_name, int parc, struct config_par *parv);
> -
> -void usage(char *my_name, struct option options[], const char 
> *short_options);
> -
> -#define CONFIG_FILE  "/etc/suspend.conf"
> --- suspend.org/config.c      2007-05-13 20:53:13.000000000 +0300
> +++ suspend.inter/config.c    1970-01-01 02:00:00.000000000 +0200
> @@ -1,131 +0,0 @@
> -/*
> - * config.c
> - *
> - * Configuration file parser for userland suspend tools
> - *
> - * Copyright (C) 2006 Rafael J. Wysocki <[EMAIL PROTECTED]>
> - *
> - * This file is released under the GPLv2.
> - *
> - */
> -
> -#include <sys/types.h>
> -#include <sys/stat.h>
> -#include <fcntl.h>
> -#include <unistd.h>
> -#include <stdio.h>
> -#include <errno.h>
> -#include <string.h>
> -#include <getopt.h>
> -
> -#include "config.h"
> -#include "encrypt.h"
> -
> -/**
> - *   parse - read and parse the configuration file
> - *   note that a non-present config file is not considered an error here
> - */
> -
> -int parse(char *my_name, char *file_name, int parc, struct config_par *parv)
> -{
> -     char *str, *dst, *fmt, buf[MAX_STR_LEN];
> -     struct stat stat_buf;
> -     FILE *file;
> -     int error, i, j, k;
> -
> -     if (stat(file_name, &stat_buf)) {
> -             fprintf(stderr, "%s: Could not stat configuration file\n",
> -                     my_name);
> -             return 0;
> -     }
> -     file = fopen(file_name, "r");
> -     if (!file) {
> -             fprintf(stderr, "%s: Could not open configuration file\n",
> -                     my_name);
> -             return 0;
> -     }
> -     error = 0;
> -     i = 0;
> -     do {
> -             str = fgets(buf, MAX_STR_LEN, file);
> -             if (!str)
> -                     break;
> -             i++;
> -             /* Ignore comments */
> -             if (*str == '#')
> -                     continue;
> -             /* Skip white space */
> -             while (*str == ' ' || *str == '\t' || *str == '\r' || *str == 
> '\n')
> -                     str++;
> -             /* Skip the lines containing white space only */
> -             if (!*str)
> -                     continue;
> -             /* Compare with parameter names */
> -             for (j =  0; j < parc; j++) {
> -                     k = strlen(parv[j].name);
> -                     if (!strncmp(parv[j].name, str, k)) {
> -                             if (!parv[j].ptr)
> -                                     break;
> -                             str += k;
> -                             while (*str == ' ' || *str == '\t')
> -                                     str++;
> -                             if (*str != ':' && *str != '=') {
> -                                     error = -EINVAL;
> -                                     break;
> -                             }
> -                             str++;
> -                             while (*str == ' ' || *str == '\t')
> -                                     str++;
> -                             if (*str) {
> -                                     fmt = parv[j].fmt;
> -                                     if (!strncmp(fmt, "%s", 2)) {
> -                                             dst = parv[j].ptr;
> -                                             k = parv[j].len;
> -                                             strncpy(dst, str, k - 1);
> -                                             k = strlen(dst) - 1;
> -                                             if (dst[k] == '\n')
> -                                                     dst[k] = '\0';
> -                                     } else {
> -                                             k = sscanf(str, fmt, 
> parv[j].ptr);
> -                                             if (k <= 0)
> -                                                     error = -EINVAL;
> -                                     }
> -                                     break;
> -                             }
> -                     }
> -             }
> -             if (j >= parc)
> -                     error = -EINVAL;
> -     } while (!error);
> -     fclose(file);
> -     if (error)
> -             fprintf(stderr, "%s: Error in configuration file, line %d\n",
> -                     my_name, i);
> -     return error;
> -}
> -
> -/* We're abusing struct option a bit. usage() expects an \0 in the
> - * name string, and after that a comment.
> - */
> -void usage(char *my_name, struct option *options, const char *short_options)
> -{
> -     struct option *opt;
> -
> -     printf("Usage: %s [options]", my_name);
> -     for (opt = options; opt->name; opt++) 
> -     {
> -             const char *descr = opt->name + strlen(opt->name) + 1;
> -             if (strchr(short_options,opt->val))
> -                     printf("\n  -%c, --%s", opt->val, opt->name);
> -             else
> -                     printf("\n  --%s", opt->name);
> -
> -             if (opt->has_arg)
> -                     printf(" <%s>", opt->name);
> -
> -             if (strlen(descr))
> -                     printf("\t%s",descr);
> -     }
> -
> -     printf("\n");
> -}
> --- suspend.org/configparser.c        1970-01-01 02:00:00.000000000 +0200
> +++ suspend.inter/configparser.c      2007-08-03 02:07:23.000000000 +0300
> @@ -0,0 +1,131 @@
> +/*
> + * configparser.c
> + *
> + * Configuration file parser for userland suspend tools
> + *
> + * Copyright (C) 2006 Rafael J. Wysocki <[EMAIL PROTECTED]>
> + *
> + * This file is released under the GPLv2.
> + *
> + */
> +
> +#include <sys/types.h>
> +#include <sys/stat.h>
> +#include <fcntl.h>
> +#include <unistd.h>
> +#include <stdio.h>
> +#include <errno.h>
> +#include <string.h>
> +#include <getopt.h>
> +
> +#include "configparser.h"
> +#include "encrypt.h"
> +
> +/**
> + *   parse - read and parse the configuration file
> + *   note that a non-present config file is not considered an error here
> + */
> +
> +int parse(char *my_name, char *file_name, int parc, struct config_par *parv)
> +{
> +     char *str, *dst, *fmt, buf[MAX_STR_LEN];
> +     struct stat stat_buf;
> +     FILE *file;
> +     int error, i, j, k;
> +
> +     if (stat(file_name, &stat_buf)) {
> +             fprintf(stderr, "%s: Could not stat configuration file\n",
> +                     my_name);
> +             return 0;
> +     }
> +     file = fopen(file_name, "r");
> +     if (!file) {
> +             fprintf(stderr, "%s: Could not open configuration file\n",
> +                     my_name);
> +             return 0;
> +     }
> +     error = 0;
> +     i = 0;
> +     do {
> +             str = fgets(buf, MAX_STR_LEN, file);
> +             if (!str)
> +                     break;
> +             i++;
> +             /* Ignore comments */
> +             if (*str == '#')
> +                     continue;
> +             /* Skip white space */
> +             while (*str == ' ' || *str == '\t' || *str == '\r' || *str == 
> '\n')
> +                     str++;
> +             /* Skip the lines containing white space only */
> +             if (!*str)
> +                     continue;
> +             /* Compare with parameter names */
> +             for (j =  0; j < parc; j++) {
> +                     k = strlen(parv[j].name);
> +                     if (!strncmp(parv[j].name, str, k)) {
> +                             if (!parv[j].ptr)
> +                                     break;
> +                             str += k;
> +                             while (*str == ' ' || *str == '\t')
> +                                     str++;
> +                             if (*str != ':' && *str != '=') {
> +                                     error = -EINVAL;
> +                                     break;
> +                             }
> +                             str++;
> +                             while (*str == ' ' || *str == '\t')
> +                                     str++;
> +                             if (*str) {
> +                                     fmt = parv[j].fmt;
> +                                     if (!strncmp(fmt, "%s", 2)) {
> +                                             dst = parv[j].ptr;
> +                                             k = parv[j].len;
> +                                             strncpy(dst, str, k - 1);
> +                                             k = strlen(dst) - 1;
> +                                             if (dst[k] == '\n')
> +                                                     dst[k] = '\0';
> +                                     } else {
> +                                             k = sscanf(str, fmt, 
> parv[j].ptr);
> +                                             if (k <= 0)
> +                                                     error = -EINVAL;
> +                                     }
> +                                     break;
> +                             }
> +                     }
> +             }
> +             if (j >= parc)
> +                     error = -EINVAL;
> +     } while (!error);
> +     fclose(file);
> +     if (error)
> +             fprintf(stderr, "%s: Error in configuration file, line %d\n",
> +                     my_name, i);
> +     return error;
> +}
> +
> +/* We're abusing struct option a bit. usage() expects an \0 in the
> + * name string, and after that a comment.
> + */
> +void usage(char *my_name, struct option *options, const char *short_options)
> +{
> +     struct option *opt;
> +
> +     printf("Usage: %s [options]", my_name);
> +     for (opt = options; opt->name; opt++) 
> +     {
> +             const char *descr = opt->name + strlen(opt->name) + 1;
> +             if (strchr(short_options,opt->val))
> +                     printf("\n  -%c, --%s", opt->val, opt->name);
> +             else
> +                     printf("\n  --%s", opt->name);
> +
> +             if (opt->has_arg)
> +                     printf(" <%s>", opt->name);
> +
> +             if (strlen(descr))
> +                     printf("\t%s",descr);
> +     }
> +
> +     printf("\n");
> +}
> --- suspend.org/configparser.h        1970-01-01 02:00:00.000000000 +0200
> +++ suspend.inter/configparser.h      2007-05-13 20:53:13.000000000 +0300
> @@ -0,0 +1,28 @@
> +/*
> + * configparser.h
> + *
> + * Configuration file-related definitions for user space suspend and resume
> + * tools.
> + *
> + * Copyright (C) 2006 Rafael J. Wysocki <[EMAIL PROTECTED]>
> + *
> + * This file is released under the GPLv2.
> + *
> + */
> +
> +#include <getopt.h>
> +
> +#define MAX_STR_LEN  256
> +
> +struct config_par {
> +     char *name;
> +     char *fmt;
> +     void *ptr;
> +     unsigned int len;
> +};
> +
> +int parse(char *my_name, char *file_name, int parc, struct config_par *parv);
> +
> +void usage(char *my_name, struct option options[], const char 
> *short_options);
> +
> +#define CONFIG_FILE  "/etc/suspend.conf"
> 
> -------------------------------------------------------------------------
> This SF.net email is sponsored by: Splunk Inc.
> Still grepping through log files to find problems?  Stop.
> Now Search log events and configuration files using AJAX and a browser.
> Download your FREE copy of Splunk now >>  http://get.splunk.com/
> _______________________________________________
> Suspend-devel mailing list
> Suspend-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/suspend-devel
> 
> 

-- 
"Premature optimization is the root of all evil." - Donald Knuth

-------------------------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >>  http://get.splunk.com/
_______________________________________________
Suspend-devel mailing list
Suspend-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/suspend-devel

Reply via email to