aboutsummaryrefslogtreecommitdiffstats
path: root/libcoopgamma_get_socket_file.3
blob: f73f0ca091dbff0ee83d08987cd6b34265e8e2a9 (plain) (blame)
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
.TH LIBCOOPGAMMA_GET_SOCKET_FILE 3 LIBCOOPGAMMA
.SH "NAME"
libcoopgamma_get_socket_file - Get the socket file of the coopgamma server
.SH "SYNOPSIS"
.nf
#include <libcoopgamma.h>

char *libcoopgamma_get_socket_file(const char *restrict \fImethod\fP, const char *restrict \fIsite\fP);
.fi
.P
Link with
.IR -lcoopgamma .
.SH "DESCRIPTION"
Newcomers need not concern themselves with the
.BR libcoopgamma_get_socket_file ()
function.
.P
The
.BR libcoopgamma_get_socket_file ()
function consults
.BR coopgammad (1)
to get the pathname of the socket for
communicating with the
.BR coopgammad (1)
instance for the selected adjustment
.I method
and
.IR site .
If
.I method
or
.I site
is
.IR NULL ,
the it will selected automatically.
.P
For the duration of the function call,
.I SIGCHLD
most neither be ignored nor blocked. It is the
user of this library's responsibility to ensure
this. The
.BR libcoopgamma_get_socket_file ()
function will not temporarily reset handling of
.I SIGCHLD
itself.
.SH "RETURN VALUES"
Upon successful completion, the
.BR libcoopgamma_get_socket_file ()
function returns the pathname of the socket.
Success does not mean that the server is necessarily
running at the moment. The user should free
the returned pointer. On error,
.I NULL
is returned and
.I errno
is set appropriately.
.SH "ERRORS"
The
.BR libcoopgamma_get_socket_file ()
function may fail for any reason specified for
.BR pipe (3),
.BR fork (3),
.BR dup2 (3),
.BR execvp (3),
.BR malloc (3),
.BR realloc (3),
.BR read (3)
(other than
.IR EINTR ),
and
.BR waitpid (3).
The function may also fail for any of the
following reasons:
.TP
.B EINVAL
If
.I method
contain an invalid adjustment method name.
.TP
.B EBADMSG
.BR coopgammad (1)
output invalid data to stdout.
.SH "SEE ALSO"
.BR libcoopgamma_get_methods (3),
.BR libcoopgamma_get_pid_file (3),
.BR libcoopgamma_context_initialise (3)