# Module Netcgi1_compat.Netcgi_env

    module Netcgi_env: sig .. end

    type input_mode = [ `Standard ]

This is not used anywhere. Moreover this is protocol dependent.

    type input_state = [ `Received_body
           | `Received_header
           | `Receiving_body
           | `Receiving_header
           | `Start ]

This is not the business of the user. Rather than to document `#set_input_state` as such, we prefer not to allow the user to have access to it at the first place...

    type output_mode = [ `Standard ]

This is not used anywhere. Moreover "non-parsed header" is not supported by all connectors.

    type output_state = [ `End
           | `Sending_body
           | `Sending_header
           | `Sending_part_body
           | `Sending_part_header
           | `Sent_body
           | `Sent_header
           | `Sent_part_body
           | `Sent_part_header
           | `Start ]

This is not the business of the user. In the new API, it is handled transparently.

    type protocol_version = Nethttp.protocol_version

    type protocol_attribute = Nethttp.protocol_attribute

    type protocol = Nethttp.protocol

    type workaround = [ `Work_around_MSIE_Content_type_bug | `Work_around_backslash_bug ]

The `Work_around_` part has been dropped as it is clear at the spot of use.
`type ``cgi_config = {`

`` | `tmp_directory : `string`;`
`` | `tmp_prefix : `string`;`
`` | `permitted_http_methods : `string list`;` | `(*` | Now has type `[`GET | `HEAD | `POST | `DELETE | `PUT] list` for coherence with `Netcgi.cgi` `#request_method`. | `*)`
`` | `permitted_input_content_types : `string list`;`
`` | `input_content_length_limit : `int`;`
`` | `workarounds : `workaround list`;`

}
Now simply called `Netcgi.config`.

    val default_config : cgi_config

    val of_compat_config : cgi_config -> Netcgi.config

Portage: `of_compat_config c` transform the old configuration `c` into one suitable for the new interface.

    val to_compat_config : Netcgi.config -> cgi_config

Portage: `to_compat_config c` transform the new configuration `c` into one suitable for the old interface.

    class type cgi_environment = object .. end

    val to_compat_environment : Netcgi.cgi_environment -> cgi_environment

Portage: `to_compat_environment e` converts the new environment `e` to the old interface.

    val of_compat_environment : cgi_environment -> Netcgi.cgi_environment

Portage: `of_compat_environment e` converts the old environment `e` to the new interface.