summaryrefslogtreecommitdiff
path: root/source4/libcli/nbt/libnbt.h
diff options
context:
space:
mode:
authorAndrew Tridgell <tridge@samba.org>2005-02-08 01:05:41 +0000
committerGerald (Jerry) Carter <jerry@samba.org>2007-10-10 13:09:36 -0500
commit2513ac33de03e4c92f6d4a10595db44700971bb8 (patch)
tree8dac19b4696b558017cd509f5f2f775eb6b02b82 /source4/libcli/nbt/libnbt.h
parentf6f70999ca355072aa582545f0b72ca7c91df0a6 (diff)
downloadsamba-2513ac33de03e4c92f6d4a10595db44700971bb8.tar.gz
samba-2513ac33de03e4c92f6d4a10595db44700971bb8.tar.bz2
samba-2513ac33de03e4c92f6d4a10595db44700971bb8.zip
r5275: - added support for NBT_OPCODE_MULTI_HOME_REG (opcode 0xf) for WINS name registrations
- fixed a bug in the send queue handling on timeouts - added support for handling unexpected replies (replies to the wrong port) at the nbtsocket layer - added separate layer 2 code for wins refresh and wins registration (This used to be commit 2502b02898407e3262c09a5a4aa573c5f87b8f5f)
Diffstat (limited to 'source4/libcli/nbt/libnbt.h')
-rw-r--r--source4/libcli/nbt/libnbt.h33
1 files changed, 30 insertions, 3 deletions
diff --git a/source4/libcli/nbt/libnbt.h b/source4/libcli/nbt/libnbt.h
index c126f59280..63711490fe 100644
--- a/source4/libcli/nbt/libnbt.h
+++ b/source4/libcli/nbt/libnbt.h
@@ -113,7 +113,13 @@ struct nbt_name_socket {
const char *, int );
void *private;
} incoming;
-
+
+ /* what to do with unexpected replies */
+ struct {
+ void (*handler)(struct nbt_name_socket *, struct nbt_name_packet *,
+ const char *, int );
+ void *private;
+ } unexpected;
};
@@ -161,6 +167,7 @@ struct nbt_name_register {
uint16_t nb_flags;
BOOL register_demand;
BOOL broadcast;
+ BOOL multi_homed;
uint32_t ttl;
int timeout; /* in seconds */
int retries;
@@ -184,9 +191,10 @@ struct nbt_name_register_bcast {
} in;
};
-/* wins name refresh with multiple wins servers to try and multiple
+
+/* wins name register with multiple wins servers to try and multiple
addresses to register */
-struct nbt_name_refresh_wins {
+struct nbt_name_register_wins {
struct {
struct nbt_name name;
const char **wins_servers;
@@ -201,6 +209,7 @@ struct nbt_name_refresh_wins {
};
+
/* a name refresh request */
struct nbt_name_refresh {
struct {
@@ -220,3 +229,21 @@ struct nbt_name_refresh {
uint8_t rcode;
} out;
};
+
+/* wins name refresh with multiple wins servers to try and multiple
+ addresses to register */
+struct nbt_name_refresh_wins {
+ struct {
+ struct nbt_name name;
+ const char **wins_servers;
+ const char **addresses;
+ uint16_t nb_flags;
+ uint32_t ttl;
+ } in;
+ struct {
+ const char *wins_server;
+ uint8_t rcode;
+ } out;
+};
+
+