Xdmcp.h revision 677833bc953b6cb418c701facbdcf4aa18d6c44e
/* $Xorg: Xdmcp.h,v 1.7 2001/04/13 14:43:00 steve Exp $ */
/*
* Copyright 1989 Network Computing Devices, Inc., Mountain View, California.
*
* Permission to use, copy, modify, and distribute this software and its
* documentation for any purpose and without fee is hereby granted, provided
* that the above copyright notice appear in all copies and that both that
* copyright notice and this permission notice appear in supporting
* documentation, and that the name of N.C.D. not be used in advertising or
* publicity pertaining to distribution of the software without specific,
* written prior permission. N.C.D. makes no representations about the
* suitability of this software for any purpose. It is provided "as is"
* without express or implied warranty.
*
*/
#ifndef _XDMCP_H_
#define _XDMCP_H_
#include <X11/Xfuncproto.h>
#define XDM_PROTOCOL_VERSION 1
#define XDM_UDP_PORT 177
/* IANA has assigned FF0X:0:0:0:0:0:0:12B as the permanently assigned
* multicast addresses for XDMCP, where X in the prefix may be replaced
* by any valid scope identifier, such as 1 for Node-Local, 2 for Link-Local,
* 5 for Site-Local, and so on. We set the default here to the Link-Local
* version to most closely match the old IPv4 subnet broadcast behavior.
* Both xdm and X -query allow specifying a different address if a different
* scope is defined.
*/
#define XDM_DEFAULT_MCAST_ADDR6 "ff02:0:0:0:0:0:0:12b"
#define XDM_MAX_MSGLEN 8192
#define XDM_MIN_RTX 2
#define XDM_MAX_RTX 32
#define XDM_RTX_LIMIT 7
#define XDM_KA_RTX_LIMIT 4
typedef enum {
} xdmOpCode;
typedef enum {
#endif
} xdmcp_states;
#ifdef NOTDEF
/* table of hosts */
#define XDM_MAX_STR_LEN 21
#define XDM_MAX_HOSTS 20
struct xdm_host_table {
struct sockaddr_in sockaddr;
char name[XDM_MAX_STR_LEN];
char status[XDM_MAX_STR_LEN];
};
#endif /* NOTDEF */
typedef struct _ARRAY8 {
typedef struct _ARRAY16 {
} ARRAY16, *ARRAY16Ptr;
typedef struct _ARRAY32 {
} ARRAY32, *ARRAY32Ptr;
typedef struct _ARRAYofARRAY8 {
typedef struct _XdmcpHeader {
typedef struct _XdmcpBuffer {
int size; /* size of buffer pointed by to data */
int pointer; /* current index into data */
int count; /* bytes read from network into data */
typedef struct _XdmAuthKey {
/* implementation-independent network address structure.
Equiv to sockaddr* for sockets and netbuf* for STREAMS. */
typedef char *XdmcpNetaddr;
#ifdef HASXDMAUTH
extern void XdmcpWrap(unsigned char *input, unsigned char *wrapper, unsigned char *output, int bytes);
extern void XdmcpUnwrap(unsigned char *input, unsigned char *wrapper, unsigned char *output, int bytes);
#endif
#ifndef TRUE
#define TRUE 1
#define FALSE 0
#endif
#endif
#endif /* _XDMCP_H_ */