dce_conn 50 source4/ntvfs/ipc/vfs_ipc.c struct dcesrv_connection *dce_conn;
dce_conn 182 source4/ntvfs/ipc/vfs_ipc.c static struct socket_address *ipc_get_my_addr(struct dcesrv_connection *dce_conn, TALLOC_CTX *mem_ctx)
dce_conn 184 source4/ntvfs/ipc/vfs_ipc.c struct ipc_private *ipriv = dce_conn->transport.private_data;
dce_conn 189 source4/ntvfs/ipc/vfs_ipc.c static struct socket_address *ipc_get_peer_addr(struct dcesrv_connection *dce_conn, TALLOC_CTX *mem_ctx)
dce_conn 191 source4/ntvfs/ipc/vfs_ipc.c struct ipc_private *ipriv = dce_conn->transport.private_data;
dce_conn 246 source4/ntvfs/ipc/vfs_ipc.c &p->dce_conn);
dce_conn 249 source4/ntvfs/ipc/vfs_ipc.c p->dce_conn->transport.private_data = ipriv;
dce_conn 250 source4/ntvfs/ipc/vfs_ipc.c p->dce_conn->transport.report_output_data = NULL;
dce_conn 251 source4/ntvfs/ipc/vfs_ipc.c p->dce_conn->transport.get_my_addr = ipc_get_my_addr;
dce_conn 252 source4/ntvfs/ipc/vfs_ipc.c p->dce_conn->transport.get_peer_addr = ipc_get_peer_addr;
dce_conn 441 source4/ntvfs/ipc/vfs_ipc.c status = dcesrv_output(p->dce_conn, &data, ipc_readx_dcesrv_output);
dce_conn 477 source4/ntvfs/ipc/vfs_ipc.c status = dcesrv_input(p->dce_conn, &data);
dce_conn 748 source4/ntvfs/ipc/vfs_ipc.c status = dcesrv_input(p->dce_conn, &trans->in.data);
dce_conn 758 source4/ntvfs/ipc/vfs_ipc.c status = dcesrv_output(p->dce_conn, &trans->out.data, ipc_trans_dcesrv_output);
dce_conn 856 source4/ntvfs/ipc/vfs_ipc.c status = dcesrv_input(p->dce_conn, &io->smb2.in.out);
dce_conn 864 source4/ntvfs/ipc/vfs_ipc.c status = dcesrv_output(p->dce_conn, &io->smb2.out.out, ipc_trans_dcesrv_output);
dce_conn 144 source4/rpc_server/dcerpc_server.c static struct dcesrv_call_state *dcesrv_find_fragmented_call(struct dcesrv_connection *dce_conn, uint16_t call_id)
dce_conn 147 source4/rpc_server/dcerpc_server.c for (c=dce_conn->incoming_fragmented_call_list;c;c=c->next) {
dce_conn 1087 source4/rpc_server/dcerpc_server.c static void dce_partial_advance(struct dcesrv_connection *dce_conn, uint32_t offset)
dce_conn 1091 source4/rpc_server/dcerpc_server.c if (dce_conn->partial_input.length == offset) {
dce_conn 1092 source4/rpc_server/dcerpc_server.c data_blob_free(&dce_conn->partial_input);
dce_conn 1096 source4/rpc_server/dcerpc_server.c blob = dce_conn->partial_input;
dce_conn 1097 source4/rpc_server/dcerpc_server.c dce_conn->partial_input = data_blob(blob.data + offset,
dce_conn 1114 source4/rpc_server/dcerpc_server.c NTSTATUS dcesrv_input_process(struct dcesrv_connection *dce_conn)
dce_conn 1122 source4/rpc_server/dcerpc_server.c call = talloc_zero(dce_conn, struct dcesrv_call_state);
dce_conn 1124 source4/rpc_server/dcerpc_server.c talloc_free(dce_conn->partial_input.data);
dce_conn 1127 source4/rpc_server/dcerpc_server.c call->conn = dce_conn;
dce_conn 1128 source4/rpc_server/dcerpc_server.c call->event_ctx = dce_conn->event_ctx;
dce_conn 1129 source4/rpc_server/dcerpc_server.c call->msg_ctx = dce_conn->msg_ctx;
dce_conn 1136 source4/rpc_server/dcerpc_server.c blob = dce_conn->partial_input;
dce_conn 1141 source4/rpc_server/dcerpc_server.c talloc_free(dce_conn->partial_input.data);
dce_conn 1156 source4/rpc_server/dcerpc_server.c talloc_free(dce_conn->partial_input.data);
dce_conn 1165 source4/rpc_server/dcerpc_server.c dce_partial_advance(dce_conn, blob.length);
dce_conn 1169 source4/rpc_server/dcerpc_server.c dce_partial_advance(dce_conn, blob.length);
dce_conn 1184 source4/rpc_server/dcerpc_server.c call = dcesrv_find_fragmented_call(dce_conn, call2->pkt.call_id);
dce_conn 1263 source4/rpc_server/dcerpc_server.c _PUBLIC_ NTSTATUS dcesrv_input(struct dcesrv_connection *dce_conn, const DATA_BLOB *data)
dce_conn 1267 source4/rpc_server/dcerpc_server.c dce_conn->partial_input.data = talloc_realloc(dce_conn,
dce_conn 1268 source4/rpc_server/dcerpc_server.c dce_conn->partial_input.data,
dce_conn 1270 source4/rpc_server/dcerpc_server.c dce_conn->partial_input.length + data->length);
dce_conn 1271 source4/rpc_server/dcerpc_server.c if (!dce_conn->partial_input.data) {
dce_conn 1274 source4/rpc_server/dcerpc_server.c memcpy(dce_conn->partial_input.data + dce_conn->partial_input.length,
dce_conn 1276 source4/rpc_server/dcerpc_server.c dce_conn->partial_input.length += data->length;
dce_conn 1278 source4/rpc_server/dcerpc_server.c while (dce_full_packet(&dce_conn->partial_input)) {
dce_conn 1279 source4/rpc_server/dcerpc_server.c status = dcesrv_input_process(dce_conn);
dce_conn 1300 source4/rpc_server/dcerpc_server.c _PUBLIC_ NTSTATUS dcesrv_output(struct dcesrv_connection *dce_conn,
dce_conn 1309 source4/rpc_server/dcerpc_server.c call = dce_conn->call_list;
dce_conn 1311 source4/rpc_server/dcerpc_server.c if (dce_conn->pending_call_list) {
dce_conn 309 source4/rpc_server/dcerpc_server.h NTSTATUS dcesrv_output(struct dcesrv_connection *dce_conn,
dce_conn 312 source4/rpc_server/dcerpc_server.h NTSTATUS dcesrv_input(struct dcesrv_connection *dce_conn, const DATA_BLOB *data);
dce_conn 42 source4/rpc_server/dcesrv_auth.c struct dcesrv_connection *dce_conn = call->conn;
dce_conn 43 source4/rpc_server/dcesrv_auth.c struct dcesrv_auth *auth = &dce_conn->auth_state;
dce_conn 48 source4/rpc_server/dcesrv_auth.c dce_conn->auth_state.auth_info = NULL;
dce_conn 52 source4/rpc_server/dcesrv_auth.c dce_conn->auth_state.auth_info = talloc(dce_conn, struct dcerpc_auth);
dce_conn 53 source4/rpc_server/dcesrv_auth.c if (!dce_conn->auth_state.auth_info) {
dce_conn 59 source4/rpc_server/dcesrv_auth.c dce_conn->auth_state.auth_info,
dce_conn 80 source4/rpc_server/dcesrv_auth.c status = samba_server_gensec_start(dce_conn, call->event_ctx,
dce_conn 111 source4/rpc_server/dcesrv_auth.c struct dcesrv_connection *dce_conn = call->conn;
dce_conn 118 source4/rpc_server/dcesrv_auth.c status = gensec_update(dce_conn->auth_state.gensec_security,
dce_conn 120 source4/rpc_server/dcesrv_auth.c dce_conn->auth_state.auth_info->credentials,
dce_conn 121 source4/rpc_server/dcesrv_auth.c &dce_conn->auth_state.auth_info->credentials);
dce_conn 124 source4/rpc_server/dcesrv_auth.c status = gensec_session_info(dce_conn->auth_state.gensec_security,
dce_conn 125 source4/rpc_server/dcesrv_auth.c &dce_conn->auth_state.session_info);
dce_conn 131 source4/rpc_server/dcesrv_auth.c if (dce_conn->state_flags & DCESRV_CALL_STATE_FLAG_HEADER_SIGNING) {
dce_conn 132 source4/rpc_server/dcesrv_auth.c gensec_want_feature(dce_conn->auth_state.gensec_security,
dce_conn 137 source4/rpc_server/dcesrv_auth.c dce_conn->auth_state.session_key = dcesrv_generic_session_key;
dce_conn 140 source4/rpc_server/dcesrv_auth.c dce_conn->auth_state.auth_info->auth_pad_length = 0;
dce_conn 141 source4/rpc_server/dcesrv_auth.c dce_conn->auth_state.auth_info->auth_reserved = 0;
dce_conn 156 source4/rpc_server/dcesrv_auth.c struct dcesrv_connection *dce_conn = call->conn;
dce_conn 161 source4/rpc_server/dcesrv_auth.c if (!dce_conn->auth_state.auth_info ||
dce_conn 162 source4/rpc_server/dcesrv_auth.c !dce_conn->auth_state.gensec_security ||
dce_conn 169 source4/rpc_server/dcesrv_auth.c dce_conn->auth_state.auth_info,
dce_conn 176 source4/rpc_server/dcesrv_auth.c status = gensec_update(dce_conn->auth_state.gensec_security,
dce_conn 178 source4/rpc_server/dcesrv_auth.c dce_conn->auth_state.auth_info->credentials,
dce_conn 179 source4/rpc_server/dcesrv_auth.c &dce_conn->auth_state.auth_info->credentials);
dce_conn 181 source4/rpc_server/dcesrv_auth.c status = gensec_session_info(dce_conn->auth_state.gensec_security,
dce_conn 182 source4/rpc_server/dcesrv_auth.c &dce_conn->auth_state.session_info);
dce_conn 188 source4/rpc_server/dcesrv_auth.c dce_conn->auth_state.session_key = dcesrv_generic_session_key;
dce_conn 207 source4/rpc_server/dcesrv_auth.c struct dcesrv_connection *dce_conn = call->conn;
dce_conn 216 source4/rpc_server/dcesrv_auth.c if (!dce_conn->auth_state.gensec_security) {
dce_conn 220 source4/rpc_server/dcesrv_auth.c dce_conn->auth_state.auth_info = talloc(dce_conn, struct dcerpc_auth);
dce_conn 221 source4/rpc_server/dcesrv_auth.c if (!dce_conn->auth_state.auth_info) {
dce_conn 227 source4/rpc_server/dcesrv_auth.c dce_conn->auth_state.auth_info,
dce_conn 242 source4/rpc_server/dcesrv_auth.c struct dcesrv_connection *dce_conn = call->conn;
dce_conn 248 source4/rpc_server/dcesrv_auth.c dce_conn->auth_state.auth_info->credentials.length == 0) {
dce_conn 256 source4/rpc_server/dcesrv_auth.c status = gensec_update(dce_conn->auth_state.gensec_security,
dce_conn 258 source4/rpc_server/dcesrv_auth.c dce_conn->auth_state.auth_info->credentials,
dce_conn 259 source4/rpc_server/dcesrv_auth.c &dce_conn->auth_state.auth_info->credentials);
dce_conn 262 source4/rpc_server/dcesrv_auth.c status = gensec_session_info(dce_conn->auth_state.gensec_security,
dce_conn 263 source4/rpc_server/dcesrv_auth.c &dce_conn->auth_state.session_info);
dce_conn 270 source4/rpc_server/dcesrv_auth.c dce_conn->auth_state.session_key = dcesrv_generic_session_key;
dce_conn 273 source4/rpc_server/dcesrv_auth.c dce_conn->auth_state.auth_info->auth_pad_length = 0;
dce_conn 274 source4/rpc_server/dcesrv_auth.c dce_conn->auth_state.auth_info->auth_reserved = 0;
dce_conn 288 source4/rpc_server/dcesrv_auth.c struct dcesrv_connection *dce_conn = call->conn;
dce_conn 296 source4/rpc_server/dcesrv_auth.c if (!dce_conn->auth_state.auth_info ||
dce_conn 297 source4/rpc_server/dcesrv_auth.c !dce_conn->auth_state.gensec_security) {
dce_conn 301 source4/rpc_server/dcesrv_auth.c switch (dce_conn->auth_state.auth_info->auth_level) {
dce_conn 355 source4/rpc_server/dcesrv_auth.c switch (dce_conn->auth_state.auth_info->auth_level) {
dce_conn 357 source4/rpc_server/dcesrv_auth.c status = gensec_unseal_packet(dce_conn->auth_state.gensec_security,
dce_conn 370 source4/rpc_server/dcesrv_auth.c status = gensec_check_packet(dce_conn->auth_state.gensec_security,
dce_conn 408 source4/rpc_server/dcesrv_auth.c struct dcesrv_connection *dce_conn = call->conn;
dce_conn 417 source4/rpc_server/dcesrv_auth.c status = ncacn_push_auth(blob, call, lp_iconv_convenience(dce_conn->dce_ctx->lp_ctx), pkt, NULL);
dce_conn 421 source4/rpc_server/dcesrv_auth.c switch (dce_conn->auth_state.auth_info->auth_level) {
dce_conn 431 source4/rpc_server/dcesrv_auth.c status = ncacn_push_auth(blob, call, lp_iconv_convenience(dce_conn->dce_ctx->lp_ctx), pkt, NULL);
dce_conn 435 source4/rpc_server/dcesrv_auth.c status = ncacn_push_auth(blob, call, lp_iconv_convenience(dce_conn->dce_ctx->lp_ctx), pkt, NULL);
dce_conn 442 source4/rpc_server/dcesrv_auth.c ndr = ndr_push_init_ctx(call, lp_iconv_convenience(dce_conn->dce_ctx->lp_ctx));
dce_conn 457 source4/rpc_server/dcesrv_auth.c dce_conn->auth_state.auth_info->auth_pad_length =
dce_conn 459 source4/rpc_server/dcesrv_auth.c ndr_err = ndr_push_zero(ndr, dce_conn->auth_state.auth_info->auth_pad_length);
dce_conn 465 source4/rpc_server/dcesrv_auth.c dce_conn->auth_state.auth_info->auth_pad_length;
dce_conn 468 source4/rpc_server/dcesrv_auth.c dce_conn->auth_state.auth_info->credentials = data_blob(NULL, 0);
dce_conn 472 source4/rpc_server/dcesrv_auth.c dce_conn->auth_state.auth_info);
dce_conn 490 source4/rpc_server/dcesrv_auth.c switch (dce_conn->auth_state.auth_info->auth_level) {
dce_conn 492 source4/rpc_server/dcesrv_auth.c status = gensec_seal_packet(dce_conn->auth_state.gensec_security,
dce_conn 502 source4/rpc_server/dcesrv_auth.c status = gensec_sign_packet(dce_conn->auth_state.gensec_security,
dce_conn 520 source4/rpc_server/dcesrv_auth.c dce_conn->auth_state.auth_info->auth_pad_length,
dce_conn 64 source4/rpc_server/service_rpc.c static void dcesrv_terminate_connection(struct dcesrv_connection *dce_conn, const char *reason)
dce_conn 67 source4/rpc_server/service_rpc.c srv_conn = talloc_get_type(dce_conn->transport.private_data,
dce_conn 157 source4/rpc_server/service_rpc.c struct dcesrv_connection *dce_conn = talloc_get_type(conn->private_data, struct dcesrv_connection);
dce_conn 161 source4/rpc_server/service_rpc.c if (dce_conn->processing) {
dce_conn 168 source4/rpc_server/service_rpc.c dcesrv_terminate_connection(dce_conn, "out of memory");
dce_conn 174 source4/rpc_server/service_rpc.c dcesrv_terminate_connection(dce_conn, nt_errstr(status));
dce_conn 184 source4/rpc_server/service_rpc.c dce_conn->processing = true;
dce_conn 185 source4/rpc_server/service_rpc.c status = dcesrv_input(dce_conn, &tmp_blob);
dce_conn 186 source4/rpc_server/service_rpc.c dce_conn->processing = false;
dce_conn 192 source4/rpc_server/service_rpc.c dcesrv_terminate_connection(dce_conn, nt_errstr(status));
dce_conn 196 source4/rpc_server/service_rpc.c if (dce_conn->call_list && dce_conn->call_list->replies) {
dce_conn 203 source4/rpc_server/service_rpc.c struct dcesrv_connection *dce_conn = talloc_get_type(conn->private_data, struct dcesrv_connection);
dce_conn 206 source4/rpc_server/service_rpc.c status = dcesrv_output(dce_conn, conn->socket, dcerpc_write_fn);
dce_conn 208 source4/rpc_server/service_rpc.c dcesrv_terminate_connection(dce_conn, "eof on socket");
dce_conn 212 source4/rpc_server/service_rpc.c if (!dce_conn->call_list || !dce_conn->call_list->replies) {