SoupStatus

SoupStatus — HTTP (and libsoup) status codes

Functions

Types and Values

enum SoupStatus

Includes

#include <libsoup/soup.h>

Description

HTTP (and libsoup) status codes.

Functions

SOUP_STATUS_IS_INFORMATIONAL()

#define SOUP_STATUS_IS_INFORMATIONAL(status)   ((status) >= 100 && (status) < 200)

Tests if status is an Informational (1xx) response.

Parameters

status

an HTTP status code

 

Returns

TRUE or FALSE


SOUP_STATUS_IS_SUCCESSFUL()

#define SOUP_STATUS_IS_SUCCESSFUL(status)      ((status) >= 200 && (status) < 300)

Tests if status is a Successful (2xx) response.

Parameters

status

an HTTP status code

 

Returns

TRUE or FALSE


SOUP_STATUS_IS_REDIRECTION()

#define SOUP_STATUS_IS_REDIRECTION(status)     ((status) >= 300 && (status) < 400)

Tests if status is a Redirection (3xx) response.

Parameters

status

an HTTP status code

 

Returns

TRUE or FALSE


SOUP_STATUS_IS_CLIENT_ERROR()

#define SOUP_STATUS_IS_CLIENT_ERROR(status)    ((status) >= 400 && (status) < 500)

Tests if status is a Client Error (4xx) response.

Parameters

status

an HTTP status code

 

Returns

TRUE or FALSE


SOUP_STATUS_IS_SERVER_ERROR()

#define SOUP_STATUS_IS_SERVER_ERROR(status)    ((status) >= 500 && (status) < 600)

Tests if status is a Server Error (5xx) response.

Parameters

status

an HTTP status code

 

Returns

TRUE or FALSE


soup_status_get_phrase ()

const char *
soup_status_get_phrase (guint status_code);

Looks up the stock HTTP description of status_code .

There is no reason for you to ever use this function. If you wanted the textual description for the “status_code” of a given SoupMessage, you should just look at the message's “reason_phrase”. However, you should only do that for use in debugging messages; HTTP reason phrases are not localized, and are not generally very descriptive anyway, and so they should never be presented to the user directly. Instead, you should create you own error messages based on the status code, and on what you were trying to do.

Parameters

status_code

an HTTP status code

 

Returns

the (terse, English) description of status_code

Types and Values

enum SoupStatus

These represent the known HTTP status code values, plus various network and internal errors.

Note that no libsoup functions take or return this type directly; any function that works with status codes will accept unrecognized status codes as well.

Members

SOUP_STATUS_NONE

No status available. (Eg, the message has not been sent yet)

 

SOUP_STATUS_CONTINUE

100 Continue (HTTP)

 

SOUP_STATUS_SWITCHING_PROTOCOLS

101 Switching Protocols (HTTP)

 

SOUP_STATUS_PROCESSING

102 Processing (WebDAV)

 

SOUP_STATUS_OK

200 Success (HTTP). Also used by many lower-level soup routines to indicate success.

 

SOUP_STATUS_CREATED

201 Created (HTTP)

 

SOUP_STATUS_ACCEPTED

202 Accepted (HTTP)

 

SOUP_STATUS_NON_AUTHORITATIVE

203 Non-Authoritative Information (HTTP)

 

SOUP_STATUS_NO_CONTENT

204 No Content (HTTP)

 

SOUP_STATUS_RESET_CONTENT

205 Reset Content (HTTP)

 

SOUP_STATUS_PARTIAL_CONTENT

206 Partial Content (HTTP)

 

SOUP_STATUS_MULTI_STATUS

207 Multi-Status (WebDAV)

 

SOUP_STATUS_MULTIPLE_CHOICES

300 Multiple Choices (HTTP)

 

SOUP_STATUS_MOVED_PERMANENTLY

301 Moved Permanently (HTTP)

 

SOUP_STATUS_FOUND

302 Found (HTTP)

 

SOUP_STATUS_MOVED_TEMPORARILY

302 Moved Temporarily (old name, RFC 2068)

 

SOUP_STATUS_SEE_OTHER

