summaryrefslogtreecommitdiffstats
path: root/source4
diff options
context:
space:
mode:
authorStefan Metzmacher <metze@samba.org>2014-02-14 01:15:23 +0100
committerAndrew Bartlett <abartlet@samba.org>2014-05-26 03:31:28 +0200
commitd1b5016572a3d1fe45a50015bcaf7ecb51ed6a4d (patch)
treef96e3be4f776dbcd3dfd4990ab38a98edf1c6be9 /source4
parente4f7b90295c461da8acdf1c4f23ae02c00211ed1 (diff)
downloadsamba-d1b5016572a3d1fe45a50015bcaf7ecb51ed6a4d.tar.gz
samba-d1b5016572a3d1fe45a50015bcaf7ecb51ed6a4d.tar.xz
samba-d1b5016572a3d1fe45a50015bcaf7ecb51ed6a4d.zip
s4:librpc/rpc: remove some unused functions and structures from dcerpc_sock.c
Now we just dcerpc_sock.c doesn't need to maintain 'struct sock_private' in p->transport.private_data anymore, we're just using a raw tstream_context as p->transport.stream. Signed-off-by: Stefan Metzmacher <metze@samba.org> Reviewed-by: Andrew Bartlett <abartlet@samba.org>
Diffstat (limited to 'source4')
-rw-r--r--source4/librpc/rpc/dcerpc_sock.c51
1 files changed, 5 insertions, 46 deletions
diff --git a/source4/librpc/rpc/dcerpc_sock.c b/source4/librpc/rpc/dcerpc_sock.c
index de86e9802c4..f5a1c07c922 100644
--- a/source4/librpc/rpc/dcerpc_sock.c
+++ b/source4/librpc/rpc/dcerpc_sock.c
@@ -32,17 +32,9 @@
#include "libcli/resolve/resolve.h"
#include "librpc/rpc/rpc_common.h"
-/* transport private information used by general socket pipe transports */
-struct sock_private {
- const char *path; /* For ncacn_unix_sock and ncalrpc */
-
- struct socket_address *peer_addr;
-};
-
struct pipe_open_socket_state {
struct dcecli_connection *conn;
struct socket_context *socket_ctx;
- struct sock_private *sock;
struct socket_address *localaddr;
struct socket_address *server;
const char *target_hostname;
@@ -54,7 +46,6 @@ struct pipe_open_socket_state {
static void continue_socket_connect(struct composite_context *ctx)
{
struct dcecli_connection *conn;
- struct sock_private *sock;
struct composite_context *c = talloc_get_type_abort(
ctx->async.private_data, struct composite_context);
struct pipe_open_socket_state *s = talloc_get_type_abort(
@@ -64,7 +55,6 @@ static void continue_socket_connect(struct composite_context *ctx)
/* make it easier to write a function calls */
conn = s->conn;
- sock = s->sock;
c->status = socket_connect_recv(ctx);
if (!NT_STATUS_IS_OK(c->status)) {
@@ -77,17 +67,11 @@ static void continue_socket_connect(struct composite_context *ctx)
s->client = socket_get_my_addr(s->socket_ctx, s);
if (s->client == NULL) {
- talloc_free(sock);
+ TALLOC_FREE(s->socket_ctx);
composite_error(c, NT_STATUS_NO_MEMORY);
return;
}
sock_fd = socket_get_fd(s->socket_ctx);
- sock->peer_addr = socket_get_peer_addr(s->socket_ctx, sock);
- if (sock->peer_addr == NULL) {
- talloc_free(sock);
- composite_error(c, NT_STATUS_NO_MEMORY);
- return;
- }
socket_set_flags(s->socket_ctx, SOCKET_FLAG_NOCLOSE);
TALLOC_FREE(s->socket_ctx);
@@ -107,12 +91,10 @@ static void continue_socket_connect(struct composite_context *ctx)
conn->transport.pending_reads = 0;
conn->server_name = strupper_talloc(conn, s->target_hostname);
- conn->transport.private_data = sock;
-
- rc = tstream_bsd_existing_socket(sock, sock_fd,
+ rc = tstream_bsd_existing_socket(conn, sock_fd,
&conn->transport.stream);
if (rc < 0) {
- talloc_free(sock);
+ close(sock_fd);
composite_error(c, NT_STATUS_NO_MEMORY);
return;
}
@@ -120,7 +102,7 @@ static void continue_socket_connect(struct composite_context *ctx)
conn->transport.write_queue =
tevent_queue_create(conn, "dcerpc sock write queue");
if (conn->transport.write_queue == NULL) {
- talloc_free(sock);
+ TALLOC_FREE(conn->transport.stream);
composite_error(c, NT_STATUS_NO_MEMORY);
return;
}
@@ -164,18 +146,10 @@ static struct composite_context *dcerpc_pipe_open_socket_send(TALLOC_CTX *mem_ct
if (composite_nomem(s->target_hostname, c)) return c;
}
- s->sock = talloc_zero(cn, struct sock_private);
- if (composite_nomem(s->sock, c)) return c;
-
c->status = socket_create(server->family, SOCKET_TYPE_STREAM, &s->socket_ctx, 0);
if (!composite_is_ok(c)) return c;
- talloc_steal(s->sock, s->socket_ctx);
-
- if (full_path != NULL) {
- s->sock->path = talloc_strdup(s->sock, full_path);
- if (composite_nomem(s->sock->path, c)) return c;
- }
+ talloc_steal(s, s->socket_ctx);
conn_req = socket_connect_send(s->socket_ctx, s->localaddr, s->server, 0,
c->event_ctx);
@@ -519,18 +493,3 @@ NTSTATUS dcerpc_pipe_open_pipe(struct dcecli_connection *conn, const char *ncalr
struct composite_context *c = dcerpc_pipe_open_pipe_send(conn, ncalrpc_dir, identifier);
return dcerpc_pipe_open_pipe_recv(c);
}
-
-const char *dcerpc_unix_socket_path(struct dcecli_connection *p)
-{
- struct sock_private *sock = talloc_get_type_abort(
- p->transport.private_data, struct sock_private);
- return sock->path;
-}
-
-struct socket_address *dcerpc_socket_peer_addr(struct dcecli_connection *p, TALLOC_CTX *mem_ctx)
-{
- struct sock_private *sock = talloc_get_type_abort(
- p->transport.private_data, struct sock_private);
- return socket_address_copy(mem_ctx, sock->peer_addr);
-}
-