2
* Unix SMB/CIFS implementation.
3
* RPC Pipe client / server routines
4
* Copyright (C) Jean Fran�ois Micouleau 1998-2002.
6
* This program is free software; you can redistribute it and/or modify
7
* it under the terms of the GNU General Public License as published by
8
* the Free Software Foundation; either version 2 of the License, or
9
* (at your option) any later version.
11
* This program is distributed in the hope that it will be useful,
12
* but WITHOUT ANY WARRANTY; without even the implied warranty of
13
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
* GNU General Public License for more details.
16
* You should have received a copy of the GNU General Public License
17
* along with this program; if not, write to the Free Software
18
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
21
#define OPCODE_NON_NBT 0x00007800
24
#define MESSAGE_TYPE_START_ASSOC_REQUEST 0
25
#define MESSAGE_TYPE_START_ASSOC_REPLY 1
26
#define MESSAGE_TYPE_STOP_ASSOC 2
27
#define MESSAGE_TYPE_REPLICATE 3
29
/* the replication sub-message */
30
#define MESSAGE_REP_ADD_VERSION_REQUEST 0
31
#define MESSAGE_REP_ADD_VERSION_REPLY 1
32
#define MESSAGE_REP_SEND_ENTRIES_REQUEST 2
33
#define MESSAGE_REP_SEND_ENTRIES_REPLY 3
34
#define MESSAGE_REP_UPDATE_NOTIFY_REQUEST 4
37
#define STOP_REASON_USER_REASON 0
38
#define STOP_REASON_AUTH_FAILED 1
39
#define STOP_REASON_INCOMPLETE_VERSION 2
40
#define STOP_REASON_BUG_CHECK 3
41
#define STOP_REASON_MESSAGE_ERROR 4
44
typedef struct _WINS_OWNER {
45
struct in_addr address;
46
SMB_BIG_UINT max_version;
47
SMB_BIG_UINT min_version;
53
typedef struct _WINS_NAME {
54
int name_len; /* always 0x11 */
63
struct in_addr *others;
64
int foo; /* 0xffffff */
67
typedef struct _WINS_PARTNERS
73
struct in_addr partner_server;
74
struct in_addr other_server;
77
typedef struct _generic_header{
84
typedef struct _START_ASSOC_REQUEST {
88
} START_ASSOC_REQUEST;
90
typedef struct _START_ASSOC_REPLY {
96
typedef struct _STOP_ASSOC {
100
typedef struct _AVMT_REP {
102
WINS_OWNER *wins_owner;
103
struct in_addr initiating_wins_server;
106
typedef struct _SEND_ENTRIES_REQUEST {
107
WINS_OWNER wins_owner;
108
} SEND_ENTRIES_REQUEST;
110
typedef struct _SEND_ENTRIES_REPLY {
112
WINS_NAME *wins_name;
113
} SEND_ENTRIES_REPLY;
115
typedef struct _UPDATE_NOTIFY_REQUEST {
117
WINS_OWNER *wins_owner;
118
struct in_addr initiating_wins_server;
119
} UPDATE_NOTIFY_REQUEST;
121
typedef struct _REPLICATE {
125
SEND_ENTRIES_REQUEST se_rq;
126
SEND_ENTRIES_REPLY se_rp;
127
UPDATE_NOTIFY_REQUEST un_rq;
131
typedef struct _GENERIC_PACKET {
134
generic_header header;
136
START_ASSOC_REQUEST sa_rq;
137
START_ASSOC_REPLY sa_rp;
142
struct wins_packet_struct
144
struct wins_packet_struct *next;
145
struct wins_packet_struct *prev;
149
GENERIC_PACKET *packet;
160
#include "wrepld_proto.h"