Ulfius: Constants

Ulfius HTTP Framework for REST Applications in C

Macros | Enumerations
Constants

## Macros
#define | ULFIUS_STREAM_BLOCK_SIZE_DEFAULT 1024
#define | U_STREAM_END MHD_CONTENT_READER_END_OF_STREAM
#define | U_STREAM_ERROR MHD_CONTENT_READER_END_WITH_ERROR
#define | U_STREAM_SIZE_UNKNOWN MHD_SIZE_UNKNOWN
#define | U_STREAM_SIZE_UNKOWN U_STREAM_SIZE_UNKNOWN
#define | U_OK 0
| No error. More...
#define | U_ERROR 1
| Error. More...
#define | U_ERROR_MEMORY 2
| Error in memory allocation. More...
#define | U_ERROR_PARAMS 3
| Error in input parameters. More...
#define | U_ERROR_LIBMHD 4
| Error in libmicrohttpd execution. More...
#define | U_ERROR_LIBCURL 5
| Error in libcurl execution. More...
#define | U_ERROR_NOT_FOUND 6
| Something was not found. More...
#define | U_ERROR_DISCONNECTED 7
| Connection closed. More...
#define | U_CALLBACK_CONTINUE 0
| Callback exited with success, continue to next callback. More...
#define | U_CALLBACK_IGNORE 1
| Callback decided to be ignored, request.callback_position will not be incremented, continue to next callback. More...
#define | U_CALLBACK_COMPLETE 2
| Callback exited with success, exit callback list. More...
#define | U_CALLBACK_UNAUTHORIZED 3
| Request is unauthorized, exit callback list and return status 401. More...
#define | U_CALLBACK_ERROR 4
| Error during request process, exit callback list and return status 500. More...
#define | U_COOKIE_SAME_SITE_NONE 0
| Set same_site cookie property to 0. More...
#define | U_COOKIE_SAME_SITE_STRICT 1
| Set same_site cookie property to strict. More...
#define | U_COOKIE_SAME_SITE_LAX 2
| Set same_site cookie property to lax. More...
#define | U_USE_IPV4 0x0001
| Use instance in IPV4 mode only. More...
#define | U_USE_IPV6 0x0010
| Use instance in IPV6 mode only. More...
#define | U_USE_ALL (U_USE_IPV4|U_USE_IPV6)
| Use instance in both IPV4 and IPV6 mode. More...
#define | U_SSL_VERIFY_PEER 0x0001
| Verify TLS session with peers. More...
#define | U_SSL_VERIFY_HOSTNAME 0x0010
| Verify TLS session with hostname. More...

## Enumerations
enum | u_option { U_OPT_NONE = 0 , U_OPT_HTTP_VERB = 1 , U_OPT_HTTP_URL = 2 , U_OPT_HTTP_PROXY = 3 , U_OPT_CHECK_SERVER_CERTIFICATE = 5 , U_OPT_CHECK_SERVER_CERTIFICATE_FLAG = 6 , U_OPT_CHECK_PROXY_CERTIFICATE = 7 , U_OPT_CHECK_PROXY_CERTIFICATE_FLAG = 8 , U_OPT_FOLLOW_REDIRECT = 9 , U_OPT_CA_PATH = 10 , U_OPT_TIMEOUT = 11 , U_OPT_AUTH_BASIC_USER = 12 , U_OPT_AUTH_BASIC_PASSWORD = 13 , U_OPT_URL_PARAMETER = 14 , U_OPT_HEADER_PARAMETER = 15 , U_OPT_COOKIE_PARAMETER = 16 , U_OPT_POST_BODY_PARAMETER = 17 , U_OPT_URL_PARAMETER_REMOVE = 18 , U_OPT_HEADER_PARAMETER_REMOVE = 19 , U_OPT_COOKIE_PARAMETER_REMOVE = 20 , U_OPT_POST_BODY_PARAMETER_REMOVE = 21 , U_OPT_BINARY_BODY = 22 , U_OPT_STRING_BODY = 23 , U_OPT_JSON_BODY = 24 , U_OPT_CLIENT_CERT_FILE = 25 , U_OPT_CLIENT_KEY_FILE = 26 , U_OPT_CLIENT_KEY_PASSWORD = 27 , U_OPT_STATUS = 28 , U_OPT_AUTH_REALM = 29 , U_OPT_SHARED_DATA = 30 , U_OPT_HTTP_URL_APPEND = 31 }

