Use Ed25519 from OpenSSL, if available
This makes libssh to use only the OpenSSL implementation of curve25519 if available. The following parts were changed:
- Use OpenSSL Ed25519 implementation for signatures. This required changes to the used API from
- Use OpenSSL X25519 implementation for key exchange (firstname.lastname@example.org)
- Support reading Ed25519 keys files in PEM format. This allows, for example, keys generated in OpenSSL to be directly usable in libssh. Due to lack of proper API, it is not possible to generate Ed25519 key files in PEM format using libssh.
- When the OpenSSL Ed25519 implementation is available, do not compile the internal implementation.