26 char *ssh_get_user_home_dir(
void);
27 char *ssh_get_local_username(
void);
28 int ssh_file_readaccess_ok(
const char *file);
31 char *ssh_path_expand_escape(ssh_session session,
const char *s);
32 int ssh_analyze_banner(ssh_session session,
int server,
int *ssh1,
int *ssh2);
33 int ssh_is_ipaddr_v4(
const char *str);
34 int ssh_is_ipaddr(
const char *str);
38 uint64_t ntohll(uint64_t);
42 #define htonll(x) ntohll((x))
48 struct ssh_iterator *root;
49 struct ssh_iterator *end;
53 struct ssh_iterator *next;
57 struct ssh_timestamp {
62 struct ssh_list *ssh_list_new(
void);
63 void ssh_list_free(
struct ssh_list *list);
64 struct ssh_iterator *ssh_list_get_iterator(
const struct ssh_list *list);
65 struct ssh_iterator *ssh_list_find(
const struct ssh_list *list,
void *value);
66 int ssh_list_append(
struct ssh_list *list,
const void *data);
67 int ssh_list_prepend(
struct ssh_list *list,
const void *data);
68 void ssh_list_remove(
struct ssh_list *list,
struct ssh_iterator *iterator);
69 char *ssh_lowercase(
const char* str);
70 char *ssh_hostport(
const char *host,
int port);
72 const void *_ssh_list_pop_head(
struct ssh_list *list);
74 #define ssh_iterator_value(type, iterator)\
75 ((type)((iterator)->data))
82 #define ssh_list_pop_head(type, ssh_list)\
83 ((type)_ssh_list_pop_head(ssh_list))
85 int ssh_make_milliseconds(
long sec,
long usec);
86 void ssh_timestamp_init(
struct ssh_timestamp *ts);
87 int ssh_timeout_elapsed(
struct ssh_timestamp *ts,
int timeout);
90 int ssh_match_group(
const char *group,
const char *
object);
int ssh_timeout_update(struct ssh_timestamp *ts, int timeout)
updates a timeout value so it reflects the remaining time
Definition: misc.c:993
char * ssh_path_expand_tilde(const char *d)
Expand a directory starting with a tilde '~'.
Definition: misc.c:641