## Detailed Description

Angharad libraries To disable all yder log messages, this flag must be enabled

## Macro Definition Documentation

## ◆ ULFIUS_STREAM_BLOCK_SIZE_DEFAULT

#define ULFIUS_STREAM_BLOCK_SIZE_DEFAULT 1024

## ◆ U_STREAM_END

#define U_STREAM_END MHD_CONTENT_READER_END_OF_STREAM

## ◆ U_STREAM_ERROR

#define U_STREAM_ERROR MHD_CONTENT_READER_END_WITH_ERROR

## ◆ U_STREAM_SIZE_UNKNOWN

#define U_STREAM_SIZE_UNKNOWN MHD_SIZE_UNKNOWN

## ◆ U_STREAM_SIZE_UNKOWN

#define U_STREAM_SIZE_UNKOWN U_STREAM_SIZE_UNKNOWN

## ◆ U_OK

#define U_OK 0

No error.

## ◆ U_ERROR

#define U_ERROR 1

Error.

## ◆ U_ERROR_MEMORY

#define U_ERROR_MEMORY 2

Error in memory allocation.

## ◆ U_ERROR_PARAMS

#define U_ERROR_PARAMS 3

Error in input parameters.

## ◆ U_ERROR_LIBMHD

#define U_ERROR_LIBMHD 4

Error in libmicrohttpd execution.

## ◆ U_ERROR_LIBCURL

#define U_ERROR_LIBCURL 5

Error in libcurl execution.

## ◆ U_ERROR_NOT_FOUND

#define U_ERROR_NOT_FOUND 6

Something was not found.

## ◆ U_ERROR_DISCONNECTED

#define U_ERROR_DISCONNECTED 7

Connection closed.

## ◆ U_CALLBACK_CONTINUE

#define U_CALLBACK_CONTINUE 0

Callback exited with success, continue to next callback.

## ◆ U_CALLBACK_IGNORE

#define U_CALLBACK_IGNORE 1

Callback decided to be ignored, request.callback_position will not be incremented, continue to next callback.

## ◆ U_CALLBACK_COMPLETE

#define U_CALLBACK_COMPLETE 2

Callback exited with success, exit callback list.

## ◆ U_CALLBACK_UNAUTHORIZED

#define U_CALLBACK_UNAUTHORIZED 3

Request is unauthorized, exit callback list and return status 401.

## ◆ U_CALLBACK_ERROR

#define U_CALLBACK_ERROR 4

Error during request process, exit callback list and return status 500.

## ◆ U_COOKIE_SAME_SITE_NONE

#define U_COOKIE_SAME_SITE_NONE 0

Set same_site cookie property to 0.

## ◆ U_COOKIE_SAME_SITE_STRICT

#define U_COOKIE_SAME_SITE_STRICT 1

Set same_site cookie property to strict.

## ◆ U_COOKIE_SAME_SITE_LAX

#define U_COOKIE_SAME_SITE_LAX 2

Set same_site cookie property to lax.

## ◆ U_USE_IPV4

#define U_USE_IPV4 0x0001

Use instance in IPV4 mode only.

## ◆ U_USE_IPV6

#define U_USE_IPV6 0x0010

Use instance in IPV6 mode only.

## ◆ U_USE_ALL

#define U_USE_ALL (U_USE_IPV4|U_USE_IPV6)

Use instance in both IPV4 and IPV6 mode.

## ◆ U_SSL_VERIFY_PEER

#define U_SSL_VERIFY_PEER 0x0001

Verify TLS session with peers.

## ◆ U_SSL_VERIFY_HOSTNAME

#define U_SSL_VERIFY_HOSTNAME 0x0010

Verify TLS session with hostname.

## Enumeration Type Documentation

## ◆ u_option

enum u_option

Options available to set or get properties using ulfius_set_request_properties or ulfius_set_request_properties

