1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192 |
- # *-* mode: rec -*-
- #
- # response option registry
- #
- %rec: R_Options
- # recutils supports only signed 32 bit values
- %typedef: enum_value range 1 0x7FFFFFFF
- %key: Name
- %singular: Value
- %type: Value enum_value
- %auto: Value
- %mandatory: Value
- %mandatory: Comment
- %allowed: Type Argument1 Description1 Member1 Argument2 Description2 Member2 Argument3 Description3 Member3
- %type: Name,Type,Argument1,Member1,Argument2,Member2,Argument3,Member3 line
- %unique: Type Value Argument1 Description1 Member1 Argument2 Description2 Member2 Argument3 Description3 Member3
- # General properties
- Name: REUSABLE
- Value: 20
- Type: enum MHD_Bool
- Comment: Make the response object re-usable.
- + The response will not be consumed by MHD_action_from_response() and must be destroyed by MHD_response_destroy().
- + Useful if the same response is often used to reply.
- # Content control
- Name: HEAD_ONLY_RESPONSE
- Value: 40
- Type: enum MHD_Bool
- Comment: Enable special processing of the response as body-less (with undefined body size). No automatic "Content-Length" or "Transfer-Encoding: chunked" headers are added when the response is used with #MHD_HTTP_STATUS_NOT_MODIFIED code or to respond to HEAD request.
- + The flag also allow to set arbitrary "Content-Length" by #MHD_response_add_header() function.
- + This flag value can be used only with responses created without body (zero-size body).
- + Responses with this flag enabled cannot be used in situations where reply body must be sent to the client.
- + This flag is primarily intended to be used when automatic "Content-Length" header is undesirable in response to HEAD requests.
- Name: CHUNKED_ENC
- Value: 41
- Type: enum MHD_Bool
- Comment: Force use of chunked encoding even if the response content size is known.
- + Ignored when the reply cannot have body/content.
- # Connection control
- Name: CONN_CLOSE
- Value: 60
- Type: enum MHD_Bool
- Comment: Force close connection after sending the response, prevents keep-alive connections and adds "Connection: close" header.
- # Compatibility settings
- Name: HTTP_1_0_COMPATIBLE_STRICT
- Value: 80
- Type: enum MHD_Bool
- Comment: Only respond in conservative (dumb) HTTP/1.0-compatible mode.
- + Response still use HTTP/1.1 version in header, but always close the connection after sending the response and do not use chunked encoding for the response.
- + You can also set the #MHD_R_O_HTTP_1_0_SERVER flag to force HTTP/1.0 version in the response.
- + Responses are still compatible with HTTP/1.1.
- + This option can be used to communicate with some broken client, which does not implement HTTP/1.1 features, but advertises HTTP/1.1 support.
- Name: HTTP_1_0_SERVER
- Value: 81
- Type: enum MHD_Bool
- Comment: Only respond in HTTP/1.0-mode.
- + Contrary to the #MHD_R_O_HTTP_1_0_COMPATIBLE_STRICT flag, the response's HTTP version will always be set to 1.0 and keep-alive connections will be used if explicitly requested by the client.
- + The "Connection:" header will be added for both "close" and "keep-alive" connections.
- + Chunked encoding will not be used for the response.
- + Due to backward compatibility, responses still can be used with HTTP/1.1 clients.
- + This option can be used to emulate HTTP/1.0 server (for response part only as chunked encoding in requests (if any) is processed by MHD).
- + With this option HTTP/1.0 server is emulated (with support for "keep-alive" connections).
- # Violate HTTP and/or RFCs
- Name: INSANITY_HEADER_CONTENT_LENGTH
- Value: 100
- Type: enum MHD_Bool
- Comment: Disable sanity check preventing clients from manually setting the HTTP content length option.
- + Allow to set several "Content-Length" headers. These headers will be used even with replies without body.
- # Callbacks
- Name: termination_callback
- Value: 121
- Type: struct MHD_ResponeOptionValueTermCB
- Comment: Set a function to be called once MHD is finished with the request.
- Argument1: MHD_RequestTerminationCallback term_cb
- Description1: the function to call,
- + NULL to not use the callback
- Argument2: void *term_cb_cls
- Description2: the closure for the callback
|