303 See Other (HTTP)

 

SOUP_STATUS_NOT_MODIFIED

304 Not Modified (HTTP)

 

SOUP_STATUS_USE_PROXY

305 Use Proxy (HTTP)

 

SOUP_STATUS_NOT_APPEARING_IN_THIS_PROTOCOL

306 [Unused] (HTTP)

 

SOUP_STATUS_TEMPORARY_REDIRECT

307 Temporary Redirect (HTTP)

 

SOUP_STATUS_PERMANENT_REDIRECT

308 Permanent Redirect (HTTP)

 

SOUP_STATUS_BAD_REQUEST

400 Bad Request (HTTP)

 

SOUP_STATUS_UNAUTHORIZED

401 Unauthorized (HTTP)

 

SOUP_STATUS_PAYMENT_REQUIRED

402 Payment Required (HTTP)

 

SOUP_STATUS_FORBIDDEN

403 Forbidden (HTTP)

 

SOUP_STATUS_NOT_FOUND

404 Not Found (HTTP)

 

SOUP_STATUS_METHOD_NOT_ALLOWED

405 Method Not Allowed (HTTP)

 

SOUP_STATUS_NOT_ACCEPTABLE

406 Not Acceptable (HTTP)

 

SOUP_STATUS_PROXY_AUTHENTICATION_REQUIRED

407 Proxy Authentication Required (HTTP)

 

SOUP_STATUS_PROXY_UNAUTHORIZED

shorter alias for SOUP_STATUS_PROXY_AUTHENTICATION_REQUIRED

 

SOUP_STATUS_REQUEST_TIMEOUT

408 Request Timeout (HTTP)

 

SOUP_STATUS_CONFLICT

409 Conflict (HTTP)

 

SOUP_STATUS_GONE

410 Gone (HTTP)

 

SOUP_STATUS_LENGTH_REQUIRED

411 Length Required (HTTP)

 

SOUP_STATUS_PRECONDITION_FAILED

412 Precondition Failed (HTTP)

 

SOUP_STATUS_REQUEST_ENTITY_TOO_LARGE

413 Request Entity Too Large (HTTP)

 

SOUP_STATUS_REQUEST_URI_TOO_LONG

414 Request-URI Too Long (HTTP)

 

SOUP_STATUS_UNSUPPORTED_MEDIA_TYPE

415 Unsupported Media Type (HTTP)

 

SOUP_STATUS_REQUESTED_RANGE_NOT_SATISFIABLE

416 Requested Range Not Satisfiable (HTTP)

 

SOUP_STATUS_INVALID_RANGE

shorter alias for SOUP_STATUS_REQUESTED_RANGE_NOT_SATISFIABLE

 

SOUP_STATUS_EXPECTATION_FAILED

417 Expectation Failed (HTTP)

 

SOUP_STATUS_MISDIRECTED_REQUEST

421 Misdirected Request

 

SOUP_STATUS_UNPROCESSABLE_ENTITY

422 Unprocessable Entity (WebDAV)

 

SOUP_STATUS_LOCKED

423 Locked (WebDAV)

 

SOUP_STATUS_FAILED_DEPENDENCY

424 Failed Dependency (WebDAV)

 

SOUP_STATUS_INTERNAL_SERVER_ERROR

500 Internal Server Error (HTTP)

 

SOUP_STATUS_NOT_IMPLEMENTED

501 Not Implemented (HTTP)

 

SOUP_STATUS_BAD_GATEWAY

502 Bad Gateway (HTTP)

 

SOUP_STATUS_SERVICE_UNAVAILABLE

503 Service Unavailable (HTTP)

 

SOUP_STATUS_GATEWAY_TIMEOUT

504 Gateway Timeout (HTTP)

 

SOUP_STATUS_HTTP_VERSION_NOT_SUPPORTED

505 HTTP Version Not Supported (HTTP)

 

SOUP_STATUS_INSUFFICIENT_STORAGE

507 Insufficient Storage (WebDAV)

 

SOUP_STATUS_NOT_EXTENDED

510 Not Extended (RFC 2774)