00001 // -*- C++ -*- 00002 00003 //============================================================================= 00004 /** 00005 * @file os_inet.h 00006 * 00007 * definitions for internet operations 00008 * 00009 * $Id: os_inet.h 74005 2006-08-14 11:30:00Z johnnyw $ 00010 * 00011 * @author Don Hinton <dhinton@dresystems.com> 00012 * @author This code was originally in various places including ace/OS.h. 00013 */ 00014 //============================================================================= 00015 00016 #ifndef ACE_OS_INCLUDE_ARPA_OS_INET_H 00017 #define ACE_OS_INCLUDE_ARPA_OS_INET_H 00018 00019 #include /**/ "ace/pre.h" 00020 00021 #include /**/ "ace/config-all.h" 00022 00023 #if !defined (ACE_LACKS_PRAGMA_ONCE) 00024 # pragma once 00025 #endif /* ACE_LACKS_PRAGMA_ONCE */ 00026 00027 #include "ace/os_include/netinet/os_in.h" 00028 00029 #if !defined (ACE_LACKS_ARPA_INET_H) 00030 extern "C" { 00031 # include /**/ <arpa/inet.h> 00032 } 00033 #endif /* !ACE_LACKS_ARPA_INET_H */ 00034 00035 #if defined (ACE_VXWORKS) 00036 # include /**/ <inetLib.h> 00037 #endif /* ACE_VXWORKS */ 00038 00039 /** 00040 * In some environments it is useful to swap the bytes on write, for 00041 * instance: a fast server can be feeding a lot of slow clients that 00042 * happen to have the wrong byte order. 00043 * Because this is a rarely used feature we disable it by default to 00044 * minimize footprint. 00045 * This macro enables the functionality, but we still need a way to 00046 * activate it on a per-connection basis. 00047 */ 00048 // #define ACE_ENABLE_SWAP_ON_WRITE 00049 00050 /** 00051 * In some environements we never need to swap bytes when reading, for 00052 * instance embebbed systems (such as avionics) or homogenous 00053 * networks. 00054 * Setting this macro disables the capabilities to demarshall streams 00055 * in the wrong byte order. 00056 */ 00057 // #define ACE_DISABLE_SWAP_ON_READ 00058 00059 // Place all additions (especially function declarations) within extern "C" {} 00060 #ifdef __cplusplus 00061 extern "C" 00062 { 00063 #endif /* __cplusplus */ 00064 00065 #if defined (ACE_LACKS_INET_ATON_PROTOTYPE) 00066 int inet_aton (const char *, struct in_addr *); 00067 #endif /* ACE_LACKS_INET_ATON_PROTOTYPE */ 00068 00069 #ifdef __cplusplus 00070 } 00071 #endif /* __cplusplus */ 00072 00073 #include /**/ "ace/post.h" 00074 #endif /* ACE_OS_INCLUDE_ARPA_OS_INET_H */