Enumerator
U_OPT_NONE | Empty option to complete a ulfius_set_request_properties or ulfius_set_request_properties.
U_OPT_HTTP_VERB | http method (GET, POST, PUT, DELETE, etc.), expected option value type: const char *
U_OPT_HTTP_URL | full url used to call this callback function or full url to call when used in a ulfius_send_http_request, expected option value type: const char *
U_OPT_HTTP_PROXY | proxy address to use for outgoing connections, used by ulfius_send_http_request, expected option value type: const char *
U_OPT_CHECK_SERVER_CERTIFICATE | check server certificate and hostname, default true, used by ulfius_send_http_request, expected option value type: int
U_OPT_CHECK_SERVER_CERTIFICATE_FLAG | check certificate peer and or server hostname if check_server_certificate is enabled, values available are U_SSL_VERIFY_PEER, U_SSL_VERIFY_HOSTNAME or both, default value is both (U_SSL_VERIFY_PEER|U_SSL_VERIFY_HOSTNAME), used by ulfius_send_http_request, expected option value type: int
U_OPT_CHECK_PROXY_CERTIFICATE | check proxy certificate and hostname, default true, used by ulfius_send_http_request, requires libcurl >= 7.52, expected option value type: int
U_OPT_CHECK_PROXY_CERTIFICATE_FLAG | check certificate peer and or proxy hostname if check_proxy_certificate is enabled, values available are U_SSL_VERIFY_PEER, U_SSL_VERIFY_HOSTNAME or both, default value is both (U_SSL_VERIFY_PEER|U_SSL_VERIFY_HOSTNAME), used by ulfius_send_http_request, requires libcurl >= 7.52, expected option value type: int
U_OPT_FOLLOW_REDIRECT | follow url redirections, used by ulfius_send_http_request, expected option value type: int
U_OPT_CA_PATH | specify a path to CA certificates instead of system path, used by ulfius_send_http_request, expected option value type: const char *
U_OPT_TIMEOUT | connection timeout used by ulfius_send_http_request, default is 0 or Timeout in seconds to close the connection because of inactivity between the client and the server, expected option value type: unsigned long
U_OPT_AUTH_BASIC_USER | basic authentication username, expected option value type: const char *
U_OPT_AUTH_BASIC_PASSWORD | basic authentication password, expected option value type: const char *
U_OPT_URL_PARAMETER | Add to the map containing the url variables, both from the route and the ?key=value variables, expected option value type: const char *, const char *.
U_OPT_HEADER_PARAMETER | Add to the map containing the header variables, expected option value type: const char *, const char *.
U_OPT_COOKIE_PARAMETER | Add to the map containing the cookie variables, expected option value type: const char *, const char *.
U_OPT_POST_BODY_PARAMETER | Add to the map containing the post body variables (if available), expected option value type: const char *, const char *.
U_OPT_URL_PARAMETER_REMOVE | Remove from the map containing the url variables, both from the route and the ?key=value variables, expected option value type: const char *.
U_OPT_HEADER_PARAMETER_REMOVE | Remove from map containing the header variables, expected option value type: const char *.
U_OPT_COOKIE_PARAMETER_REMOVE | Remove from map containing the cookie variables, expected option value type: const char *.
U_OPT_POST_BODY_PARAMETER_REMOVE | Remove from map containing the post body variables (if available), expected option value type: const char *.
U_OPT_BINARY_BODY | Set a raw body to the request or the reponse, expected option value type: const char *, size_t.
U_OPT_STRING_BODY | Set a char * body to the request or the reponse, expected option value type: const char *.
U_OPT_JSON_BODY | Set a stringified json_t * body to the request or the reponse, expected option value type: json_t *.
U_OPT_CLIENT_CERT_FILE | path to client certificate file for sending http requests with certificate authentication, available only if GnuTLS support is enabled, expected option value type: const char *
U_OPT_CLIENT_KEY_FILE | path to client key file for sending http requests with certificate authentication, available only if GnuTLS support is enabled, expected option value type: const char *
U_OPT_CLIENT_KEY_PASSWORD | password to unlock client key file, available only if GnuTLS support is enabled, expected option value type: const char *
U_OPT_STATUS | HTTP response status code (200, 404, 500, etc), expected option value type: long.
U_OPT_AUTH_REALM | realm to send to the client response on authenticationb failed, expected option value type: const char *
U_OPT_SHARED_DATA | any data shared between callback functions, must be allocated and freed by the callback functions, expected option value type: void *
U_OPT_HTTP_URL_APPEND | append char * value to the current url, expected option value type: const char *