1 /***********************************************************************/
5 /* Xavier Leroy and Pascal Cuoq, projet Cristal, INRIA Rocquencourt */
7 /* Copyright 1996 Institut National de Recherche en Informatique et */
8 /* en Automatique. All rights reserved. This file is distributed */
9 /* under the terms of the GNU Library General Public License, with */
10 /* the special exception on linking described in file ../../LICENSE. */
12 /***********************************************************************/
14 /* $Id: getsockname.c 6824 2005-03-24 17:20:54Z doligez $ */
17 #include "unixsupport.h"
18 #include "socketaddr.h"
20 CAMLprim value unix_getsockname(sock)
24 union sock_addr_union addr;
25 socklen_param_type addr_len;
27 addr_len = sizeof(sock_addr);
28 retcode = getsockname(Socket_val(sock),
29 &addr.s_gen, &addr_len);
30 if (retcode == -1) uerror("getsockname", Nothing);
31 return alloc_sockaddr(&addr, addr_len, -1);