libssh  0.10.90
The SSH library
Loading...
Searching...
No Matches
bind.h
1/*
2 * This file is part of the SSH Library
3 *
4 * Copyright (c) 2010 by Aris Adamantiadis
5 *
6 * This library is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU Lesser General Public
8 * License as published by the Free Software Foundation; either
9 * version 2.1 of the License, or (at your option) any later version.
10 *
11 * This library is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 * Lesser General Public License for more details.
15 *
16 * You should have received a copy of the GNU Lesser General Public
17 * License along with this library; if not, write to the Free Software
18 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
19 */
20
21#ifndef BIND_H_
22#define BIND_H_
23
24#include "libssh/priv.h"
25#include "libssh/kex.h"
26#include "libssh/session.h"
27
28#ifdef __cplusplus
29extern "C" {
30#endif
31
32struct ssh_bind_struct {
33 struct ssh_common_struct common; /* stuff common to ssh_bind and ssh_session */
34 struct ssh_bind_callbacks_struct *bind_callbacks;
35 void *bind_callbacks_userdata;
36
37 struct ssh_poll_handle_struct *poll;
38 /* options */
39 char *wanted_methods[SSH_KEX_METHODS];
40 char *banner;
41 char *ecdsakey;
42 char *rsakey;
43 char *ed25519key;
44 ssh_key ecdsa;
45 ssh_key rsa;
46 ssh_key ed25519;
47 char *bindaddr;
48 socket_t bindfd;
49 unsigned int bindport;
50 int blocking;
51 int toaccept;
52 bool config_processed;
53 char *config_dir;
54 char *pubkey_accepted_key_types;
55 char* moduli_file;
56 int rsa_min_size;
57};
58
59struct ssh_poll_handle_struct *ssh_bind_get_poll(struct ssh_bind_struct
60 *sshbind);
61
62#ifdef __cplusplus
63}
64#endif
65
66#endif /* BIND_H_ */
These are the callbacks exported by the ssh_bind structure.
Definition server.h:81