s3:libsmb: Plumb cli_smb2_getattrE() inside cli_getattrE().
authorJeremy Allison <jra@samba.org>
Wed, 7 Aug 2013 23:11:59 +0000 (16:11 -0700)
committerStefan Metzmacher <metze@samba.org>
Thu, 15 Aug 2013 07:07:06 +0000 (09:07 +0200)
Signed-off-by: Jeremy Allison <jra@samba.org>
Reviewed-by: Stefan Metzmacher <metze@samba.org>
source3/libsmb/clifile.c

index 571e1cc68cc50895e068b09e5593e0b258cbe1d1..e3fb62d0a94610b89347ec3e6eef602d998c0130 100644 (file)
@@ -3379,11 +3379,23 @@ NTSTATUS cli_getattrE(struct cli_state *cli,
                        time_t *access_time,
                        time_t *write_time)
 {
-       TALLOC_CTX *frame = talloc_stackframe();
+       TALLOC_CTX *frame = NULL;
        struct tevent_context *ev = NULL;
        struct tevent_req *req = NULL;
        NTSTATUS status = NT_STATUS_OK;
 
+       if (smbXcli_conn_protocol(cli->conn) >= PROTOCOL_SMB2_02) {
+               return cli_smb2_getattrE(cli,
+                                       fnum,
+                                       attr,
+                                       size,
+                                       change_time,
+                                       access_time,
+                                       write_time);
+       }
+
+       frame = talloc_stackframe();
+
        if (smbXcli_conn_has_async_calls(cli->conn)) {
                /*
                 * Can't use sync call while an async call is in flight