version 1.13, 2001/10/08 19:05:05 |
version 1.13.4.1, 2002/06/26 15:30:39 |
|
|
#ifndef SSHCONNECT_H |
#ifndef SSHCONNECT_H |
#define SSHCONNECT_H |
#define SSHCONNECT_H |
|
|
|
typedef struct Sensitive Sensitive; |
|
struct Sensitive { |
|
Key **keys; |
|
int nkeys; |
|
int external_keysign; |
|
}; |
|
|
int |
int |
ssh_connect(const char *, struct sockaddr_storage *, u_short, int, int, |
ssh_connect(const char *, struct sockaddr_storage *, u_short, int, int, |
int, struct passwd *, const char *); |
int, const char *); |
|
|
void |
void |
ssh_login(Key **, int, const char *, struct sockaddr *, struct passwd *); |
ssh_login(Sensitive *, const char *, struct sockaddr *, struct passwd *); |
|
|
int verify_host_key(char *, struct sockaddr *, Key *); |
int verify_host_key(char *, struct sockaddr *, Key *); |
|
|
void ssh_kex(char *, struct sockaddr *); |
void ssh_kex(char *, struct sockaddr *); |
void ssh_kex2(char *, struct sockaddr *); |
void ssh_kex2(char *, struct sockaddr *); |
|
|
void ssh_userauth1(const char *, const char *, char *, Key **, int); |
void ssh_userauth1(const char *, const char *, char *, Sensitive *); |
void ssh_userauth2(const char *, const char *, char *, Key **, int); |
void ssh_userauth2(const char *, const char *, char *, Sensitive *); |
|
|
void ssh_put_password(char *); |
void ssh_put_password(char *); |
|
|
|
|
|
/* |
|
* Macros to raise/lower permissions. |
|
*/ |
|
#define PRIV_START do { \ |
|
int save_errno = errno; \ |
|
(void)seteuid(original_effective_uid); \ |
|
errno = save_errno; \ |
|
} while (0) |
|
|
|
#define PRIV_END do { \ |
|
int save_errno = errno; \ |
|
(void)seteuid(original_real_uid); \ |
|
errno = save_errno; \ |
|
} while (0) |
|
|
#endif |
#endif |