doc/config.h header reference

Description [link] 

This sample header file shows configuration macros which are used in the code of libassh.

When using the provided configure script, a config.h file is generated which takes care of properly defining these macros.

See also Build configuration.

Members [link] 

Macros [link] 

Members detail [link] 

#define CONFIG_ASSH_ABI_WARN [link] 

This macro is declared in doc/config.h source file, line 38.

When defined, this macro enables warning at compile time for use of functions which are not ABI stable.

This macro expands to:

/**/

#define CONFIG_ASSH_ALLOCA [link] 

This macro is declared in doc/config.h source file, line 42.

When defined, this macro enables storage of temporary buffers on stack. This is not secur on platforms with memory swapping.

#define CONFIG_ASSH_AUTH_HOSTNAME_LEN 128 [link] 

This macro is declared in doc/config.h source file, line 45.

This macro specifies the maximum length of hostname for user authentication.

#define CONFIG_ASSH_AUTH_PASSWORD_LEN 32 [link] 

This macro is declared in doc/config.h source file, line 48.

This macro specifies the maximum length of password for user authentication.

#define CONFIG_ASSH_AUTH_USERNAME_LEN 32 [link] 

This macro is declared in doc/config.h source file, line 51.

This macro specifies the maximum length of username for user authentication.

#define CONFIG_ASSH_BIGNUM_WORD 64 [link] 

This macro is declared in doc/config.h source file, line 54.

This macro specifies the word width used for bignum operations.

#define CONFIG_ASSH_BUILTIN_MD5 [link] 

This macro is declared in doc/config.h source file, line 91.

When defined, this macro enables the builtin implementation of the MD5 message digest.

#define CONFIG_ASSH_BUILTIN_SHA1 [link] 

This macro is declared in doc/config.h source file, line 94.

When defined, this macro enables the builtin implementation of the SHA1 message digest.

#define CONFIG_ASSH_BUILTIN_SHA2 [link] 

This macro is declared in doc/config.h source file, line 97.

When defined, this macro enables the builtin implementation of the SHA2 message digest.

#define CONFIG_ASSH_BUILTIN_SHA3 [link] 

This macro is declared in doc/config.h source file, line 100.

When defined, this macro enables the builtin implementation of the SHA3 message digest.

#define CONFIG_ASSH_CALLTRACE [link] 

This macro is declared in doc/config.h source file, line 256.

When defined, this macro make the library dump a function call trace. This requires CONFIG_ASSH_DEBUG.

#define CONFIG_ASSH_CLIENT [link] 

This macro is declared in doc/config.h source file, line 58.

When defined, this macro enables support for the client side of the SSH protocol.

#define CONFIG_ASSH_CLIENT_AUTH_HOSTBASED [link] 

This macro is declared in doc/config.h source file, line 62.

When defined, this macro enables support for the host based user authentication method on client side.

#define CONFIG_ASSH_CLIENT_AUTH_KEYBOARD [link] 

This macro is declared in doc/config.h source file, line 66.

When defined, this macro enables support for the keyboard interactive user authentication method on client side.

#define CONFIG_ASSH_CLIENT_AUTH_PASSWORD [link] 

This macro is declared in doc/config.h source file, line 70.

When defined, this macro enables support for the password user authentication method on client side.

#define CONFIG_ASSH_CLIENT_AUTH_PUBLICKEY [link] 

This macro is declared in doc/config.h source file, line 74.

When defined, this macro enables support for the public key user authentication method on client side.

#define CONFIG_ASSH_CLIENT_AUTH_USE_PKOK [link] 

This macro is declared in doc/config.h source file, line 79.

When defined, this macro enables sending a public key lookup packet first instead of sending the signature directly during user authentication. The specification allows either behaviors.

#define CONFIG_ASSH_CRYPT_R [link] 

This macro is declared in doc/config.h source file, line 82.

When defined, this macro enables code that relies on the crypt_r function.

#define CONFIG_ASSH_DEBUG [link] 

This macro is declared in doc/config.h source file, line 234.

When defined, this macro makes the library print debug information on error and enables use of other debug configuration macros. This must not be enabled on production code in order to avoid leaking secret material.

#define CONFIG_ASSH_DEBUG_BIGNUM_TRACE [link] 

This macro is declared in doc/config.h source file, line 264.

When defined, this macro makes the library verbose about big number computations. This requires CONFIG_ASSH_DEBUG.

#define CONFIG_ASSH_DEBUG_EVENT [link] 

