|
|
1.1 root 1: .TH XNSCourier 3 Cornell
2: .\" $Header: xnscourier.n,v 1.2 86/12/15 11:26:22 jqj Exp $
3: .SH NAME
4: CourierOpen, CourierClose, BDTread, BDTwrite, BDTabort, BDTclosewrite \-
5: public runtimes for Unix Courier
6: .SH SYNOPSIS
7: .nf
8: .B #include <sys/types.h>
9: .B #include <netns/ns.h>
10: .B #include <xnscourier/courier.h>
11: .B #include <xnscourier/courierconnection.h>
12: .PP
13: .B CourierConnection *CourierOpen(destaddr)
14: .B struct ns_addr *destaddr;
15: .PP
16: .B CourierClose(conn)
17: .B CourierConnection *conn;
18: .PP
19: .B int BDTread(conn, buffer, nbytes)
20: .B CourierConnection *conn;
21: .B char *buffer;
22: .B int nbytes;
23: .PP
24: .B int BDTwrite(conn, buffer, nbytes)
25: .B CourierConnection *conn;
26: .B char *buffer;
27: .B int nbytes;
28: .PP
29: .B BDTclosewrite(conn)
30: .B CourierConnection *conn;
31: .PP
32: .B BDTabort(conn)
33: .B CourierConnection *conn;
34: .PP
35: cc ... -lcourier
36: .fi
37: .SH DESCRIPTION
38: .PP
39: These functions are part of the runtime library for XNS Courier remote
40: procedure calls. They all require 4.3 BSD with XNS network support enabled.
41: .PP
42: .I CourierOpen
43: attempts to open an SPP connection to the address specified. It returns
44: 0 on failure.
45: If the port portion of the address is 0, then the standard port for
46: Courier RPC connections, IDPPORT_COURIER, is used.
47: .PP
48: .I CourierClose
49: closes the SPP connection obtained by CourierOpen by means of the usual
50: XNS 3-way END/END-REPLY handshake.
51: .PP
52: .I BDTread
53: and
54: .I BDTwrite
55: are similar to
56: .I read(2)
57: and
58: .I write(2)
59: except that they accept a Courier connection instead of a file descriptor,
60: and transmit or receive at most one SPP packet (maximum size is thus 534
61: bytes, which is also the recommended value of
62: .IR nbytes ).
63: These routines should be used only in a Courier server to perform a BDT
64: data transfer, or in a Courier client from within a BDT callback routine.
65: .PP
66: .I BDTclosewrite
67: and
68: .I BDTabort
69: provide a way for a BDT source (i.e. write)
70: procedure to end a data transfer, either successfully
71: or unsuccessfully respectively. In addition,
72: .I BDTabort
73: may be used to terminate a BDT sink (i.e. read) transfer.
74: .SH FILES
75: .nf
76: .fi
77: .SH SEE ALSO
78: all the Courier documentation
79: .SH DIAGNOSTICS
80: None.
81: .SH BUGS
82: Probably lots of them. Expanding ring broadcast is not yet implemented.
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.