]> git.sesse.net Git - rdpsrv/blobdiff - Xserver/lib/Xdmcp/Xdmcp.h
Import X server from vnc-3.3.7.
[rdpsrv] / Xserver / lib / Xdmcp / Xdmcp.h
diff --git a/Xserver/lib/Xdmcp/Xdmcp.h b/Xserver/lib/Xdmcp/Xdmcp.h
new file mode 100644 (file)
index 0000000..ae9d476
--- /dev/null
@@ -0,0 +1,141 @@
+/* $XConsortium: Xdmcp.h,v 1.9 95/06/07 18:30:59 gildea Exp $ */
+/* $XFree86: xc/lib/Xdmcp/Xdmcp.h,v 3.1 1996/01/05 13:12:04 dawes 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_
+#define XDM_PROTOCOL_VERSION   1
+#define XDM_UDP_PORT           177
+#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
+#define XDM_DEF_DORMANCY       (3 * 60)        /* 3 minutes */
+#define XDM_MAX_DORMANCY       (24 * 60 * 60)  /* 24 hours */
+
+typedef enum {
+    BROADCAST_QUERY = 1, QUERY, INDIRECT_QUERY, FORWARD_QUERY,
+    WILLING, UNWILLING, REQUEST, ACCEPT, DECLINE, MANAGE, REFUSE, 
+    FAILED, KEEPALIVE, ALIVE 
+} xdmOpCode;
+
+typedef enum {
+    XDM_QUERY, XDM_BROADCAST, XDM_INDIRECT, XDM_COLLECT_QUERY,
+    XDM_COLLECT_BROADCAST_QUERY, XDM_COLLECT_INDIRECT_QUERY,
+    XDM_START_CONNECTION, XDM_AWAIT_REQUEST_RESPONSE,
+    XDM_AWAIT_MANAGE_RESPONSE, XDM_MANAGE, XDM_RUN_SESSION, XDM_OFF,
+    XDM_AWAIT_USER_INPUT, XDM_KEEPALIVE, XDM_AWAIT_ALIVE_RESPONSE
+} 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 CARD8  *CARD8Ptr;
+typedef CARD16 *CARD16Ptr;
+typedef CARD32 *CARD32Ptr;
+
+typedef struct _ARRAY8 {
+    CARD16     length;
+    CARD8Ptr   data;
+} ARRAY8, *ARRAY8Ptr;
+
+typedef struct _ARRAY16 {
+    CARD8      length;
+    CARD16Ptr  data;
+} ARRAY16, *ARRAY16Ptr;
+
+typedef struct _ARRAY32 {
+    CARD8      length;
+    CARD32Ptr  data;
+} ARRAY32, *ARRAY32Ptr;
+
+typedef struct _ARRAYofARRAY8 {
+    CARD8      length;
+    ARRAY8Ptr  data;
+} ARRAYofARRAY8, *ARRAYofARRAY8Ptr;
+
+typedef struct _XdmcpHeader {
+    CARD16  version, opcode, length;
+} XdmcpHeader, *XdmcpHeaderPtr;
+
+typedef struct _XdmcpBuffer {
+    BYTE    *data;
+    int            size;               /* size of buffer pointed by to data */
+    int            pointer;            /* current index into data */
+    int            count;              /* bytes read from network into data */
+} XdmcpBuffer, *XdmcpBufferPtr;
+
+typedef struct _XdmAuthKey {
+    BYTE    data[8];
+} XdmAuthKeyRec, *XdmAuthKeyPtr;
+
+
+/* implementation-independent network address structure.
+   Equiv to sockaddr* for sockets and netbuf* for STREAMS. */
+
+typedef char *XdmcpNetaddr;
+
+
+extern int XdmcpWriteCARD8(),          XdmcpWriteCARD16();
+extern int XdmcpWriteCARD32();
+extern int XdmcpWriteARRAY8(),         XdmcpWriteARRAY16();
+extern int XdmcpWriteARRAY32(),                XdmcpWriteARRAYofARRAY8();
+extern int XdmcpWriteHeader(),         XdmcpFlush();
+
+extern int XdmcpReadCARD8(),           XdmcpReadCARD16();
+extern int XdmcpReadCARD32();
+extern int XdmcpReadARRAY8(),          XdmcpReadARRAY16();
+extern int XdmcpReadARRAY32(),         XdmcpReadARRAYofARRAY8();
+extern int XdmcpReadHeader(),          XdmcpFill();
+
+extern int  XdmcpReadRemaining();
+
+extern void XdmcpDisposeARRAY8(),      XdmcpDisposeARRAY16();
+extern void XdmcpDisposeARRAY32(),     XdmcpDisposeARRAYofARRAY8();
+
+extern int XdmcpCopyARRAY8();
+
+extern int XdmcpARRAY8Equal();
+
+#ifdef HASXDMAUTH
+extern void XdmcpGenerateKey();
+extern void XdmcpIncrementKey();
+extern void XdmcpDecrementKey();
+extern void XdmcpWrap();
+extern void XdmcpUnwrap();
+#endif
+
+#ifndef TRUE
+#define TRUE   1
+#define FALSE  0
+#endif
+
+#if !defined(Xalloc) && !defined(xalloc) && !defined(Xrealloc)
+extern long *Xalloc (), *Xrealloc ();
+extern void Xfree();
+#endif
+
+#endif /* _XDMCP_H_ */