This macro is declared in doc/config.h source file, line 238.

When defined, this macro makes the library verbose about reported events. This requires CONFIG_ASSH_DEBUG.

#define CONFIG_ASSH_DEBUG_KEX [link] 

This macro is declared in doc/config.h source file, line 252.

When defined, this macro makes the library verbose about the kex-exchange. This may leak key related material. This requires CONFIG_ASSH_DEBUG.

#define CONFIG_ASSH_DEBUG_PROTOCOL [link] 

This macro is declared in doc/config.h source file, line 247.

When defined, this macro makes the library dump packets. This requires CONFIG_ASSH_DEBUG.

#define CONFIG_ASSH_DEBUG_SIGN [link] 

This macro is declared in doc/config.h source file, line 243.

When defined, this macro makes the library verbose about signatures. This may leak key related material. This requires CONFIG_ASSH_DEBUG.

#define CONFIG_ASSH_FSMTRACE [link] 

This macro is declared in doc/config.h source file, line 260.

When defined, this macro makes the library verbose about FSM state changes. This requires CONFIG_ASSH_DEBUG.

#define CONFIG_ASSH_GETPWNAM_R [link] 

This macro is declared in doc/config.h source file, line 85.

When defined, this macro enables code that relies on the getpwnam_r function.

#define CONFIG_ASSH_GETSPNAM_R [link] 

This macro is declared in doc/config.h source file, line 88.

When defined, this macro enables code that relies on the getspnam_r function.

#define CONFIG_ASSH_GNU_QSORTR [link] 

This macro is declared in doc/config.h source file, line 141.

When defined, this macro enables code which relies on the qsort_r function from the C library.

#define CONFIG_ASSH_IDENT_SIZE 255 [link] 

This macro is declared in doc/config.h source file, line 107.

This macro specifies the maximum length of the remote software identification string. rfc4253 section 4.2 requires 255 bytes which is almost never seen in practice. Using a lower value on embedded targets will reduce the size of the struct assh_session_s structure.

#define CONFIG_ASSH_KEY_CREATE [link] 

This macro is declared in doc/config.h source file, line 110.

When defined, this macro enables support for SSH key creation.

#define CONFIG_ASSH_KEY_VALIDATE [link] 

This macro is declared in doc/config.h source file, line 113.

When defined, this macro enables support for SSH key validation.

#define CONFIG_ASSH_LIBC_REALLOC [link] 

This macro is declared in doc/config.h source file, line 119.

When defined, this macro enables support for the C library allocator which is not able to provides secure memory on many platforms. This can be useful on embedded platforms where there is no virtual memory implemented.

#define CONFIG_ASSH_MALLOC_USABLE_SIZE [link] 

This macro is declared in doc/config.h source file, line 145.

When defined, this macro enables code which relies on the malloc_usable_size function from the C library.

#define CONFIG_ASSH_MAX_PAYLOAD 32768 [link] 

This macro is declared in doc/config.h source file, line 125.

This macro specifies the maximum size of the ssh packet payload. rfc4253 section 6.1 requires at least 32768 bytes. Using a lower value on embedded targets will reduce the memory usage and limit resources exhaustion attacks.

#define CONFIG_ASSH_MAX_SERVICES 4 [link] 

This macro is declared in doc/config.h source file, line 128.

This macro specifies the maximum number of registered services.

#define CONFIG_ASSH_NO_REKEX_BEFORE_AUTH [link] 

This macro is declared in doc/config.h source file, line 273.

When defined, this macro disallows performing multiple key exchanges before user authentication. This is not required by the specification but helps preventing a simple resource exhaustion attacks.

#define CONFIG_ASSH_OPENSSH_PREFIX [link] 

This macro is declared in doc/config.h source file, line 131.

This macro specifies the path to OpenSSH host key files for use by helpers.

This macro expands to:

"/etc/ssh/"

#define CONFIG_ASSH_PACKET_POOL [link] 

This macro is declared in doc/config.h source file, line 134.

When defined, this macro enables the packet pool allocator.

#define CONFIG_ASSH_PACKET_POOL_SIZE 1048576 [link] 

This macro is declared in doc/config.h source file, line 137.

This macro specifies the maximum byte amount of spare packets in the pool.

#define CONFIG_ASSH_SERVER [link] 

This macro is declared in doc/config.h source file, line 148.

When defined, this macro enables support for the server side of the SSH protocol.

#define CONFIG_ASSH_SERVER_AUTH_HOSTBASED [link] 

This macro is declared in doc/config.h source file, line 152.

