libsshpp v0.1.7
Modern C++17 wrapper for libssh
Loading...
Searching...
No Matches
native_fwd.hpp
Go to the documentation of this file.
1// SPDX-License-Identifier: LGPL-2.1-or-later
2//
3// Opaque forward declarations of libssh's C handle types. Public sshpp headers
4// only ever see these typedefs, never <libssh/libssh.h> itself (see docs/design/02 ยง2.4).
5#pragma once
6
7// These must be forward-declared at global scope (not inside namespace sshpp) so that
8// they refer to the *same* types libssh.h itself forward-declares/defines, rather than
9// creating unrelated sshpp::ssh_session_struct etc. that silently fail to convert.
10struct ssh_session_struct;
11struct ssh_channel_struct;
12struct ssh_key_struct;
13struct ssh_bind_struct;
14struct ssh_message_struct;
15struct ssh_event_struct;
16struct sftp_session_struct;
17struct sftp_file_struct;
18struct sftp_dir_struct;
19struct ssh_scp_struct;
20struct ssh_connector_struct;
21struct sftp_aio_struct;
22
23namespace sshpp {
24
25using native_session = ::ssh_session_struct*;
26using native_channel = ::ssh_channel_struct*;
27using native_key = ::ssh_key_struct*;
28using native_bind = ::ssh_bind_struct*;
29using native_message = ::ssh_message_struct*;
30using native_event = ::ssh_event_struct*;
31using native_sftp = ::sftp_session_struct*;
32using native_sftp_file = ::sftp_file_struct*;
33using native_sftp_dir = ::sftp_dir_struct*;
34using native_scp = ::ssh_scp_struct*;
35using native_connector = ::ssh_connector_struct*;
36using native_sftp_aio = ::sftp_aio_struct*;
37
38} // namespace sshpp
Definition auth.hpp:18
::sftp_session_struct * native_sftp
Definition native_fwd.hpp:31
::ssh_key_struct * native_key
Definition native_fwd.hpp:27
::ssh_bind_struct * native_bind
Definition native_fwd.hpp:28
::ssh_message_struct * native_message
Definition native_fwd.hpp:29
::ssh_event_struct * native_event
Definition native_fwd.hpp:30
::sftp_file_struct * native_sftp_file
Definition native_fwd.hpp:32
::ssh_channel_struct * native_channel
Definition native_fwd.hpp:26
::sftp_aio_struct * native_sftp_aio
Definition native_fwd.hpp:36
::ssh_scp_struct * native_scp
Definition native_fwd.hpp:34
::sftp_dir_struct * native_sftp_dir
Definition native_fwd.hpp:33
::ssh_session_struct * native_session
Definition native_fwd.hpp:25
::ssh_connector_struct * native_connector
Definition native_fwd.hpp:35