r24712: No longer expose the 'BOOL' data type in any interfaces.
[sfrench/samba-autobuild/.git] / source4 / libcli / nbt / libnbt.h
index 5a53510ccf2a1e74afc16144a0d1678cd39a69a4..e383591089d2273ff9ddf69be69fe0a8ccaf3cda 100644 (file)
@@ -7,7 +7,7 @@
 
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
-   the Free Software Foundation; either version 2 of the License, or
+   the Free Software Foundation; either version 3 of the License, or
    (at your option) any later version.
 
    This program is distributed in the hope that it will be useful,
    GNU General Public License for more details.
 
    You should have received a copy of the GNU General Public License
-   along with this program; if not, write to the Free Software
-   Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+   along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */
 
-#include "librpc/gen_ndr/ndr_nbt.h"
+#ifndef __LIBNBT_H__
+#define __LIBNBT_H__
+
+#include "librpc/gen_ndr/nbt.h"
 
 /*
   possible states for pending requests
@@ -45,8 +47,7 @@ struct nbt_name_request {
        struct nbt_name_socket *nbtsock;
 
        /* where to send the request */
-       const char *dest_addr;
-       int dest_port;
+       struct socket_address *dest;
 
        /* timeout between retries */
        int timeout;
@@ -55,7 +56,7 @@ struct nbt_name_request {
        int num_retries;
 
        /* whether we have received a WACK */
-       BOOL received_wack;
+       bool received_wack;
 
        /* the timeout event */
        struct timed_event *te;
@@ -64,19 +65,18 @@ struct nbt_name_request {
        uint16_t name_trn_id;
 
        /* is it a reply? */
-       BOOL is_reply;
+       bool is_reply;
        
        /* the encoded request */
        DATA_BLOB encoded;
 
        /* shall we allow multiple replies? */
-       BOOL allow_multiple_replies;
+       bool allow_multiple_replies;
 
-       uint_t num_replies;
+       unsigned int num_replies;
        struct nbt_name_reply {
                struct nbt_name_packet *packet;
-               const char *reply_addr;
-               int reply_port;
+               struct socket_address *dest;
        } *replies;
 
        /* information on what to do on completion */
@@ -110,14 +110,14 @@ struct nbt_name_socket {
        /* what to do with incoming request packets */
        struct {
                void (*handler)(struct nbt_name_socket *, struct nbt_name_packet *, 
-                               const char *, int );
+                               struct socket_address *);
                void *private;
        } incoming;
 
        /* what to do with unexpected replies */
        struct {
                void (*handler)(struct nbt_name_socket *, struct nbt_name_packet *, 
-                               const char *, int );
+                               struct socket_address *);
                void *private;
        } unexpected;
 };
@@ -128,8 +128,8 @@ struct nbt_name_query {
        struct {
                struct nbt_name name;
                const char *dest_addr;
-               BOOL broadcast;
-               BOOL wins_lookup;
+               bool broadcast;
+               bool wins_lookup;
                int timeout; /* in seconds */
                int retries;
        } in;
@@ -163,9 +163,9 @@ struct nbt_name_register {
                const char *dest_addr;
                const char *address;
                uint16_t nb_flags;
-               BOOL register_demand;
-               BOOL broadcast;
-               BOOL multi_homed;
+               bool register_demand;
+               bool broadcast;
+               bool multi_homed;
                uint32_t ttl;
                int timeout; /* in seconds */
                int retries;
@@ -215,7 +215,7 @@ struct nbt_name_refresh {
                const char *dest_addr;
                const char *address;
                uint16_t nb_flags;
-               BOOL broadcast;
+               bool broadcast;
                uint32_t ttl;
                int timeout; /* in seconds */
                int retries;
@@ -252,7 +252,7 @@ struct nbt_name_release {
                const char *dest_addr;
                const char *address;
                uint16_t nb_flags;
-               BOOL broadcast;
+               bool broadcast;
                int timeout; /* in seconds */
                int retries;
        } in;
@@ -263,3 +263,7 @@ struct nbt_name_release {
                uint8_t rcode;
        } out;
 };
+
+#include "libcli/nbt/nbt_proto.h"
+
+#endif /* __LIBNBT_H__ */