The branch, master has been updated
       via  6ec6fa0... s3: eventlogadm.c: add -s option to use alternative 
config file.
      from  d3a4294... s3: Fix initgroups return check

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=master


- Log -----------------------------------------------------------------
commit 6ec6fa0ac4e71f9b14a3cbfef328d50e321b0544
Author: Holger Hetterich <hhet...@novell.com>
Date:   Sun Feb 14 19:05:00 2010 +0100

    s3: eventlogadm.c: add -s option to use alternative config file.
    
    Update the manpage accordingly.

-----------------------------------------------------------------------

Summary of changes:
 docs-xml/manpages-3/eventlogadm.8.xml |   13 +++++++++++++
 source3/utils/eventlogadm.c           |   19 +++++++++++++++----
 2 files changed, 28 insertions(+), 4 deletions(-)


Changeset truncated at 500 lines:

diff --git a/docs-xml/manpages-3/eventlogadm.8.xml 
b/docs-xml/manpages-3/eventlogadm.8.xml
index c104120..4a6a68e 100644
--- a/docs-xml/manpages-3/eventlogadm.8.xml
+++ b/docs-xml/manpages-3/eventlogadm.8.xml
@@ -20,6 +20,7 @@
        <cmdsynopsis>
 
                <command>eventlogadm</command>
+               <arg><option>-s</option></arg>
                <arg><option>-d</option></arg>
                <arg><option>-h</option></arg>
                <arg choice="plain"><option>-o</option>
@@ -32,6 +33,7 @@
        </cmdsynopsis>
        <cmdsynopsis>
                <command>eventlogadm</command>
+               <arg><option>-s</option></arg>
                <arg><option>-d</option></arg>
                <arg><option>-h</option></arg>
                <arg choice="plain"><option>-o</option>
@@ -42,6 +44,7 @@
        </cmdsynopsis>
        <cmdsynopsis>
                <command>eventlogadm</command>
+               <arg><option>-s</option></arg>
                <arg><option>-d</option></arg>
                <arg><option>-h</option></arg>
                <arg choice="plain"><option>-o</option>
@@ -72,6 +75,16 @@
        <title>OPTIONS</title>
 
        <variablelist>
+               <varlistentry>
+               <term>
+               <option>-s</option>
+               <replaceable>FILENAME</replaceable>
+               </term>
+               <listitem><para>
+               The <command>-s</command> option causes 
<command>eventlogadm</command> to load the
+               configuration file given as FILENAME instead of the default one 
used by Samba.
+               </para></listitem>
+               </varlistentry>
 
                <varlistentry>
                <term><option>-d</option></term>
diff --git a/source3/utils/eventlogadm.c b/source3/utils/eventlogadm.c
index 415330f..d94f25b 100644
--- a/source3/utils/eventlogadm.c
+++ b/source3/utils/eventlogadm.c
@@ -40,6 +40,7 @@ static void usage( char *s )
        printf( " -o addsource <EventlogName> <sourcename> <msgfileDLLname> 
\tAdds the specified source & DLL eventlog registry entry\n" );
        printf( " -o dump <Eventlog Name> <starting_record>\t\t\t\t\tDump 
stored eventlog entries on STDOUT\n" );
        printf( "\nMiscellaneous options:\n" );
+       printf( " -s <filename>\t\t\t\t\t\t\tUse configuration file 
<filename>.\n");
        printf( " -d\t\t\t\t\t\t\t\tturn debug on\n" );
        printf( " -h\t\t\t\t\t\t\t\tdisplay help\n\n" );
 }
@@ -50,7 +51,7 @@ static void display_eventlog_names( void )
        int i;
 
        elogs = lp_eventlog_list(  );
-       printf( "Active eventlog names (from smb.conf):\n" );
+       printf( "Active eventlog names:\n" );
        printf( "--------------------------------------\n" );
        if ( elogs ) {
                for ( i = 0; elogs[i]; i++ ) {
@@ -220,6 +221,7 @@ int main( int argc, char *argv[] )
 {
        int opt, rc;
        char *exename;
+       char *configfile = NULL;
        TALLOC_CTX *frame = talloc_stackframe();
 
 
@@ -229,8 +231,6 @@ int main( int argc, char *argv[] )
 
        opt_debug = 0;          /* todo set this from getopts */
 
-       lp_load(get_dyn_CONFIGFILE(), True, False, False, True);
-
        exename = argv[0];
 
        /* default */
@@ -240,7 +240,7 @@ int main( int argc, char *argv[] )
 #if 0                          /* TESTING CODE */
        eventlog_add_source( "System", "TestSourceX", "SomeTestPathX" );
 #endif
-       while ( ( opt = getopt( argc, argv, "dho:" ) ) != EOF ) {
+       while ( ( opt = getopt( argc, argv, "dho:s:" ) ) != EOF ) {
                switch ( opt ) {
 
                case 'o':
@@ -256,6 +256,10 @@ int main( int argc, char *argv[] )
                case 'd':
                        opt_debug = 1;
                        break;
+               case 's':
+                       configfile = talloc_strdup(frame, optarg);
+                       break;
+
                }
        }
 
@@ -268,6 +272,13 @@ int main( int argc, char *argv[] )
                exit( 1 );
        }
 
+       if ( configfile == NULL ) {
+               lp_load(get_dyn_CONFIGFILE(), True, False, False, True);
+       } else if (!lp_load(configfile, True, False, False, True)) {
+               printf("Unable to parse configfile '%s'\n",configfile);
+               exit( 1 );
+       }
+
        /*  note that the separate command types should call usage if they need 
to... */
        while ( 1 ) {
                if ( !StrCaseCmp( opname, "addsource" ) ) {


-- 
Samba Shared Repository

Reply via email to