xref: /openbmc/bmcweb/meson.options (revision 1f1fb4f5)
1c5bcf35fSEd Tanous# BMCWEB_KVM
28dc3ddf6SEd Tanousoption(
38dc3ddf6SEd Tanous    'kvm',
48dc3ddf6SEd Tanous    type: 'feature',
58dc3ddf6SEd Tanous    value: 'enabled',
68dc3ddf6SEd Tanous    description: '''Enable the KVM host video WebSocket.  Path is /kvm/0.
78dc3ddf6SEd Tanous                    Video is from the BMCs /dev/videodevice.''',
88dc3ddf6SEd Tanous)
98dc3ddf6SEd Tanous
10c5bcf35fSEd Tanous# BMCWEB_TESTS
118dc3ddf6SEd Tanousoption(
128dc3ddf6SEd Tanous    'tests',
138dc3ddf6SEd Tanous    type: 'feature',
148dc3ddf6SEd Tanous    value: 'enabled',
158dc3ddf6SEd Tanous    description: 'Enable Unit tests for bmcweb',
168dc3ddf6SEd Tanous)
178dc3ddf6SEd Tanous
18c5bcf35fSEd Tanous# BMCWEB_VM_WEBSOCKET
198dc3ddf6SEd Tanousoption(
208dc3ddf6SEd Tanous    'vm-websocket',
218dc3ddf6SEd Tanous    type: 'feature',
228dc3ddf6SEd Tanous    value: 'enabled',
238dc3ddf6SEd Tanous    description: '''Enable the Virtual Media WebSocket. Path is /vm/0/0 and /nbd/<id> to
248dc3ddf6SEd Tanous                    open the websocket. See
258dc3ddf6SEd Tanous                    https://github.com/openbmc/jsnbd/blob/master/README.''',
268dc3ddf6SEd Tanous)
278dc3ddf6SEd Tanous
28c5bcf35fSEd Tanous# BMCWEB_NBDPROXY
298dc3ddf6SEd Tanous# if you use this option and are seeing this comment, please comment here:
308dc3ddf6SEd Tanous# https://github.com/openbmc/bmcweb/issues/188 and put forward your intentions
318dc3ddf6SEd Tanous# for this code.  At this point, no daemon has been upstreamed that implements
328dc3ddf6SEd Tanous# this interface, so for the moment this appears to be dead code;  In leiu of
338dc3ddf6SEd Tanous# removing it, it has been disabled to try to give those that use it the
348dc3ddf6SEd Tanous# opportunity to upstream their backend implementation
358dc3ddf6SEd Tanous#option(
368dc3ddf6SEd Tanous#    'vm-nbdproxy',
378dc3ddf6SEd Tanous#    type: 'feature',
388dc3ddf6SEd Tanous#    value: 'disabled',
398dc3ddf6SEd Tanous#    description: 'Enable the Virtual Media WebSocket.'
408dc3ddf6SEd Tanous#)
418dc3ddf6SEd Tanous
42c5bcf35fSEd Tanous# BMCWEB_REST
438dc3ddf6SEd Tanousoption(
448dc3ddf6SEd Tanous    'rest',
458dc3ddf6SEd Tanous    type: 'feature',
468dc3ddf6SEd Tanous    value: 'disabled',
478dc3ddf6SEd Tanous    description: '''Enable Phosphor REST (D-Bus) APIs. Paths directly map
488dc3ddf6SEd Tanous                    Phosphor D-Bus object paths, for example,
498dc3ddf6SEd Tanous                    /xyz/openbmc_project/logging/entry/enumerate. See
508dc3ddf6SEd Tanous                    https://github.com/openbmc/docs/blob/master/rest-api.md.''',
518dc3ddf6SEd Tanous)
528dc3ddf6SEd Tanous
53c5bcf35fSEd Tanous# BMCWEB_REDFISH
548dc3ddf6SEd Tanousoption(
558dc3ddf6SEd Tanous    'redfish',
568dc3ddf6SEd Tanous    type: 'feature',
578dc3ddf6SEd Tanous    value: 'enabled',
588dc3ddf6SEd Tanous    description: '''Enable Redfish APIs.  Paths are under /redfish/v1/. See
598dc3ddf6SEd Tanous                    https://github.com/openbmc/bmcweb/blob/master/DEVELOPING.md#redfish.''',
608dc3ddf6SEd Tanous)
618dc3ddf6SEd Tanous
62c5bcf35fSEd Tanous# BMCWEB_HOST_SERIAL_SOCKET
638dc3ddf6SEd Tanousoption(
648dc3ddf6SEd Tanous    'host-serial-socket',
658dc3ddf6SEd Tanous    type: 'feature',
668dc3ddf6SEd Tanous    value: 'enabled',
678dc3ddf6SEd Tanous    description: '''Enable host serial console WebSocket. Path is /console0.
688dc3ddf6SEd Tanous                    See https://github.com/openbmc/docs/blob/master/console.md.''',
698dc3ddf6SEd Tanous)
708dc3ddf6SEd Tanous
71c5bcf35fSEd Tanous# BMCWEB_STATIC_HOSTING
728dc3ddf6SEd Tanousoption(
738dc3ddf6SEd Tanous    'static-hosting',
748dc3ddf6SEd Tanous    type: 'feature',
758dc3ddf6SEd Tanous    value: 'enabled',
768dc3ddf6SEd Tanous    description: '''Enable serving files from the /usr/share/www directory
778dc3ddf6SEd Tanous                    as paths under /.''',
788dc3ddf6SEd Tanous)
798dc3ddf6SEd Tanous
80c5bcf35fSEd Tanous# BMCWEB_REDFISH_BMC_JOURNAL
818dc3ddf6SEd Tanousoption(
828dc3ddf6SEd Tanous    'redfish-bmc-journal',
838dc3ddf6SEd Tanous    type: 'feature',
848dc3ddf6SEd Tanous    value: 'enabled',
858dc3ddf6SEd Tanous    description: '''Enable BMC journal access through Redfish. Paths are under
868dc3ddf6SEd Tanous                    /redfish/v1/Managers/bmc/LogServices/Journal.''',
878dc3ddf6SEd Tanous)
888dc3ddf6SEd Tanous
89c5bcf35fSEd Tanous# BMCWEB_REDFISH_CPU_LOG
908dc3ddf6SEd Tanousoption(
918dc3ddf6SEd Tanous    'redfish-cpu-log',
928dc3ddf6SEd Tanous    type: 'feature',
938dc3ddf6SEd Tanous    value: 'disabled',
948dc3ddf6SEd Tanous    description: '''Enable CPU log service transactions through Redfish. Paths
958dc3ddf6SEd Tanous                    are under /redfish/v1/Systems/system/LogServices/Crashdump'.''',
968dc3ddf6SEd Tanous)
978dc3ddf6SEd Tanous
98c5bcf35fSEd Tanous# BMCWEB_REDFISH_DUMP_LOG
998dc3ddf6SEd Tanousoption(
1008dc3ddf6SEd Tanous    'redfish-dump-log',
1018dc3ddf6SEd Tanous    type: 'feature',
1028dc3ddf6SEd Tanous    value: 'disabled',
1038dc3ddf6SEd Tanous    description: '''Enable Dump log service transactions through Redfish. Paths
1048dc3ddf6SEd Tanous                   are under /redfish/v1/Systems/system/LogServices/Dump
1058dc3ddf6SEd Tanous                   and /redfish/v1/Managers/bmc/LogServices/Dump''',
1068dc3ddf6SEd Tanous)
1078dc3ddf6SEd Tanous
108c5bcf35fSEd Tanous# BMCWEB_REDFISH_DBUS_LOG
1098dc3ddf6SEd Tanousoption(
1108dc3ddf6SEd Tanous    'redfish-dbus-log',
1118dc3ddf6SEd Tanous    type: 'feature',
1128dc3ddf6SEd Tanous    value: 'disabled',
1138dc3ddf6SEd Tanous    description: '''Enable DBUS log service transactions through Redfish. Paths
1148dc3ddf6SEd Tanous                    are under
1158dc3ddf6SEd Tanous                    /redfish/v1/Systems/system/LogServices/EventLog/Entries''',
1168dc3ddf6SEd Tanous)
1178dc3ddf6SEd Tanous
118c5bcf35fSEd Tanous# BMCWEB_REDFISH_HOST_LOGGER
1198dc3ddf6SEd Tanousoption(
1208dc3ddf6SEd Tanous    'redfish-host-logger',
1218dc3ddf6SEd Tanous    type: 'feature',
1228dc3ddf6SEd Tanous    value: 'enabled',
1238dc3ddf6SEd Tanous    description: '''Enable host log service transactions based on
1248dc3ddf6SEd Tanous                    phosphor-hostlogger through Redfish.  Paths are under
1258dc3ddf6SEd Tanous                    /redfish/v1/Systems/system/LogServices/HostLogger''',
1268dc3ddf6SEd Tanous)
1278dc3ddf6SEd Tanous
128c5bcf35fSEd Tanous# BMCWEB_REDFISH_PROVISIONING_FEATURE
1298dc3ddf6SEd Tanousoption(
1308dc3ddf6SEd Tanous    'redfish-provisioning-feature',
1318dc3ddf6SEd Tanous    type: 'feature',
1328dc3ddf6SEd Tanous    value: 'disabled',
1338dc3ddf6SEd Tanous    description: '''Enable provisioning feature support in redfish. Paths are
1348dc3ddf6SEd Tanous                    under /redfish/v1/Systems/system/''',
1358dc3ddf6SEd Tanous)
1368dc3ddf6SEd Tanous
137c5bcf35fSEd Tanous# BMCWEB_REDFISH_MANAGER_URI_NAME
1388dc3ddf6SEd Tanousoption(
1398dc3ddf6SEd Tanous    'redfish-manager-uri-name',
1408dc3ddf6SEd Tanous    type: 'string',
1418dc3ddf6SEd Tanous    value: 'bmc',
1428dc3ddf6SEd Tanous    description: '''The static Redfish Manager ID representing the BMC
1438dc3ddf6SEd Tanous                    instance. This option will appear in the Redfish tree at
1448dc3ddf6SEd Tanous                    /redfish/v1/Managers/<redfish-manager-uri-name>.
1458dc3ddf6SEd Tanous                    Defaults to \'bmc\' which resolves to
1468dc3ddf6SEd Tanous                    /redfish/v1/Managers/bmc''',
1478dc3ddf6SEd Tanous)
1488dc3ddf6SEd Tanous
149c5bcf35fSEd Tanous# BMCWEB_REDFISH_SYSTEM_URI_NAME
1508dc3ddf6SEd Tanousoption(
1518dc3ddf6SEd Tanous    'redfish-system-uri-name',
1528dc3ddf6SEd Tanous    type: 'string',
1538dc3ddf6SEd Tanous    value: 'system',
1548dc3ddf6SEd Tanous    description: '''The static Redfish System ID representing the host
1558dc3ddf6SEd Tanous                    instance. This option will appear in the Redfish tree at
1568dc3ddf6SEd Tanous                    /redfish/v1/Systems/<redfish-system-uri-name>.
1578dc3ddf6SEd Tanous                    Defaults to \'system\' which resolves to
1588dc3ddf6SEd Tanous                    /redfish/v1/Systems/system''',
1598dc3ddf6SEd Tanous)
1608dc3ddf6SEd Tanous
161c5bcf35fSEd Tanous# BMCWEB_LOGGING_LEVEL
1628dc3ddf6SEd Tanousoption(
1638dc3ddf6SEd Tanous    'bmcweb-logging',
1648dc3ddf6SEd Tanous    type: 'combo',
16592e26be5SEd Tanous    choices: [
16692e26be5SEd Tanous        'disabled',
16792e26be5SEd Tanous        'enabled',
16892e26be5SEd Tanous        'debug',
16992e26be5SEd Tanous        'info',
17092e26be5SEd Tanous        'warning',
17192e26be5SEd Tanous        'error',
17292e26be5SEd Tanous        'critical',
17392e26be5SEd Tanous    ],
1748dc3ddf6SEd Tanous    value: 'error',
1758dc3ddf6SEd Tanous    description: '''Enable output the extended logging level.
1768dc3ddf6SEd Tanous                    - disabled: disable bmcweb log traces.
1778dc3ddf6SEd Tanous                    - enabled: treated as 'debug'
1788dc3ddf6SEd Tanous                    - For the other logging level option, see DEVELOPING.md.''',
1798dc3ddf6SEd Tanous)
1808dc3ddf6SEd Tanous
181c5bcf35fSEd Tanous# BMCWEB_BASIC_AUTH
1828dc3ddf6SEd Tanousoption(
1838dc3ddf6SEd Tanous    'basic-auth',
1848dc3ddf6SEd Tanous    type: 'feature',
1858dc3ddf6SEd Tanous    value: 'enabled',
1868dc3ddf6SEd Tanous    description: 'Enable basic authentication',
1878dc3ddf6SEd Tanous)
1888dc3ddf6SEd Tanous
189c5bcf35fSEd Tanous# BMCWEB_SESSION_AUTH
1908dc3ddf6SEd Tanousoption(
1918dc3ddf6SEd Tanous    'session-auth',
1928dc3ddf6SEd Tanous    type: 'feature',
1938dc3ddf6SEd Tanous    value: 'enabled',
1948dc3ddf6SEd Tanous    description: 'Enable session authentication',
1958dc3ddf6SEd Tanous)
1968dc3ddf6SEd Tanous
197c5bcf35fSEd Tanous# BMCWEB_XTOKEN_AUTH
1988dc3ddf6SEd Tanousoption(
1998dc3ddf6SEd Tanous    'xtoken-auth',
2008dc3ddf6SEd Tanous    type: 'feature',
2018dc3ddf6SEd Tanous    value: 'enabled',
2028dc3ddf6SEd Tanous    description: 'Enable xtoken authentication',
2038dc3ddf6SEd Tanous)
2048dc3ddf6SEd Tanous
205c5bcf35fSEd Tanous# BMCWEB_COOKIE_AUTH
2068dc3ddf6SEd Tanousoption(
2078dc3ddf6SEd Tanous    'cookie-auth',
2088dc3ddf6SEd Tanous    type: 'feature',
2098dc3ddf6SEd Tanous    value: 'enabled',
2108dc3ddf6SEd Tanous    description: 'Enable cookie authentication',
2118dc3ddf6SEd Tanous)
2128dc3ddf6SEd Tanous
213c5bcf35fSEd Tanous# BMCWEB_MUTUAL_TLS_AUTH
2148dc3ddf6SEd Tanousoption(
2158dc3ddf6SEd Tanous    'mutual-tls-auth',
2168dc3ddf6SEd Tanous    type: 'feature',
2178dc3ddf6SEd Tanous    value: 'enabled',
2188dc3ddf6SEd Tanous    description: '''Enables authenticating users through TLS client
2198dc3ddf6SEd Tanous                    certificates. The insecure-disable-ssl must be disabled for
2208dc3ddf6SEd Tanous                    this option to take effect.''',
2218dc3ddf6SEd Tanous)
2228dc3ddf6SEd Tanous
223c5bcf35fSEd Tanous# BMCWEB_MUTUAL_TLS_COMMON_NAME_PARSING_DEFAULT
2248dc3ddf6SEd Tanousoption(
2253ce3688aSEd Tanous    'mutual-tls-common-name-parsing-default',
2268dc3ddf6SEd Tanous    type: 'combo',
2273ce3688aSEd Tanous    choices: ['CommonName', 'Whole', 'UserPrincipalName', 'Meta'],
2283ce3688aSEd Tanous    description: '''
2293ce3688aSEd Tanous        Parses the Subject CN in the format used by
2303ce3688aSEd Tanous                                Meta Inc (see mutual_tls_meta.cpp for details)
2313ce3688aSEd Tanous                    ''',
2323ce3688aSEd Tanous)
2333ce3688aSEd Tanous
234c5bcf35fSEd Tanous# BMCWEB_META_TLS_COMMON_NAME_PARSING
2353ce3688aSEd Tanousoption(
2363ce3688aSEd Tanous    'meta-tls-common-name-parsing',
2373ce3688aSEd Tanous    type: 'feature',
2383ce3688aSEd Tanous    description: '''
2393ce3688aSEd Tanous        Allows parsing the Subject CN TLS certificate in the format used by
2408dc3ddf6SEd Tanous                                Meta Inc (see mutual_tls_meta.cpp for details)
2418dc3ddf6SEd Tanous    ''',
2428dc3ddf6SEd Tanous)
2438dc3ddf6SEd Tanous
244c5bcf35fSEd Tanous# BMCWEB_IBM_MANAGEMENT_CONSOLE
2458dc3ddf6SEd Tanousoption(
2468dc3ddf6SEd Tanous    'ibm-management-console',
2478dc3ddf6SEd Tanous    type: 'feature',
2488dc3ddf6SEd Tanous    value: 'disabled',
2498dc3ddf6SEd Tanous    description: '''Enable the IBM management console specific functionality.
2508dc3ddf6SEd Tanous                    Paths are under /ibm/v1/''',
2518dc3ddf6SEd Tanous)
2528dc3ddf6SEd Tanous
253c5bcf35fSEd Tanous# BMCWEB_GOOGLE_API
2548dc3ddf6SEd Tanousoption(
2558dc3ddf6SEd Tanous    'google-api',
2568dc3ddf6SEd Tanous    type: 'feature',
2578dc3ddf6SEd Tanous    value: 'disabled',
2588dc3ddf6SEd Tanous    description: '''Enable the Google specific functionality. Paths are under
2598dc3ddf6SEd Tanous                    /google/v1/''',
2608dc3ddf6SEd Tanous)
2618dc3ddf6SEd Tanous
262c5bcf35fSEd Tanous# BMCWEB_HTTP_BODY_LIMIT
2638dc3ddf6SEd Tanousoption(
2648dc3ddf6SEd Tanous    'http-body-limit',
2658dc3ddf6SEd Tanous    type: 'integer',
2668dc3ddf6SEd Tanous    min: 0,
2678dc3ddf6SEd Tanous    max: 512,
2688dc3ddf6SEd Tanous    value: 30,
2698dc3ddf6SEd Tanous    description: 'Specifies the http request body length limit',
2708dc3ddf6SEd Tanous)
2718dc3ddf6SEd Tanous
272c5bcf35fSEd Tanous# BMCWEB_REDFISH_NEW_POWERSUBSYSTEM_THERMALSUBSYSTEM
2738dc3ddf6SEd Tanousoption(
2748dc3ddf6SEd Tanous    'redfish-new-powersubsystem-thermalsubsystem',
2758dc3ddf6SEd Tanous    type: 'feature',
2768dc3ddf6SEd Tanous    value: 'enabled',
2778dc3ddf6SEd Tanous    description: '''Enable/disable the new PowerSubsystem, ThermalSubsystem,
2788dc3ddf6SEd Tanous                    and all children schemas. This includes displaying all
2798dc3ddf6SEd Tanous                    sensors in the SensorCollection.''',
2808dc3ddf6SEd Tanous)
2818dc3ddf6SEd Tanous
282c5bcf35fSEd Tanous# BMCWEB_REDFISH_ALLOW_DEPRECATED_POWER_THERMAL
2838dc3ddf6SEd Tanousoption(
2848dc3ddf6SEd Tanous    'redfish-allow-deprecated-power-thermal',
2858dc3ddf6SEd Tanous    type: 'feature',
2868dc3ddf6SEd Tanous    value: 'enabled',
2878dc3ddf6SEd Tanous    description: '''Enable/disable the old Power / Thermal. The default
2888dc3ddf6SEd Tanous                    condition is allowing the old Power / Thermal. This
2898dc3ddf6SEd Tanous                    will be disabled by default June 2024. ''',
2908dc3ddf6SEd Tanous)
2918dc3ddf6SEd Tanous
292c5bcf35fSEd Tanous# BMCWEB_REDFISH_OEM_MANAGER_FAN_DATA
2938dc3ddf6SEd Tanousoption(
2948dc3ddf6SEd Tanous    'redfish-oem-manager-fan-data',
2958dc3ddf6SEd Tanous    type: 'feature',
2968dc3ddf6SEd Tanous    value: 'enabled',
2978dc3ddf6SEd Tanous    description: '''Enables Redfish OEM fan data on the manager resource.
2988dc3ddf6SEd Tanous                    This includes PID and Stepwise controller data. See
2991d19d872SMyung Bae                    OpenBMCManager schema for more detail.''',
3008dc3ddf6SEd Tanous)
3018dc3ddf6SEd Tanous
302c5bcf35fSEd Tanous# BMCWEB_REDFISH_UPDATESERVICE_USE_DBUS
3038dc3ddf6SEd Tanousoption(
3048dc3ddf6SEd Tanous    'redfish-updateservice-use-dbus',
3058dc3ddf6SEd Tanous    type: 'feature',
3068dc3ddf6SEd Tanous    value: 'disabled',
3078dc3ddf6SEd Tanous    description: '''Enables xyz.openbmc_project.Software.Update D-Bus interface
3088dc3ddf6SEd Tanous                    to propagate UpdateService requests to the corresponding
3098dc3ddf6SEd Tanous                    updater daemons instead of moving files to /tmp/images dir.
3108dc3ddf6SEd Tanous                    This option is temporary, should not be enabled on any
3118dc3ddf6SEd Tanous                    production systems. The code will be moved to the normal
3128dc3ddf6SEd Tanous                    code update flow and the option will be removed at the end
3138dc3ddf6SEd Tanous                    of Q3 2024.
3148dc3ddf6SEd Tanous                ''',
3158dc3ddf6SEd Tanous)
3168dc3ddf6SEd Tanous
317c5bcf35fSEd Tanous# BMCWEB_HTTPS_PORT
3188dc3ddf6SEd Tanousoption(
3198dc3ddf6SEd Tanous    'https_port',
3208dc3ddf6SEd Tanous    type: 'integer',
3218dc3ddf6SEd Tanous    min: 1,
3228dc3ddf6SEd Tanous    max: 65535,
3238dc3ddf6SEd Tanous    value: 443,
3248dc3ddf6SEd Tanous    description: 'HTTPS Port number.',
3258dc3ddf6SEd Tanous)
3268dc3ddf6SEd Tanous
327c5bcf35fSEd Tanous# BMCWEB_DNS_RESOLVER
3288dc3ddf6SEd Tanousoption(
3298dc3ddf6SEd Tanous    'dns-resolver',
3308dc3ddf6SEd Tanous    type: 'combo',
3318dc3ddf6SEd Tanous    choices: ['systemd-dbus', 'asio'],
3328dc3ddf6SEd Tanous    value: 'systemd-dbus',
3338dc3ddf6SEd Tanous    description: '''Sets which DNS resolver backend should be used.
3348dc3ddf6SEd Tanous    systemd-dbus uses the Systemd ResolveHostname on dbus, but requires dbus
3358dc3ddf6SEd Tanous    support.  asio relies on boost::asio::tcp::resolver, but cannot resolve
3368dc3ddf6SEd Tanous    names when boost threading is disabled.''',
3378dc3ddf6SEd Tanous)
3388dc3ddf6SEd Tanous
339c5bcf35fSEd Tanous# BMCWEB_REDFISH_AGGREGATION
3408dc3ddf6SEd Tanousoption(
3418dc3ddf6SEd Tanous    'redfish-aggregation',
3428dc3ddf6SEd Tanous    type: 'feature',
3438dc3ddf6SEd Tanous    value: 'disabled',
3448dc3ddf6SEd Tanous    description: 'Allows this BMC to aggregate resources from satellite BMCs',
3458dc3ddf6SEd Tanous)
3468dc3ddf6SEd Tanous
347c5bcf35fSEd Tanous# BMCWEB_HYPERVISOR_COMPUTER_SYSTEM
3488dc3ddf6SEd Tanousoption(
34968896206SGunnar Mills    'hypervisor-computer-system',
35068896206SGunnar Mills    type: 'feature',
35168896206SGunnar Mills    value: 'disabled',
35268896206SGunnar Mills    description: '''This puts a hypervisor computer system resource at
35368896206SGunnar Mills    /redfish/v1/Systems/hypervisor. This system resource has children
35468896206SGunnar Mills    resources such as EthernetInterfaces and ComputerSystem.Reset.''',
35568896206SGunnar Mills)
35668896206SGunnar Mills
357c5bcf35fSEd Tanous# BMCWEB_EXPERIMENTAL_REDFISH_MULTI_COMPUTER_SYSTEM
35868896206SGunnar Millsoption(
3598dc3ddf6SEd Tanous    'experimental-redfish-multi-computer-system',
3608dc3ddf6SEd Tanous    type: 'feature',
3618dc3ddf6SEd Tanous    value: 'disabled',
3628dc3ddf6SEd Tanous    description: '''This is a temporary option flag for staging the
3638dc3ddf6SEd Tanous    ComputerSystemCollection transition to multi-host.  It, as well as the code
364*1f1fb4f5SGunnar Mills    still beneath it will be removed on 3/1/2025.  Do not enable in a
3658dc3ddf6SEd Tanous    production environment, or where API stability is required.''',
3668dc3ddf6SEd Tanous)
3678dc3ddf6SEd Tanous
368c5bcf35fSEd Tanous# BMCWEB_EXPERIMENTAL_HTTP2
3698dc3ddf6SEd Tanousoption(
3708dc3ddf6SEd Tanous    'experimental-http2',
3718dc3ddf6SEd Tanous    type: 'feature',
3728dc3ddf6SEd Tanous    value: 'disabled',
3738dc3ddf6SEd Tanous    description: '''Enable HTTP/2 protocol support using nghttp2.  Do not rely
3748dc3ddf6SEd Tanous                    on this option for any production systems.  It may have
3758dc3ddf6SEd Tanous                    behavior changes or be removed at any time.''',
3768dc3ddf6SEd Tanous)
3778dc3ddf6SEd Tanous
3788dc3ddf6SEd Tanous# Insecure options. Every option that starts with a `insecure` flag should
3798dc3ddf6SEd Tanous# not be enabled by default for any platform, unless the author fully comprehends
3808dc3ddf6SEd Tanous# the implications of doing so.In general, enabling these options will cause security
3818dc3ddf6SEd Tanous# problems of varying degrees
3828dc3ddf6SEd Tanous
383c5bcf35fSEd Tanous# BMCWEB_INSECURE_DISABLE_CSRF
3848dc3ddf6SEd Tanousoption(
3858dc3ddf6SEd Tanous    'insecure-disable-csrf',
3868dc3ddf6SEd Tanous    type: 'feature',
3878dc3ddf6SEd Tanous    value: 'disabled',
3888dc3ddf6SEd Tanous    description: '''Disable CSRF prevention checks.Should be set to false for
3898dc3ddf6SEd Tanous                    production systems.''',
3908dc3ddf6SEd Tanous)
3918dc3ddf6SEd Tanous
392c5bcf35fSEd Tanous# BMCWEB_INSECURE_DISABLE_SSL
3938dc3ddf6SEd Tanousoption(
3948dc3ddf6SEd Tanous    'insecure-disable-ssl',
3958dc3ddf6SEd Tanous    type: 'feature',
3968dc3ddf6SEd Tanous    value: 'disabled',
3978dc3ddf6SEd Tanous    description: '''Disable SSL ports. Should be set to false for production
3988dc3ddf6SEd Tanous                    systems.''',
3998dc3ddf6SEd Tanous)
4008dc3ddf6SEd Tanous
401c5bcf35fSEd Tanous# BMCWEB_INSECURE_DISABLE_AUTH
4028dc3ddf6SEd Tanousoption(
4038dc3ddf6SEd Tanous    'insecure-disable-auth',
4048dc3ddf6SEd Tanous    type: 'feature',
4058dc3ddf6SEd Tanous    value: 'disabled',
4068dc3ddf6SEd Tanous    description: '''Disable authentication and authoriztion on all ports.
4078dc3ddf6SEd Tanous                    Should be set to false for production systems.''',
4088dc3ddf6SEd Tanous)
4098dc3ddf6SEd Tanous
410c5bcf35fSEd Tanous# BMCWEB_INSECURE_IGNORE_CONTENT_TYPE
4118dc3ddf6SEd Tanousoption(
4128dc3ddf6SEd Tanous    'insecure-ignore-content-type',
4138dc3ddf6SEd Tanous    type: 'feature',
4148dc3ddf6SEd Tanous    value: 'disabled',
4158dc3ddf6SEd Tanous    description: '''Allows parsing PUT/POST/PATCH content as JSON regardless
4168dc3ddf6SEd Tanous                    of the presence of the content-type header.  Enabling this
4178dc3ddf6SEd Tanous                    conflicts with the input parsing guidelines, but may be
4188dc3ddf6SEd Tanous                    required to support old clients that may not set the
4198dc3ddf6SEd Tanous                    Content-Type header on payloads.''',
4208dc3ddf6SEd Tanous)
4218dc3ddf6SEd Tanous
422c5bcf35fSEd Tanous# BMCWEB_INSECURE_PUSH_STYLE_NOTIFICATION
4238dc3ddf6SEd Tanousoption(
4248dc3ddf6SEd Tanous    'insecure-push-style-notification',
4258dc3ddf6SEd Tanous    type: 'feature',
4268dc3ddf6SEd Tanous    value: 'disabled',
4278dc3ddf6SEd Tanous    description: 'Enable HTTP push style eventing feature',
4288dc3ddf6SEd Tanous)
4298dc3ddf6SEd Tanous
430c5bcf35fSEd Tanous# BMCWEB_INSECURE_ENABLE_REDFISH_QUERY
4318dc3ddf6SEd Tanousoption(
4328dc3ddf6SEd Tanous    'insecure-enable-redfish-query',
4338dc3ddf6SEd Tanous    type: 'feature',
4348dc3ddf6SEd Tanous    value: 'disabled',
4358dc3ddf6SEd Tanous    description: '''Enables Redfish expand query parameter.  This feature is
4368dc3ddf6SEd Tanous                    experimental, and has not been tested against the full
4378dc3ddf6SEd Tanous                    limits of user-facing behavior.  It is not recommended to
4388dc3ddf6SEd Tanous                    enable on production systems at this time.  Other query
4398dc3ddf6SEd Tanous                    parameters such as only are not controlled by this option.''',
4408dc3ddf6SEd Tanous)
441