summaryrefslogtreecommitdiff
path: root/mcon/U/ipc.U
blob: 75dbe6073e3c81efd8308a24a8e4690dd2b58568 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
?RCS: $Id: ipc.U 167 2013-05-08 17:58:00Z rmanfredi $
?RCS:
?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi
?RCS: 
?RCS: You may redistribute only under the terms of the Artistic License,
?RCS: as specified in the README file that comes with the distribution.
?RCS: You may reuse parts of this distribution only within the terms of
?RCS: that same Artistic License; a copy of which may be found at the root
?RCS: of the source tree for dist 4.0.
?RCS:
?RCS: $Log: ipc.U,v $
?RCS: Revision 3.0  1993/08/18  12:08:53  ram
?RCS: Baseline for dist 3.0 netwide release.
?RCS:
?MAKE:ipc serve_shm serve_msg serve_inet_udp serve_inet_tcp serve_unix_udp \
	serve_unix_tcp: test Myread Oldconfig d_socket d_msg d_shm d_sem
?MAKE:	-pick add $@ %<
?LINT:use d_msg d_sem
?S:ipc:
?S:	This variable holds the type of IPC service we'll be using.  Values
?S:	include "ip", "shm", "msg", "cms" and "os9".  We don't worry about
?S:	cms or os9 here, because Configure doesn't run in those places--HMS.
?S:.
?S:serve_shm:
?S:	This variable controls the definition of SERVE_SHM, which tells the
?S:	C program to use USG shared memory for IPC.
?S:.
?S:serve_msg:
?S:	This variable controls the definition of SERVE_MSG, which tells the
?S:	C program to use USG message queues for IPC.
?S:.
?S:serve_inet_udp:
?S:	This variable controls the definition of SERVE_INET_UDP, which tells
?S:	the C program to enable InterNet-domain UDP support for IPC.
?S:.
?S:serve_inet_tcp:
?S:	This variable controls the definition of SERVE_INET_TCP, which tells
?S:	the C program to enable InterNet-domain TCP support for IPC.
?S:.
?S:serve_unix_udp:
?S:	This variable controls the definition of SERVE_UNIX_UDP, which tells
?S:	the C program to enable Unix-domain UDP support for IPC.
?S:.
?S:serve_unix_tcp:
?S:	This variable controls the definition of SERVE_UNIX_TCP, which tells
?S:	the C program to enable Unix-domain TCP support for IPC.
?S:.
?C:SERVE_SHM:
?C:	If defined, tells the C program to use USG shared memory for IPC.
?C:.
?C:SERVE_MSG:
?C:	If defined, tells the C program to use USG message queues for IPC.
?C:.
?C:SERVE_INET_UDP:
?C:	If defined, tells the C program to enable InterNet-domain UDP
?C:	support for IPC.
?C:.
?C:SERVE_INET_TCP:
?C:	If defined, tells the C program to enable InterNet-domain TCP
?C:	support for IPC.
?C:.
?C:SERVE_UNIX_UDP:
?C:	If defined, tells the C program to enable Unix-domain UDP
?C:	support for IPC.
?C:.
?C:SERVE_UNIX_TCP:
?C:	If defined, tells the C program to enable Unix-domain TCP
?C:	support for IPC.
?C:.
?H:#$serve_shm	SERVE_SHM	/**/
?H:#$serve_msg	SERVE_MSG	/**/
?H:#$serve_inet_udp	SERVE_INET_UDP	/**/
?H:#$serve_inet_tcp	SERVE_INET_TCP	/**/
?H:#$serve_unix_udp	SERVE_UNIX_UDP	/**/
?H:#$serve_unix_tcp	SERVE_UNIX_TCP	/**/
?H:.
?X: FIXME -- RAM
?INIT:serve_shm=''
?INIT:serve_msg="$undef"
?INIT:serve_inet_udp=''
?INIT:serve_inet_tcp=''
?INIT:serve_unix_udp=''
?INIT:serve_unix_tcp=''
: get IPC mechanism
echo " "
ipc=''
while $test -z "$ipc"
do
	if $test "$ipc" != "shm" -a "$d_socket" = "$define"; then
		ipc=''
		if $test "$serve_inet_udp" = "$undef"; then
			dflt=n
		else
			dflt=y
		fi
		rp='Provide InterNet-domain UDP service?'
		. ./myread
		dflt=''
		case "$ans" in
		n*) serve_inet_udp="$undef";;
		*)
			serve_inet_udp="$define"
			ipc='ip'
			;;
		esac

		if $test "$serve_inet_tcp" = "$define"; then
			dflt=y
		else
			dflt=n
		fi
		rp='Provide InterNet-domain TCP service?'
		. ./myread
		dflt=''
		case "$ans" in
		n*) serve_inet_tcp="$undef";;
		*)
			serve_inet_tcp="$define"
			ipc='ip'
			;;
		esac

		if $test "$serve_unix_udp" = "$define"; then
			dflt=y
		else
			dflt=n
		fi
		rp='Provide Unix-domain UDP service?'
		. ./myread
		dflt=''
		case "$ans" in
		n*) serve_unix_udp="$undef";;
		*)
			serve_unix_udp="$define"
			ipc='ip'
			;;
		esac

		if $test "$serve_unix_tcp" = "$define"; then
			dflt=y
		else
			dflt=n
		fi
		rp='Provide Unix-domain TCP service?'
		. ./myread
		dflt=''
		case "$ans" in
		n*) serve_unix_tcp="$undef";;
		*)
			serve_unix_tcp="$define"
			ipc='ip'
			;;
		esac
	else
		serve_inet_udp="$undef"
		serve_inet_tcp="$undef"
		serve_unix_udp="$undef"
		serve_unix_tcp="$undef"
	fi
	if $test "$ipc" != "ip" -a "$d_shm" = "$define"; then
		echo "Providing USG shared memory IPC support." >&4
		serve_shm="$define"
		ipc='shm'
	else
		serve_shm="$undef"
	fi
	if $test -z "$ipc"; then
		echo "You must select an IPC mechanism." >&4
	fi
done