summaryrefslogtreecommitdiff
path: root/source3/include
diff options
context:
space:
mode:
authorLuke Leighton <lkcl@samba.org>1999-12-04 19:14:37 +0000
committerLuke Leighton <lkcl@samba.org>1999-12-04 19:14:37 +0000
commitf521205cb3d188fdcadcbd205dcfda4a7dcb89a0 (patch)
tree19135ba0b36cd2108543a462c3b9ec47d4e1dd18 /source3/include
parent8a8a7da5186596ee86b0b188156bca7d5e664784 (diff)
downloadsamba-f521205cb3d188fdcadcbd205dcfda4a7dcb89a0.tar.gz
samba-f521205cb3d188fdcadcbd205dcfda4a7dcb89a0.tar.bz2
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.h2
-rw-r--r--source3/include/proto.h3
-rw-r--r--source3/include/smb.h6
3 files changed, 10 insertions, 1 deletions
diff --git a/source3/include/nameserv.h b/source3/include/nameserv.h
index ad25131481..0de00f3636 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 331725daea..24dfd6ed1a 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 5e6731e167..8adfa5e690 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 */