conn->in.fallback_to_anonymous = false;
}
+ conn->in.options.min_protocol = PROTOCOL_NT1;
+ conn->in.options.max_protocol = PROTOCOL_NT1;
+
+ conn->in.options.signing = lpcfg_client_ipc_signing(lp_ctx);
+
/* send smb connect request */
conn_req = smb_composite_connect_send(conn, s->io.conn,
s->io.resolve_ctx,
lpcfg_smbcli_options(lp_ctx, &options);
+ options.min_protocol = lpcfg_client_ipc_min_protocol(lp_ctx);
+ if (options.min_protocol < PROTOCOL_SMB2_02) {
+ options.min_protocol = PROTOCOL_SMB2_02;
+ }
+ options.max_protocol = lpcfg_client_ipc_max_protocol(lp_ctx);
+ if (options.max_protocol < PROTOCOL_SMB2_02) {
+ options.max_protocol = PROTOCOL_SMB2_02;
+ }
+
+ options.signing = lpcfg_client_ipc_signing(lp_ctx);
+
/* send smb2 connect request */
subreq = smb2_connect_send(s, c->event_ctx,
host,
struct composite_context *ncacn_unix_req;
struct composite_context *ncalrpc_req;
enum dcerpc_transport_t transport;
+ enum protocol_types min_ipc_protocol;
uint32_t flags;
/* dcerpc pipe connect input parameters */
transport = dcerpc_binding_get_transport(s->binding);
flags = dcerpc_binding_get_flags(s->binding);
+ min_ipc_protocol = lpcfg_client_ipc_min_protocol(s->lp_ctx);
+ if (min_ipc_protocol >= PROTOCOL_SMB2_02) {
+ flags |= DCERPC_SMB2;
+ }
+
/* connect dcerpc pipe depending on required transport */
switch (transport) {
case NCACN_NP: