NE_SET_USERAGENT

Section: neon API reference (3)
Updated: 20 June 2020
Page Index
 

NAME

ne_set_useragent, ne_set_read_timeout, ne_set_connect_timeout, ne_get_scheme, ne_get_server_hostport - common properties for HTTP sessions  

SYNOPSIS

#include <ne_session.h>
void ne_set_useragent(ne_session *session, const char *product);
void ne_set_read_timeout(ne_session *session, int timeout);
void ne_set_connect_timeout(ne_session *session, int timeout);
const char *ne_get_scheme(ne_sesssion *session);
const char *ne_get_server_hostport(ne_sesssion *session);
 

DESCRIPTION

The User-Agent request header is used to identify the software which generated the request for statistical or debugging purposes. neon does not send a User-Agent header unless a call is made to the ne_set_useragent. ne_set_useragent must be passed a product string conforming to RFC2616's product token grammar; of the form "Product/Version".

When neon reads from a socket, by default the read operation will time out after 60 seconds, and the request will fail giving an NE_TIMEOUT error. To configure this timeout interval, call ne_set_read_timeout giving the desired number of seconds as the timeout parameter.

When a connection is being established to a server, normally only the system's TCP timeout handling will apply. To configure a specific (and probably shorter) timeout, the ne_set_connect_timeout can be used, giving the desired number of seconds as the timeout parameter. If 0 is passed, then the default behaviour of using the system TCP timeout will be used.

The scheme used to initially create the session will be returned by ne_get_scheme.

The hostport pair with which the session is associated will be returned by the ne_get_server_hostport; for example www.example.com:8080. Note that the :port will be omitted if the default port for the scheme is used.  

EXAMPLES

Set a user-agent string:

ne_session *sess = ne_session_create(...);
ne_set_useragent(sess, "MyApplication/2.1");

Set a 30 second read timeout:

ne_session *sess = ne_session_create(...);
ne_set_read_timeout(sess, 30);
 

SEE ALSO

ne_session_create, ne_set_session_flag.  

AUTHOR

Joe Orton <neon@lists.manyfish.co.uk>

Author.
 

COPYRIGHT



 

Index

NAME
SYNOPSIS
DESCRIPTION
EXAMPLES
SEE ALSO
AUTHOR
COPYRIGHT