139 lines
3.8 KiB
C
139 lines
3.8 KiB
C
/**
|
|
* This file has no copyright assigned and is placed in the Public Domain.
|
|
* This file is part of the w64 mingw-runtime package.
|
|
* No warranty is given; refer to the file DISCLAIMER within this package.
|
|
*/
|
|
#ifndef WS2DNET_H
|
|
#define WS2DNET_H
|
|
|
|
#include <winsock2.h>
|
|
|
|
#pragma pack(push,ws2dnet,1)
|
|
|
|
#define DNPROTO_NSP 1
|
|
#define DNPROTO_RAW 255
|
|
|
|
#define DN_MAXADDL 20
|
|
#define DN_ADDL 2
|
|
#define DN_MAXOPTL 16
|
|
#define DN_MAXOBJL 16
|
|
#define DN_MAXACCL 39
|
|
#define DN_MAXALIASL 128
|
|
#define DN_MAXNODEL 7
|
|
|
|
#define WS2API_DECNET_dnet_addr 1
|
|
#define WS2API_DECNET_dnet_eof 2
|
|
#define WS2API_DECNET_dnet_getacc 3
|
|
#define WS2API_DECNET_dnet_getalias 4
|
|
#define WS2API_DECNET_dnet_htoa 5
|
|
#define WS2API_DECNET_dnet_ntoa 6
|
|
#define WS2API_DECNET_getnodeadd 7
|
|
#define WS2API_DECNET_getnodebyaddr 8
|
|
#define WS2API_DECNET_getnodebyname 9
|
|
#define WS2API_DECNET_getnodename 10
|
|
#define WS2API_DECNET_MAX 10
|
|
|
|
typedef struct dn_naddr {
|
|
unsigned short a_len;
|
|
unsigned char a_addr[DN_MAXADDL];
|
|
} DNNADDR,*LPDNNADDR;
|
|
|
|
typedef struct sockaddr_dn {
|
|
unsigned short sdn_family;
|
|
unsigned char sdn_flags;
|
|
unsigned char sdn_objnum;
|
|
unsigned short sdn_objnamel;
|
|
char sdn_objname[DN_MAXOBJL];
|
|
struct dn_naddr sdn_add;
|
|
} SOCKADDRDN,*LPSOCKADDRDN;
|
|
|
|
#define sdn_nodeaddrl sdn_add.a_len
|
|
#define sdn_nodeaddr sdn_add.a_addr
|
|
|
|
#define DNOBJECT_FAL 17
|
|
#define DNOBJECT_NICE 19
|
|
#define DNOBJECT_DTERM 23
|
|
#define DNOBJECT_MIRROR 25
|
|
#define DNOBJECT_EVR 26
|
|
#define DNOBJECT_MAIL11 27
|
|
#define DNOBJECT_PHONE 29
|
|
#define DNOBJECT_CTERM 42
|
|
#define DNOBJECT_DTR 63
|
|
|
|
typedef struct nodeent_f {
|
|
char *n_name;
|
|
unsigned short n_addrtype;
|
|
unsigned short n_length;
|
|
unsigned char *n_addr;
|
|
unsigned char *n_params;
|
|
unsigned char n_reserved[16];
|
|
} NODEENTF,*LPNODEENTF;
|
|
|
|
typedef struct optdata_dn {
|
|
unsigned short opt_status;
|
|
unsigned short opt_optl;
|
|
unsigned char opt_data[DN_MAXOPTL];
|
|
} OPTDATADN,*LPOPTDATADN;
|
|
|
|
typedef struct accessdata_dn {
|
|
unsigned short acc_accl;
|
|
unsigned char acc_acc[DN_MAXACCL+1];
|
|
unsigned short acc_passl;
|
|
unsigned char acc_pass[DN_MAXACCL+1];
|
|
unsigned short acc_userl;
|
|
unsigned char acc_user[DN_MAXACCL+1];
|
|
} ACCESSDATADN,*LPACCESSDATADN;
|
|
|
|
typedef struct calldata_dn {
|
|
struct optdata_dn optdata_dn;
|
|
struct accessdata_dn accessdata_dn;
|
|
} CALLDATADN,*LPCALLDATADN;
|
|
|
|
typedef struct dnet_accent {
|
|
unsigned char dac_status;
|
|
unsigned char dac_type;
|
|
char dac_username[DN_MAXACCL+1];
|
|
char dac_password[DN_MAXACCL+1];
|
|
} DNETACCENT,*LPDNETACCENT;
|
|
|
|
#define DN_NONE 0x00
|
|
#define DN_RO 0x01
|
|
#define DN_WO 0x02
|
|
#define DN_RW 0x03
|
|
|
|
typedef struct linkinfo_dn {
|
|
unsigned short idn_segsize;
|
|
unsigned char idn_linkstate;
|
|
} LINKINFODN,*LPLINKINFODN;
|
|
|
|
#define SO_LINKINFO 7
|
|
#define LL_INACTIVE 0
|
|
#define LL_CONNECTING 1
|
|
#define LL_RUNNING 2
|
|
#define LL_DISCONNECTING 3
|
|
|
|
#pragma pack(pop,ws2dnet)
|
|
|
|
struct dn_naddr *WSAAPI dnet_addr(const char *);
|
|
int WSAAPI dnet_eof(SOCKET);
|
|
struct dnet_accent *WSAAPI dnet_getacc(const struct dnet_accent *);
|
|
char *WSAAPI dnet_getalias(const char *);
|
|
char *WSAAPI dnet_htoa(const struct dn_naddr *);
|
|
char *WSAAPI dnet_ntoa(const struct dn_naddr *);
|
|
struct dn_naddr *WSAAPI getnodeadd(void);
|
|
struct nodeent_f *WSAAPI getnodebyaddr(const unsigned char *addr,int,int);
|
|
struct nodeent_f *WSAAPI getnodebyname(const char *);
|
|
char *WSAAPI getnodename(void);
|
|
|
|
typedef struct dn_naddr *(WSAAPI *LPDNETADDR)(const char *);
|
|
typedef int (WSAAPI *LPDNETEOF)(SOCKET);
|
|
typedef struct dnet_accent *(WSAAPI *LPDNETGETACC)(const struct dnet_accent *);
|
|
typedef char *(WSAAPI *LPDNETGETALIAS)(const char *);
|
|
typedef char *(WSAAPI *LPDNETHTOA)(const struct dn_naddr *);
|
|
typedef char *(WSAAPI *LPDNETNTOA)(const struct dn_naddr *);
|
|
typedef struct dn_naddr *(WSAAPI *LPGETNODEADD)(void);
|
|
typedef struct nodeent_f *(WSAAPI *LPGETNODEBYADDR)(const unsigned char *addr,int,int);
|
|
typedef struct nodeent_f *(WSAAPI *LPGETNODEBYNAME)(const char *);
|
|
typedef char *(WSAAPI *LPGETNODENAME)(void);
|
|
#endif
|