The branch, v3-3-stable has been updated
       via  8a79b8796f98dd80b6e1f04d7302fb8342f0052d (commit)
       via  de0fb90269beb4132e5b5d49c0c85e2559eaed29 (commit)
       via  21ffb0a8ec89e92f4a3d08e5ded0061abe0812eb (commit)
      from  6e0ca23f3a485f45a5464c9e659d0df732b691b9 (commit)

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=v3-3-stable


- Log -----------------------------------------------------------------
commit 8a79b8796f98dd80b6e1f04d7302fb8342f0052d
Author: Karolin Seeger <[email protected]>
Date:   Mon Jan 5 14:39:59 2009 +0100

    docs: Document the -g option of smbclient.
    
    This fixes bug #6013.
    Thanks to the Debian Samba packages maintainers for reporting!
    
    Karolin
    (cherry picked from commit 6752d78e946b2c4278e2deba325c76fb7ffbc06a)
    (cherry picked from commit e6abdbde9b67801d46c9d331045d155717e8b241)

commit de0fb90269beb4132e5b5d49c0c85e2559eaed29
Author: Volker Lendecke <[email protected]>
Date:   Mon Jan 5 13:41:39 2009 +0100

    Fix a bad memleak in vfs_full_audit
    (cherry picked from commit 5abbfc9c41d197a57cad6d0272c9c2dfef377f93)

commit 21ffb0a8ec89e92f4a3d08e5ded0061abe0812eb
Author: Volker Lendecke <[email protected]>
Date:   Mon Jan 5 12:58:23 2009 +0100

    Fix bug 6012: Add "get_real_filename" to full_audit
    
    Thanks to Hodur <[email protected]> for testing!
    
    Volker
    (cherry picked from commit 83f6ef1f5d1d0d86032d00d3337c415be746dda4)

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

Summary of changes:
 docs-xml/manpages-3/smbclient.1.xml |   24 +++++++++++++++++-------
 source/modules/vfs_full_audit.c     |   30 +++++++++++++++++++++++++++++-
 2 files changed, 46 insertions(+), 8 deletions(-)


Changeset truncated at 500 lines:

diff --git a/docs-xml/manpages-3/smbclient.1.xml 
b/docs-xml/manpages-3/smbclient.1.xml
index 31f32ba..f808902 100644
--- a/docs-xml/manpages-3/smbclient.1.xml
+++ b/docs-xml/manpages-3/smbclient.1.xml
@@ -13,7 +13,7 @@
 
 <refnamediv>
        <refname>smbclient</refname>
-       <refpurpose>ftp-like client to access SMB/CIFS resources 
+       <refpurpose>ftp-like client to access SMB/CIFS resources
        on servers</refpurpose>
 </refnamediv>
 
@@ -30,6 +30,7 @@
                <arg choice="opt">-m maxprotocol</arg>
                <arg choice="opt">-A authfile</arg>
                <arg choice="opt">-N</arg>
+               <arg choice="opt">-g</arg>
                <arg choice="opt">-i scope</arg>
                <arg choice="opt">-O &lt;socket options&gt;</arg>
                <arg choice="opt">-p port</arg>
@@ -39,7 +40,7 @@
                <arg choice="opt">-P</arg>
                <arg choice="opt">-c &lt;command&gt;</arg>
        </cmdsynopsis>
-               
+
        <cmdsynopsis>
                <command>smbclient</command>
                <arg choice="req">servicename</arg>
@@ -54,6 +55,7 @@
                <arg choice="opt">-m maxprotocol</arg>
                <arg choice="opt">-A authfile</arg>
                <arg choice="opt">-N</arg>
+               <arg choice="opt">-g</arg>
                <arg choice="opt">-l log-basename</arg>
                <arg choice="opt">-I destinationIP</arg>
                <arg choice="opt">-E</arg>
@@ -233,7 +235,7 @@
                on your WfWg PCs if you want them to always be able to receive 
                messages. </para></listitem>
                </varlistentry>
-               
+
                <varlistentry>
                <term>-p port</term>
                <listitem><para>This number is the TCP port number that will be 
used 
@@ -241,19 +243,27 @@
                TCP port number for an SMB/CIFS server is 139, which is the 
                default. </para></listitem>
                </varlistentry>
-               
+
+               <varlistentry>
+               <term>-g</term>
+               <listitem><para>This parameter provides combined with
+               <parameter>-L</parameter> easy parseable output that allows 
processing
+               with utilities such as grep and cut.
+               </para></listitem>
+               </varlistentry>
+
                <varlistentry>
                <term>-P</term>
                <listitem><para>
                Make queries to the external server using the machine account 
of the local server.
                </para></listitem>
                </varlistentry>
-               
+
                &stdarg.help;
