GNU libmicrohttpd  0.9.29
platform_interface.h File Reference

internal platform abstraction functions More...

#include "platform.h"
Include dependency graph for platform_interface.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define MHD_str_equal_caseless_(a, b)   (0==strcasecmp((a),(b)))
 
#define MHD_str_equal_caseless_n_(a, b, n)   (0==strncasecmp((a),(b),(n)))
 
#define MHD_snprintf_   snprintf
 
#define MHD_socket_close_(fd)   (((0 != close(fd)) && (EBADF == errno)) ? -1 : 0)
 
#define MHD_socket_errno_   errno
 
#define MHD_socket_last_strerr_()   strerror(errno)
 
#define MHD_strerror_(errnum)   strerror((errnum))
 
#define MHD_set_socket_errno_(errnum)   errno=(errnum)
 
#define MHD_SYS_select_(n, r, w, e, t)   select((n),(r),(w),(e),(t))
 
#define MHD_pipe_(fdarr)   pipe((fdarr))
 
#define MHD_pipe_errno_   errno
 
#define MHD_pipe_last_strerror_()   strerror(errno)
 
#define MHD_pipe_write_(fd, ptr, sz)   write((fd), (const void*)(ptr), (sz))
 
#define MHD_pipe_read_(fd, ptr, sz)   read((fd), (void*)(ptr), (sz))
 
#define MHD_pipe_close_(fd)   close((fd))
 
#define MHD_INVALID_PIPE_   (-1)
 
#define MHD_random_()   random()
 

Typedefs

typedef size_t _MHD_socket_funcs_size
 

Detailed Description

internal platform abstraction functions

Author
Karlson2k (Evgeny Grin)

Definition in file platform_interface.h.

Macro Definition Documentation

#define MHD_pipe_ (   fdarr)    pipe((fdarr))

Definition at line 159 of file platform_interface.h.

Referenced by MHD_start_daemon_va().

#define MHD_pipe_close_ (   fd)    close((fd))

Definition at line 203 of file platform_interface.h.

Referenced by MHD_start_daemon_va(), and MHD_stop_daemon().

#define MHD_pipe_errno_   errno

Definition at line 171 of file platform_interface.h.

#define MHD_pipe_last_strerror_ ( )    strerror(errno)

Definition at line 179 of file platform_interface.h.

Referenced by MHD_start_daemon_va().

#define MHD_pipe_read_ (   fd,
  ptr,
  sz 
)    read((fd), (void*)(ptr), (sz))
#define MHD_pipe_write_ (   fd,
  ptr,
  sz 
)    write((fd), (const void*)(ptr), (sz))
#define MHD_random_ ( )    random()

Definition at line 216 of file platform_interface.h.

#define MHD_set_socket_errno_ (   errnum)    errno=(errnum)

Definition at line 135 of file platform_interface.h.

Referenced by MHD_ip_limit_del(), recv_param_adapter(), and send_param_adapter().

#define MHD_snprintf_   snprintf
#define MHD_socket_close_ (   fd)    (((0 != close(fd)) && (EBADF == errno)) ? -1 : 0)

MHD_socket_close_(fd) close any FDs (non-W32) / close only socket FDs (W32). Note that on HP-UNIX, this function may leak the FD if errno is set to EINTR. Do not use HP-UNIX.

Parameters
fddescriptor to close
Returns
0 on success (error codes like EINTR and EIO are counted as success, only EBADF counts as an error!)

Definition at line 103 of file platform_interface.h.

Referenced by internal_add_connection(), MHD_accept_connection(), MHD_cleanup_connections(), MHD_start_daemon_va(), MHD_stop_daemon(), SPDYF_session_accept(), SPDYF_session_destroy(), SPDYF_start_daemon_va(), and SPDYF_stop_daemon().

#define MHD_socket_errno_   errno

MHD_socket_errno_ is errno of last function (non-W32) / errno of last socket function (W32)

Definition at line 113 of file platform_interface.h.

Referenced by create_socket(), do_read(), do_write(), MHD_accept_connection(), MHD_connection_handle_write(), MHD_handle_connection(), MHD_poll(), MHD_select(), and send_param_adapter().

#define MHD_str_equal_caseless_ (   a,
 
)    (0==strcasecmp((a),(b)))

Check two strings case-insensitive equality

Parameters
afirst string to check
bsecond string to check
Returns
boolean true if strings are equal, boolean false if strings are unequal

Definition at line 44 of file platform_interface.h.

Referenced by build_header_response(), digest_calc_ha1(), keepalive_possible(), MHD_connection_handle_idle(), MHD_lookup_connection_value(), MHD_queue_response(), need_100_continue(), and parse_connection_headers().

#define MHD_str_equal_caseless_n_ (   a,
  b,
 
)    (0==strncasecmp((a),(b),(n)))

Check not more than n chars in two strings case-insensitive equality

Parameters
afirst string to check
bsecond string to check
nmaximum number of chars to check
Returns
boolean true if strings are equal, boolean false if strings are unequal

Definition at line 63 of file platform_interface.h.

Referenced by lookup_sub_value(), MHD_create_post_processor(), MHD_post_process(), post_process_multipart(), process_multipart_headers(), and try_match_header().

#define MHD_strerror_ (   errnum)    strerror((errnum))

Definition at line 128 of file platform_interface.h.

Referenced by internal_add_connection(), MHD_select(), and MHD_start_daemon_va().

#define MHD_SYS_select_ (   n,
  r,
  w,
  e,
 
)    select((n),(r),(w),(e),(t))

Definition at line 142 of file platform_interface.h.

Referenced by MHD_handle_connection(), and MHD_select().

Typedef Documentation

typedef size_t _MHD_socket_funcs_size

_MHD_socket_funcs_size is type used to specify size for send and recv functions

Definition at line 88 of file platform_interface.h.