libssh  0.7.2
include/libssh/bind.h
00001 /*
00002  * This file is part of the SSH Library
00003  *
00004  * Copyright (c) 2010 by Aris Adamantiadis
00005  *
00006  * This library is free software; you can redistribute it and/or
00007  * modify it under the terms of the GNU Lesser General Public
00008  * License as published by the Free Software Foundation; either
00009  * version 2.1 of the License, or (at your option) any later version.
00010  *
00011  * This library is distributed in the hope that it will be useful,
00012  * but WITHOUT ANY WARRANTY; without even the implied warranty of
00013  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00014  * Lesser General Public License for more details.
00015  *
00016  * You should have received a copy of the GNU Lesser General Public
00017  * License along with this library; if not, write to the Free Software
00018  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
00019  */
00020 
00021 #ifndef BIND_H_
00022 #define BIND_H_
00023 
00024 #include "libssh/priv.h"
00025 #include "libssh/session.h"
00026 
00027 struct ssh_bind_struct {
00028   struct ssh_common_struct common; /* stuff common to ssh_bind and ssh_session */
00029   struct ssh_bind_callbacks_struct *bind_callbacks;
00030   void *bind_callbacks_userdata;
00031 
00032   struct ssh_poll_handle_struct *poll;
00033   /* options */
00034   char *wanted_methods[10];
00035   char *banner;
00036   char *ecdsakey;
00037   char *dsakey;
00038   char *rsakey;
00039   char *ed25519key;
00040   ssh_key ecdsa;
00041   ssh_key dsa;
00042   ssh_key rsa;
00043   ssh_key ed25519;
00044   char *bindaddr;
00045   socket_t bindfd;
00046   unsigned int bindport;
00047   int blocking;
00048   int toaccept;
00049 };
00050 
00051 struct ssh_poll_handle_struct *ssh_bind_get_poll(struct ssh_bind_struct
00052     *sshbind);
00053 
00054 
00055 #endif /* BIND_H_ */