diff options
author | Luke Leighton <lkcl@samba.org> | 1999-12-04 19:14:37 +0000 |
---|---|---|
committer | Luke Leighton <lkcl@samba.org> | 1999-12-04 19:14:37 +0000 |
commit | f521205cb3d188fdcadcbd205dcfda4a7dcb89a0 (patch) | |
tree | 19135ba0b36cd2108543a462c3b9ec47d4e1dd18 /source3/include | |
parent | 8a8a7da5186596ee86b0b188156bca7d5e664784 (diff) | |
download | samba-f521205cb3d188fdcadcbd205dcfda4a7dcb89a0.tar.gz samba-f521205cb3d188fdcadcbd205dcfda4a7dcb89a0.tar.xz samba-f521205cb3d188fdcadcbd205dcfda4a7dcb89a0.zip |
jeremy is going to hate me for this.
created an "nmb-agent" utility that, yes: it connects to the 137 socket
and accepts unix socket connections which it redirects onto port 137.
it uses the name_trn_id field to filter requests to the correct
location.
name_query() and name_status() are the first victims to use this
feature (by specifying a file descriptor of -1).
(This used to be commit d923bc8da2cf996408194d98381409191dd81a16)
Diffstat (limited to 'source3/include')
-rw-r--r-- | source3/include/nameserv.h | 2 | ||||
-rw-r--r-- | source3/include/proto.h | 3 | ||||
-rw-r--r-- | source3/include/smb.h | 6 |
3 files changed, 10 insertions, 1 deletions
diff --git a/source3/include/nameserv.h b/source3/include/nameserv.h index ad251314817..0de00f36368 100644 --- a/source3/include/nameserv.h +++ b/source3/include/nameserv.h @@ -142,7 +142,7 @@ enum netbios_reply_type_code { NMB_QUERY, NMB_STATUS, NMB_REG, NMB_REG_REFRESH, enum name_source {LMHOSTS_NAME, REGISTER_NAME, SELF_NAME, DNS_NAME, DNSFAIL_NAME, PERMANENT_NAME, WINS_PROXY_NAME}; enum node_type {B_NODE=0, P_NODE=1, M_NODE=2, NBDD_NODE=3}; -enum packet_type {NMB_PACKET, DGRAM_PACKET}; +enum packet_type {NMB_PACKET, DGRAM_PACKET, NMB_SOCK_PACKET, DGRAM_SOCK_PACKET }; enum master_state { diff --git a/source3/include/proto.h b/source3/include/proto.h index 331725daeac..24dfd6ed1a8 100644 --- a/source3/include/proto.h +++ b/source3/include/proto.h @@ -613,6 +613,7 @@ int open_socket_out(int type, struct in_addr *addr, int port ,int timeout); void reset_globals_after_fork(void); char *client_name(int fd); char *client_addr(int fd); +int open_pipe_sock(char *path); /*The following definitions come from lib/util_status.c */ @@ -838,6 +839,8 @@ BOOL nmb_name_equal(struct nmb_name *n1, struct nmb_name *n2); BOOL send_packet(struct packet_struct *p); struct packet_struct *receive_packet(int fd,enum packet_type type,int t); void sort_query_replies(char *data, int n, struct in_addr ip); +BOOL read_nmb_sock(int c, struct nmb_state *con); +int get_nmb_sock(void); /*The following definitions come from libsmb/nterr.c */ diff --git a/source3/include/smb.h b/source3/include/smb.h index 5e6731e167b..8adfa5e6908 100644 --- a/source3/include/smb.h +++ b/source3/include/smb.h @@ -1745,6 +1745,12 @@ struct field_info #define MAX_MAX_MUX_LIMIT 16 +struct nmb_state +{ + struct in_addr ip; + int port; +}; + #endif /* _SMB_H */ /* _SMB_H */ |