summaryrefslogtreecommitdiff
path: root/gcc/ada/g-socthi-mingw.adb
diff options
context:
space:
mode:
authorcharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>2005-11-15 13:50:37 +0000
committercharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>2005-11-15 13:50:37 +0000
commit02747205c562d60e12b1c96b8cd6d3ee6eedea3a (patch)
treed1576a6497bfbada92fc3b0b451f8c360df4d37d /gcc/ada/g-socthi-mingw.adb
parentaa976da570b177e1a38dddbb3bf035c240bb415f (diff)
downloadgcc-02747205c562d60e12b1c96b8cd6d3ee6eedea3a.tar.gz
2005-11-14 Thomas Quinot <quinot@adacore.com>
* g-soccon.ads: Minor reformatting. Update comments. * gsocket.h: Include <sys/times.h> in the VxWorks case, in order to gain visibility on the declaration of struct timeval. * g-soccon-freebsd.ads, g-soccon-darwin.ads, g-soccon-tru64.ads, g-soccon-aix.ads, g-soccon-irix.ads, g-soccon-hpux.ads, g-soccon-solaris.ads, g-soccon-vms.ads, g-soccon-mingw.ads, g-soccon-vxworks.ads (SIZEOF_tv_sec, SIZEOF_tv_usec): New constants. * g-soccon-hpux-ia64.ads, g-soccon-linux-ppc.ads, g-soccon-solaris-64.ads, g-soccon-linux-64.ads, g-soccon-linux-x86.ads: New files. * g-socthi-mingw.adb: (Socket_Error_Message): Remove redundant use of GNAT.Sockets.Constants * g-socthi-vxworks.ads, g-socthi-vms.ads, g-socthi-mingw.ads (time_t, suseconds_t): New types constructed to match the tv_sec and tv_usec fields of C struct timeval. (Timeval): Construct structure in terms of the new types. (Host_Errno): New function (imported from socket.c), returns last hosts database error. * g-socthi-vxworks.adb: Add error handling circuitry. * g-socket.ads, g-socket.adb (To_Timeval): Reflect change of type for components of struct timeval. (Get_Host_By_Name, Get_Host_By_Address): Fix error reporting circuitry. (Check_Selector): In error conditions, clear internal socket sets to avoid a memory leak. (Get_Socket_Option, Set_Socket_Option): Support for Multicast_If, Send_Timeout, Receive_Timeout. * g-socthi.ads (time_t, suseconds_t): New types constructed to match the tv_sec and tv_usec fields of C struct timeval. (Timeval): Construct structure in terms of the new types. (Host_Errno): New function (imported from socket.c), returns last hosts database error. * socket.c (__gnat_get_h_errno): New function to retrieve h_errno, the hosts database last error code. * gen-soccon.c: Complete value expansion should not be performed on TARGET, as it has the form of a math expression, and some components may be platform-defined macros. For VxWorks, generate the OK and ERROR values. New constants giving the sizes of the components of C struct timeval. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@106949 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/ada/g-socthi-mingw.adb')
-rw-r--r--gcc/ada/g-socthi-mingw.adb25
1 files changed, 8 insertions, 17 deletions
diff --git a/gcc/ada/g-socthi-mingw.adb b/gcc/ada/g-socthi-mingw.adb
index e525cc839e3..862305dbd2e 100644
--- a/gcc/ada/g-socthi-mingw.adb
+++ b/gcc/ada/g-socthi-mingw.adb
@@ -6,7 +6,7 @@
-- --
-- B o d y --
-- --
--- Copyright (C) 2001-2005 AdaCore --
+-- Copyright (C) 2001-2005, AdaCore --
-- --
-- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- --
@@ -59,8 +59,7 @@ package body GNAT.Sockets.Thin is
function Standard_Connect
(S : C.int;
Name : System.Address;
- Namelen : C.int)
- return C.int;
+ Namelen : C.int) return C.int;
pragma Import (Stdcall, Standard_Connect, "connect");
function Standard_Select
@@ -68,8 +67,7 @@ package body GNAT.Sockets.Thin is
Readfds : Fd_Set_Access;
Writefds : Fd_Set_Access;
Exceptfds : Fd_Set_Access;
- Timeout : Timeval_Access)
- return C.int;
+ Timeout : Timeval_Access) return C.int;
pragma Import (Stdcall, Standard_Select, "select");
type Error_Type is
@@ -239,8 +237,7 @@ package body GNAT.Sockets.Thin is
function C_Connect
(S : C.int;
Name : System.Address;
- Namelen : C.int)
- return C.int
+ Namelen : C.int) return C.int
is
Res : C.int;
@@ -263,8 +260,7 @@ package body GNAT.Sockets.Thin is
function C_Readv
(Socket : C.int;
Iov : System.Address;
- Iovcnt : C.int)
- return C.int
+ Iovcnt : C.int) return C.int
is
Res : C.int;
Count : C.int := 0;
@@ -299,8 +295,7 @@ package body GNAT.Sockets.Thin is
Readfds : Fd_Set_Access;
Writefds : Fd_Set_Access;
Exceptfds : Fd_Set_Access;
- Timeout : Timeval_Access)
- return C.int
+ Timeout : Timeval_Access) return C.int
is
pragma Warnings (Off, Exceptfds);
@@ -441,8 +436,7 @@ package body GNAT.Sockets.Thin is
function C_Writev
(Socket : C.int;
Iov : System.Address;
- Iovcnt : C.int)
- return C.int
+ Iovcnt : C.int) return C.int
is
Res : C.int;
Count : C.int := 0;
@@ -553,11 +547,8 @@ package body GNAT.Sockets.Thin is
--------------------------
function Socket_Error_Message
- (Errno : Integer)
- return C.Strings.chars_ptr
+ (Errno : Integer) return C.Strings.chars_ptr
is
- use GNAT.Sockets.Constants;
-
begin
case Errno is
when EINTR => return Error_Messages (N_EINTR);