# proto ==> ovpnproto
# options suffixed with :d are deprecated

OPENVPN_PARAMS_STRING='
allow_compression:d
auth
auth_gen_token
auth_gen_token_secret
auth_retry
bind_dev
cipher
client_nat
comp_lzo:d
compress:d
connect_freq
connect_freq_initial
data_ciphers_fallback
dev
dev_node
dev_type
dhcp_option
dns
ecdh_curve
echo
engine
fragment
group
hash_size
http_proxy
http_proxy_option
http_proxy_user_pass
ifconfig
ifconfig_ipv6
ifconfig_ipv6_pool
ifconfig_ipv6_push
ifconfig_pool
ifconfig_pool_persist
ifconfig_push
inactive
iroute
iroute_ipv6
keepalive
keying_material_exporter
lladdr
local
log
log_append
management
management_client_group
management_client_user
management_external_cert
management_external_key
mark
mode
mtu_disc
peer_fingerprint
pkcs11_id
pkcs11_providers
plugin
port_share
proto_force
providers
pull_filter
push_remove
redirect_gateway
redirect_private
remap_usr1
remote_cert_eku
remote_cert_ku
remote_cert_tls
replay_window
resolv_retry
route
route_delay
route_gateway
route_ipv6
route_ipv6_gateway
server
server_bridge
server_ipv6
setcon
socket_flags
socks_proxy
stale_routes_check
static_challenge
tls_auth
tls_cert_profile
tls_version_max
tls_version_min
topology
user
verify_client_cert
verify_hash:d
verify_x509_name
vlan_accept
x509_track
x509_username_field
'

OPENVPN_PARAMS_DEPRECATED='
allow_compression
comp_lzo
comp_noadapt
compress
link_mtu
opt_verify
secret
verify_hash
'

OPENVPN_PARAMS_REMOVED='
ncp_disable
ncp_ciphers
'

# peer_fingerprint and verify_hash can be either file or string
OPENVPN_PARAMS_FILE='
askpass
auth_user_pass
auth_user_pass_verify
ca
capath
cert
chroot
client_config_dir
client_connect
client_crresponse
client_disconnect
config
crl_verify
dh
down
extra_certs
http_proxy_user_pass
ipchange
iproute
key
learn_address
pkcs12
replay_persist
route_pre_down
route_up
secret:d
tls_crypt
tls_crypt_v2
tls_crypt_v2_verify
tls_export_cert
tls_verify
tmp_dir
up
'

OPENVPN_INTS='
nice
'

OPENVPN_UINTS='
auth_gen_token_lifetime
bcast_buffers
connect_retry
connect_retry_max
connect_timeout
explicit_exit_notify
hand_window
key_direction
link_mtu:d
lport
management_log_cache
max_clients
max_packet_size
max_routes_per_client
mssfix
mute
ping
ping_exit
ping_restart
pkcs11_cert_private
pkcs11_pin_cache
pkcs11_private_mode
pkcs11_protected_authentication
port
rcvbuf
reneg_bytes
reneg_pkts
reneg_sec
route_metric
rport
script_security
server_poll_timeout
session_timeout
shaper
sndbuf
socks_proxy_retry
status_version
tcp_queue_limit
tls_timeout
tran_window
tun_max_mtu
tun_mtu
tun_mtu_extra
txqueuelen
up_delay
verb
vlan_pvid
'

OPENVPN_BOOLS='
allow_pull_fqdn
allow_recursive_routing
auth_nocache
auth_user_pass_optional
bind
block_ipv6
ccd_exclusive
client
client_to_client
comp_noadapt:d
disable_dco
disable_occ
down_pre
duplicate_cn
errors_to_stderr
fast_io
float
force_tls_key_material_export
ifconfig_noexec
ifconfig_nowarn
machine_readable_output
management_client
management_client_auth
management_forget_disconnect
management_hold
management_query_passwords
management_query_proxy
management_query_remote
management_signal
management_up_down
mktun
mlock
mtu_test
multihome
mute_replay_warnings
nobind
opt_verify:d
passtos
persist_key
persist_local_ip
persist_remote_ip
persist_tun
ping_timer_rem
pkcs11_id_management
pull
push_peer_info
push_reset
remote_random
remote_random_hostname
rmtun
route_noexec
route_nopull
single_session
suppress_timestamps
tcp_nodelay
test_crypto
tls_client
tls_exit
tls_server
up_restart
use_prediction_resistance
username_as_common_name
vlan_tagging
'

OPENVPN_LIST='
data_ciphers
disable
ignore_unknown_option
push
remote
route
setenv
setenv_safe
tls_cipher
tls_ciphersuites
tls_groups
'
