aboutsummaryrefslogtreecommitdiff
path: root/src/include/com.h
diff options
context:
space:
mode:
authordos-reis <gdr@axiomatics.org>2008-03-08 19:09:18 +0000
committerdos-reis <gdr@axiomatics.org>2008-03-08 19:09:18 +0000
commit6a0809d42bbfb8ae3c00431c69bff92f38e5739c (patch)
treea1652c71b6a3ccab8773f8c02d493b3278632fc8 /src/include/com.h
parent8531f4c74274b8aa99168d220738227557a9c418 (diff)
downloadopen-axiom-6a0809d42bbfb8ae3c00431c69bff92f38e5739c.tar.gz
* include/sockio.h: Rename from sockio-c.H1.
* clef/edible.c: Don't include useproto.h. Include sockio.h * graph/view3D/surface3d.c.pamphlet: Likewise. * graph/viewman/fun2D.c.pamphlet: Likewise. * graph/viewman/fun3D.c.pamphlet: Likewise. * graph/viewman/make2D.c.pamphlet: Likewise. * graph/viewman/make3D.c.pamphlet: Likewise. * graph/viewman/makeGraph.c.pamphlet: Likewise. * graph/viewman/sselect.c.pamphlet: Likewise. * graph/viewman/viewman.c.pamphlet: Likewise. * graph/viewman/viewman.h: Likewise. * hyper/ReadBitmap.c: Likewise. * hyper/addfile.c: Likewise. * hyper/cond.c: Likewise. * hyper/debug.c: Likewise. * hyper/dialog.c: Likewise. * hyper/display.c: Likewise. * hyper/event.c: Likewise. * hyper/ex2ht.c: Likewise. * hyper/extent1.c: Likewise. * hyper/extent2.c: Likewise. * hyper/form-ext.c: Likewise. * hyper/group.c: Likewise. * hyper/halloc.c: Likewise. * hyper/hash.c: Likewise. * hyper/htadd.c: Likewise. * hyper/hterror.c: Likewise. * hyper/htinp.c: Likewise. * hyper/hyper.c: Likewise. * hyper/initx.c: Likewise. * hyper/input.c: Likewise. * hyper/item.c: Likewise. * hyper/keyin.c: Likewise. * hyper/lex.c: Likewise. * hyper/macro.c: Likewise. * hyper/mem.c: Likewise. * hyper/parse-aux.c: Likewise. * hyper/parse-input.c: Likewise. * hyper/parse-paste.c: Likewise. * hyper/parse-types.c: Likewise. * hyper/parse.c: Likewise. * hyper/scrollbar.c: Likewise. * hyper/show-types.c: Likewise. * hyper/spadbuf.c: Likewise. * hyper/spadint.c: Likewise. * hyper/titlebar.c: Likewise. * lib/sockio-c.c: Likewise. * sman/session.c: Likewise. * sman/sman.c: Likewise. * include/useproto.h: Remove.
Diffstat (limited to 'src/include/com.h')
-rw-r--r--src/include/com.h145
1 files changed, 32 insertions, 113 deletions
diff --git a/src/include/com.h b/src/include/com.h
index 9dfca2d1..520e4aae 100644
--- a/src/include/com.h
+++ b/src/include/com.h
@@ -1,121 +1,40 @@
/*
-Copyright (c) 1991-2002, The Numerical ALgorithms Group Ltd.
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without
-modification, are permitted provided that the following conditions are
-met:
-
- - Redistributions of source code must retain the above copyright
- notice, this list of conditions and the following disclaimer.
-
- - Redistributions in binary form must reproduce the above copyright
- notice, this list of conditions and the following disclaimer in
- the documentation and/or other materials provided with the
- distribution.
-
- - Neither the name of The Numerical ALgorithms Group Ltd. nor the
- names of its contributors may be used to endorse or promote products
- derived from this software without specific prior written permission.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
-IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
-TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
-PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER
-OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
-EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
-PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
-PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
-LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
-NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ Copyright (C) 1991-2002, The Numerical ALgorithms Group Ltd.
+ All rights reserved.
+ Copyright (C) 2007-2008, Gabriel Dos Reis.
+ All rights resrved.
+
+ Redistribution and use in source and binary forms, with or without
+ modification, are permitted provided that the following conditions are
+ met:
+
+ - Redistributions of source code must retain the above copyright
+ notice, this list of conditions and the following disclaimer.
+
+ - Redistributions in binary form must reproduce the above copyright
+ notice, this list of conditions and the following disclaimer in
+ the documentation and/or other materials provided with the
+ distribution.
+
+ - Neither the name of The Numerical ALgorithms Group Ltd. nor the
+ names of its contributors may be used to endorse or promote products
+ derived from this software without specific prior written permission.
+
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
+ IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+ TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
+ PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER
+ OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+ PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+ PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+ LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+ NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
#ifndef AXIOM_COM_H_INCLUDED
#define AXIOM_COM_H_INCLUDED
-
-#ifdef __MINGW32__
-# include <winsock2.h>
-#else
-# include <sys/types.h>
-# include <sys/socket.h>
-# include <netinet/in.h>
-#endif
-
-#include "axiom-c-macros.h"
-
-/* On Windows, a socket identifier is not a file descriptor. It is
- represented by an integer type, but that integer type is not just
- plain int as in the Unix world. It is an unsigned integer.
- Consequently, we abstract over that variation, using the typedef
- axiom_socket. */
-
-#ifdef __MINGW32__
-typedef SOCKET axiom_socket;
-#else
-typedef int axiom_socket;
-#endif
-
-
-/* Close a socket communication endpoint. */
-extern void axiom_close_socket(axiom_socket);
-
-typedef struct {
- axiom_socket socket; /* socket number returned by "socket" call */
- int type; /* socket type (AF_UNIX or AF_INET) */
- int purpose; /* can be SessionManager, GraphicsServer, etc. */
- int pid; /* process ID of connected socket */
- int frame; /* spad interpreter frame (for interpreter windows) */
- axiom_socket remote; /* file descriptor of remote socket */
- union {
- struct sockaddr u_addr;
- struct sockaddr_in i_addr;
- } addr;
- char *host_name; /* name of foreign host if type == AF_INET */
-} Sock;
-
-
-#define MaxClients 150
-
-/* possible socket types (purpose) */
-
-#define SessionManager 1
-#define ViewportServer 2
-#define MenuServer 3
-#define SessionIO 4
-#define BaloonServer 5
-#define InterpWindow 6
-#define KillSpad 7
-#define DebugWindow 8 /* used for nagman */
-#define Forker 9
-#define AV 10 /*Simon's algebraic viewer */
-
-#define Acknowledge 255
-
-/* Timeout value for connection to remote socket */
-
-#define Forever 0
-
-/* Socket name for local AXIOM server and session manager */
-
-#define SpadServer "/tmp/.d"
-#define SessionServer "/tmp/.s"
-#define SessionIOName "/tmp/.i"
-#define MenuServerName "/tmp/.h"
-#define ForkServerName "/tmp/.f"
-
-
-#define MASK_SIZE (NBBY*sizeof(fd_set))
-
-
-/* table of dedicated socket types */
-
-extern Sock *purpose_table[];
-extern Sock server[];
-extern Sock clients[];
-extern fd_set socket_mask;
-extern fd_set server_mask;
-
/* Commands sent over the AXIOM session manager or menu socket */
#define CreateFrame 1