diff options
Diffstat (limited to 'source4/libcli/dgram/browse.c')
-rw-r--r-- | source4/libcli/dgram/browse.c | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/source4/libcli/dgram/browse.c b/source4/libcli/dgram/browse.c index a304db9c9d..d6813b36b9 100644 --- a/source4/libcli/dgram/browse.c +++ b/source4/libcli/dgram/browse.c @@ -29,7 +29,7 @@ #include "librpc/gen_ndr/ndr_nbt.h" NTSTATUS dgram_mailslot_browse_send(struct nbt_dgram_socket *dgmsock, - struct nbt_name *dest_name, const char *dest_address, int dest_port, + struct nbt_name *dest_name, const struct nbt_peer_socket *dest, struct nbt_name *src_name, struct nbt_browse_packet *request) { NTSTATUS status; @@ -45,7 +45,7 @@ NTSTATUS dgram_mailslot_browse_send(struct nbt_dgram_socket *dgmsock, status = dgram_mailslot_send(dgmsock, DGRAM_DIRECT_UNIQUE, NBT_MAILSLOT_BROWSE, - dest_name, dest_address, dest_port, + dest_name, dest, src_name, &blob); talloc_free(tmp_ctx); return status; @@ -59,6 +59,7 @@ NTSTATUS dgram_mailslot_browse_reply(struct nbt_dgram_socket *dgmsock, DATA_BLOB blob; TALLOC_CTX *tmp_ctx = talloc_new(dgmsock); struct nbt_name myname; + struct nbt_peer_socket dest; status = ndr_push_struct_blob(&blob, tmp_ctx, reply, (ndr_push_flags_fn_t)ndr_push_nbt_browse_packet); @@ -69,10 +70,12 @@ NTSTATUS dgram_mailslot_browse_reply(struct nbt_dgram_socket *dgmsock, make_nbt_name_client(&myname, lp_netbios_name()); + dest.port = request->src_port; + dest.addr = request->src_addr; status = dgram_mailslot_send(dgmsock, DGRAM_DIRECT_UNIQUE, mailslot_name, &request->data.msg.source_name, - request->source, request->src_port, + &dest, &myname, &blob); talloc_free(tmp_ctx); return status; |