/* transport private information used by SMB pipe transport */
struct smb_private {
DATA_BLOB session_key;
-
- /*
- * these are needed to open a secondary connection
- */
- struct smbXcli_conn *conn;
- struct smbXcli_session *session;
- struct smbXcli_tcon *tcon;
- uint32_t timeout_msec;
};
/*
state->smb = talloc_zero(state, struct smb_private);
if (composite_nomem(state->smb, ctx)) return ctx;
- state->smb->conn = conn;
- state->smb->session = session;
- state->smb->tcon = tcon;
- state->smb->timeout_msec = timeout_msec;
-
state->c->server_name = strupper_talloc(state->c,
smbXcli_conn_remote_name(conn));
if (composite_nomem(state->c->server_name, ctx)) return ctx;
talloc_free(c);
return status;
}
-
-struct composite_context *dcerpc_secondary_smb_send(struct dcecli_connection *c1,
- struct dcecli_connection *c2,
- const char *pipe_name)
-{
- struct smb_private *smb;
-
- if (c1->transport.transport != NCACN_NP) return NULL;
-
- smb = talloc_get_type(c1->transport.private_data, struct smb_private);
- if (!smb) return NULL;
-
- return dcerpc_pipe_open_smb_send(c2,
- smb->conn,
- smb->session,
- smb->tcon,
- smb->timeout_msec,
- pipe_name);
-}
-
-NTSTATUS dcerpc_secondary_smb_recv(struct composite_context *c)
-{
- return dcerpc_pipe_open_smb_recv(c);
-}