When defined, this macro enables support for the host based user authentication method on server side.

#define CONFIG_ASSH_SERVER_AUTH_KEYBOARD [link] 

This macro is declared in doc/config.h source file, line 156.

When defined, this macro enables support for the keyboard interactive user authentication method on server side.

#define CONFIG_ASSH_SERVER_AUTH_NONE [link] 

This macro is declared in doc/config.h source file, line 160.

When defined, this macro enables support for the none user authentication method on server side.

#define CONFIG_ASSH_SERVER_AUTH_PASSWORD [link] 

This macro is declared in doc/config.h source file, line 164.

When defined, this macro enables support for the password user authentication method on server side.

#define CONFIG_ASSH_SERVER_AUTH_PUBLICKEY [link] 

This macro is declared in doc/config.h source file, line 168.

When defined, this macro enables support for the public key user authentication method on server side.

#define CONFIG_ASSH_USE_DEV_RANDOM [link] 

This macro is declared in doc/config.h source file, line 172.

When defined, this macro enables support for UNIX /dev/u?random random generator.

#define CONFIG_ASSH_USE_GCRYPT [link] 

This macro is declared in doc/config.h source file, line 177.

When defined, this macro enables use of Libgcrypt.

#define CONFIG_ASSH_USE_GCRYPT_ALLOC [link] 

This macro is declared in doc/config.h source file, line 181.

When defined, this macro enables use of the Libgcrypt secur memory allocator. This requires CONFIG_ASSH_USE_GCRYPT.

#define CONFIG_ASSH_USE_GCRYPT_CIPHERS [link] 

This macro is declared in doc/config.h source file, line 185.

When defined, this macro enables use of Libgcrypt cipher algorithms. This requires CONFIG_ASSH_USE_GCRYPT.

#define CONFIG_ASSH_USE_GCRYPT_HASH [link] 

This macro is declared in doc/config.h source file, line 189.

When defined, this macro enables use of Libgcrypt hash algorithms implementations. This requires CONFIG_ASSH_USE_GCRYPT.

#define CONFIG_ASSH_USE_GCRYPT_PRNG [link] 

This macro is declared in doc/config.h source file, line 193.

When defined, this macro enables use of the Libgcrypt random number generator. This requires CONFIG_ASSH_USE_GCRYPT.

#define CONFIG_ASSH_USE_OPENSSL [link] 

This macro is declared in doc/config.h source file, line 198.

When defined, this macro allows use of the OpenSSL library.

#define CONFIG_ASSH_USE_OPENSSL_ALLOC [link] 

This macro is declared in doc/config.h source file, line 202.

When defined, this macro enables use of the OpenSSL secur memory allocator. This requires CONFIG_ASSH_USE_OPENSSL.

#define CONFIG_ASSH_USE_OPENSSL_CIPHERS [link] 

This macro is declared in doc/config.h source file, line 208.

When defined, this macro enables use of the OpenSSL cipher algorithms. This requires CONFIG_ASSH_USE_OPENSSL.

#define CONFIG_ASSH_USE_OPENSSL_HASH [link] 

This macro is declared in doc/config.h source file, line 212.

When defined, this macro enables use of the OpenSSL hash algorithms implementations. This requires CONFIG_ASSH_USE_OPENSSL.

#define CONFIG_ASSH_USE_OPENSSL_PRNG [link] 

This macro is declared in doc/config.h source file, line 216.

When defined, this macro enables use of the OpenSSL random number generator. This requires CONFIG_ASSH_USE_OPENSSL.

#define CONFIG_ASSH_USE_ZLIB [link] 

This macro is declared in doc/config.h source file, line 219.

When defined, this macro allows use of the zlib library.

#define CONFIG_ASSH_VALGRIND [link] 

This macro is declared in doc/config.h source file, line 228.

When defined, this macro enables relying on valgrind headers files for better memory errors reporting.

#define CONFIG_ASSH_VERBOSE_ERROR [link] 

This macro is declared in doc/config.h source file, line 267.

When defined, this macro embed error reasons strings in the library.

#define CONFIG_ASSH_ZLIB_ALLOC ASSH_ALLOC_INTERNAL [link] 

This macro is declared in doc/config.h source file, line 224.

This macro specifies the allocator storage type used for the zlib context. The default is to use the ASSH_ALLOC_INTERNAL policy that does not allocate secur memory.

Valid XHTML 1.0 StrictGenerated by diaxen on Sun Oct 25 23:31:03 2020 using MkDoc