s3-libsmb: Don't leak memory on error.
[Samba.git] / lib / replace / socketpair.c
blobc77573095223c248b02e70d38cf74c0a09a516ac
1 /*
2 * Unix SMB/CIFS implementation.
3 * replacement routines for broken systems
4 * Copyright (C) Jelmer Vernooij <jelmer@samba.org> 2006
5 * Copyright (C) Michael Adam <obnox@samba.org> 2008
7 * ** NOTE! The following LGPL license applies to the replace
8 * ** library. This does NOT imply that all of Samba is released
9 * ** under the LGPL
11 * This library is free software; you can redistribute it and/or
12 * modify it under the terms of the GNU Lesser General Public
13 * License as published by the Free Software Foundation; either
14 * version 3 of the License, or (at your option) any later version.
16 * This library is distributed in the hope that it will be useful,
17 * but WITHOUT ANY WARRANTY; without even the implied warranty of
18 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
19 * Lesser General Public License for more details.
21 * You should have received a copy of the GNU Lesser General Public
22 * License along with this library; if not, see <http://www.gnu.org/licenses/>.
25 #include "replace.h"
26 #include "system/network.h"
28 int rep_socketpair(int d, int type, int protocol, int sv[2])
30 if (d != AF_UNIX) {
31 errno = EAFNOSUPPORT;
32 return -1;
35 if (protocol != 0) {
36 errno = EPROTONOSUPPORT;
37 return -1;
40 if (type != SOCK_STREAM) {
41 errno = EOPNOTSUPP;
42 return -1;
45 return pipe(sv);