-               
+
                <varlistentry>
                <term>-I IP-address</term>
-               <listitem><para><replaceable>IP address</replaceable> is the 
address of the server to connect to. 
+               <listitem><para><replaceable>IP address</replaceable> is the 
address of the server to connect to.
                It should be specified in standard "a.b.c.d" notation. </para>
 
                <para>Normally the client would attempt to locate a named 
diff --git a/source/modules/vfs_full_audit.c b/source/modules/vfs_full_audit.c
index 9fadcd9..30da8bd 100644
--- a/source/modules/vfs_full_audit.c
+++ b/source/modules/vfs_full_audit.c
@@ -194,6 +194,11 @@ static NTSTATUS 
smb_full_audit_streaminfo(vfs_handle_struct *handle,
                                          TALLOC_CTX *mem_ctx,
                                          unsigned int *pnum_streams,
                                          struct stream_struct **pstreams);
+static int smb_full_audit_get_real_filename(struct vfs_handle_struct *handle,
+                                           const char *path,
+                                           const char *name,
+                                           TALLOC_CTX *mem_ctx,
+                                           char **found_name);
 static NTSTATUS smb_full_audit_fget_nt_acl(vfs_handle_struct *handle, 
files_struct *fsp,
                                uint32 security_info,
                                SEC_DESC **ppdesc);
@@ -425,6 +430,8 @@ static vfs_op_tuple audit_op_tuples[] = {
         SMB_VFS_LAYER_LOGGER},
        {SMB_VFS_OP(smb_full_audit_streaminfo), SMB_VFS_OP_STREAMINFO,
         SMB_VFS_LAYER_LOGGER},
+       {SMB_VFS_OP(smb_full_audit_get_real_filename), 
SMB_VFS_OP_GET_REAL_FILENAME,
+        SMB_VFS_LAYER_LOGGER},
 
        /* NT ACL operations. */
 
@@ -593,6 +600,7 @@ static struct {
        { SMB_VFS_OP_CHFLAGS,   "chflags" },
        { SMB_VFS_OP_FILE_ID_CREATE,    "file_id_create" },
        { SMB_VFS_OP_STREAMINFO,        "streaminfo" },
+       { SMB_VFS_OP_GET_REAL_FILENAME, "get_real_filename" },
        { SMB_VFS_OP_FGET_NT_ACL,       "fget_nt_acl" },
        { SMB_VFS_OP_GET_NT_ACL,        "get_nt_acl" },
        { SMB_VFS_OP_FSET_NT_ACL,       "fset_nt_acl" },
@@ -693,6 +701,7 @@ static int audit_syslog_priority(vfs_handle_struct *handle)
 static char *audit_prefix(TALLOC_CTX *ctx, connection_struct *conn)
 {
        char *prefix = NULL;
+       char *result;
 
        prefix = talloc_strdup(ctx,
                        lp_parm_const_string(SNUM(conn), "full_audit",
@@ -700,7 +709,7 @@ static char *audit_prefix(TALLOC_CTX *ctx, 
connection_struct *conn)
        if (!prefix) {
                return NULL;
        }
-       return talloc_sub_advanced(ctx,
+       result = talloc_sub_advanced(ctx,
                        lp_servicename(SNUM(conn)),
                        conn->server_info->unix_name,
                        conn->connectpath,
@@ -708,6 +717,8 @@ static char *audit_prefix(TALLOC_CTX *ctx, 
connection_struct *conn)
                        conn->server_info->sanitized_username,
                        pdb_get_domain(conn->server_info->sam_account),
                        prefix);
+       TALLOC_FREE(prefix);
+       return result;
 }
 
 static bool log_success(vfs_handle_struct *handle, vfs_op_type op)
@@ -1551,6 +1562,23 @@ static NTSTATUS 
smb_full_audit_streaminfo(vfs_handle_struct *handle,
        return result;
 }
 
+static int smb_full_audit_get_real_filename(struct vfs_handle_struct *handle,
+                                           const char *path,
+                                           const char *name,
+                                           TALLOC_CTX *mem_ctx,
+                                           char **found_name)
+{
+       int result;
+
+       result = SMB_VFS_NEXT_GET_REAL_FILENAME(handle, path, name, mem_ctx,
+                                               found_name);
+
+       do_log(SMB_VFS_OP_GET_REAL_FILENAME, (result == 0), handle,
+              "%s/%s->%s", path, name, (result == 0) ? "" : *found_name);
+
+       return result;
+}
+
 static NTSTATUS smb_full_audit_fget_nt_acl(vfs_handle_struct *handle, 
files_struct *fsp,
                                uint32 security_info,
                                SEC_DESC **ppdesc)


-- 
Samba Shared Repository

Reply via email to