|
PolarSSL v1.3.9
|
Network communication functions. More...
#include <string.h>

Go to the source code of this file.
Macros | |
| #define | POLARSSL_ERR_NET_UNKNOWN_HOST -0x0056 |
| Failed to get an IP address for the given hostname. More... | |
| #define | POLARSSL_ERR_NET_SOCKET_FAILED -0x0042 |
| Failed to open a socket. More... | |
| #define | POLARSSL_ERR_NET_CONNECT_FAILED -0x0044 |
| The connection to the given server / port failed. More... | |
| #define | POLARSSL_ERR_NET_BIND_FAILED -0x0046 |
| Binding of the socket failed. More... | |
| #define | POLARSSL_ERR_NET_LISTEN_FAILED -0x0048 |
| Could not listen on the socket. More... | |
| #define | POLARSSL_ERR_NET_ACCEPT_FAILED -0x004A |
| Could not accept the incoming connection. More... | |
| #define | POLARSSL_ERR_NET_RECV_FAILED -0x004C |
| Reading information from the socket failed. More... | |
| #define | POLARSSL_ERR_NET_SEND_FAILED -0x004E |
| Sending information through the socket failed. More... | |
| #define | POLARSSL_ERR_NET_CONN_RESET -0x0050 |
| Connection was reset by peer. More... | |
| #define | POLARSSL_ERR_NET_WANT_READ -0x0052 |
| Connection requires a read call. More... | |
| #define | POLARSSL_ERR_NET_WANT_WRITE -0x0054 |
| Connection requires a write call. More... | |
| #define | POLARSSL_NET_LISTEN_BACKLOG 10 |
| The backlog that listen() should use. More... | |
Functions | |
| int | net_connect (int *fd, const char *host, int port) |
| Initiate a TCP connection with host:port. More... | |
| int | net_bind (int *fd, const char *bind_ip, int port) |
| Create a listening socket on bind_ip:port. More... | |
| int | net_accept (int bind_fd, int *client_fd, void *client_ip) |
| Accept a connection from a remote client. More... | |
| int | net_set_block (int fd) |
| Set the socket blocking. More... | |
| int | net_set_nonblock (int fd) |
| Set the socket non-blocking. More... | |
| void | net_usleep (unsigned long usec) |
| Portable usleep helper. More... | |
| int | net_recv (void *ctx, unsigned char *buf, size_t len) |
| Read at most 'len' characters. More... | |
| int | net_send (void *ctx, const unsigned char *buf, size_t len) |
| Write at most 'len' characters. More... | |
| void | net_close (int fd) |
| Gracefully shutdown the connection. More... | |
Network communication functions.
Copyright (C) 2006-2011, Brainspark B.V.
This file is part of PolarSSL (http://www.polarssl.org) Lead Maintainer: Paul Bakker <polarssl_maintainer at polarssl.org>
All rights reserved.
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
Definition in file net.h.
| #define POLARSSL_ERR_NET_ACCEPT_FAILED -0x004A |
| #define POLARSSL_ERR_NET_BIND_FAILED -0x0046 |
| #define POLARSSL_ERR_NET_CONN_RESET -0x0050 |
| #define POLARSSL_ERR_NET_CONNECT_FAILED -0x0044 |
| #define POLARSSL_ERR_NET_LISTEN_FAILED -0x0048 |
| #define POLARSSL_ERR_NET_RECV_FAILED -0x004C |
| #define POLARSSL_ERR_NET_SEND_FAILED -0x004E |
| #define POLARSSL_ERR_NET_SOCKET_FAILED -0x0042 |
| #define POLARSSL_ERR_NET_UNKNOWN_HOST -0x0056 |
| #define POLARSSL_ERR_NET_WANT_READ -0x0052 |
| #define POLARSSL_ERR_NET_WANT_WRITE -0x0054 |
| #define POLARSSL_NET_LISTEN_BACKLOG 10 |
| int net_accept | ( | int | bind_fd, |
| int * | client_fd, | ||
| void * | client_ip | ||
| ) |
Accept a connection from a remote client.
| bind_fd | Relevant socket |
| client_fd | Will contain the connected client socket |
| client_ip | Will contain the client IP address Must be at least 4 bytes, or 16 if IPv6 is supported |
| int net_bind | ( | int * | fd, |
| const char * | bind_ip, | ||
| int | port | ||
| ) |
Create a listening socket on bind_ip:port.
If bind_ip == NULL, all interfaces are binded.
| fd | Socket to use |
| bind_ip | IP to bind to, can be NULL |
| port | Port number to use |
| void net_close | ( | int | fd | ) |
Gracefully shutdown the connection.
| fd | The socket to close |
| int net_connect | ( | int * | fd, |
| const char * | host, | ||
| int | port | ||
| ) |
Initiate a TCP connection with host:port.
| fd | Socket to use |
| host | Host to connect to |
| port | Port to connect to |
| int net_recv | ( | void * | ctx, |
| unsigned char * | buf, | ||
| size_t | len | ||
| ) |
Read at most 'len' characters.
If no error occurs, the actual amount read is returned.
| ctx | Socket |
| buf | The buffer to write to |
| len | Maximum length of the buffer |
| int net_send | ( | void * | ctx, |
| const unsigned char * | buf, | ||
| size_t | len | ||
| ) |
Write at most 'len' characters.
If no error occurs, the actual amount read is returned.
| ctx | Socket |
| buf | The buffer to read from |
| len | The length of the buffer |
| int net_set_block | ( | int | fd | ) |
Set the socket blocking.
| fd | Socket to set |
| int net_set_nonblock | ( | int | fd | ) |
Set the socket non-blocking.
| fd | Socket to set |
| void net_usleep | ( | unsigned long | usec | ) |
Portable usleep helper.
| usec | Amount of microseconds to sleep |