26 #ifndef OPENVAS_NETWORK_H
27 #define OPENVAS_NETWORK_H
29 #include <sys/select.h>
30 #include <netinet/in.h>
32 #include <gnutls/gnutls.h>
33 #include <gnutls/x509.h>
36 #include "../base/openvas_networking.h"
57 #define IS_ENCAPS_SSL(x) ((x) >= OPENVAS_ENCAPS_SSLv23 && (x) <= OPENVAS_ENCAPS_TLScustom)
63 int nrecv (
int,
void *,
int,
int);
65 int get_sock_infos (
int sock,
int *r_transport,
void **r_tls_session);
66 unsigned short *
getpts (
char *,
int *);
77 int nsend (
int,
void *,
int,
int);
96 ovas_scanner_context_t
98 const char *,
const char *,
const char *,
105 gnutls_certificate_credentials_t certcred,
114 int os_send (
int,
void *,
int,
int);
115 int os_recv (
int,
void *,
int,
int);
int open_stream_connection_ext(struct arglist *args, unsigned int port, int transport, int timeout, const char *priority)
Definition: network.c:993
void *struct arglist * args
Definition: arglists.c:236
int open_sock_option(struct arglist *args, unsigned int port, int type, int protocol, int timeout)
Definition: network.c:2130
const char * get_encaps_name(openvas_encaps_t code)
Definition: network.c:1899
naslctxt * ctx
Definition: nasl_grammar.tab.c:2990
int os_send(int soc, void *buf, int len, int opt)
Definition: network.c:2387
int n
Definition: ids_send.c:235
else return open_sock_tcp(args, port, timeout)
int open_stream_auto_encaps_ext(struct arglist *args, unsigned int port, int timeout, int force)
Definition: network.c:1109
int openvas_deregister_connection(int fd)
Definition: network.c:296
int openvas_get_socket_from_connection(int fd)
Definition: network.c:399
int open_stream_connection(struct arglist *args, unsigned int port, int transport, int timeout)
Definition: network.c:1100
enum openvas_encaps openvas_encaps_t
int stream_set(int fd, fd_set *set)
Definition: network.c:2310
int openvas_register_connection(int soc, void *ssl, gnutls_certificate_credentials_t certcred, openvas_encaps_t encaps)
Definition: network.c:271
char * buf
Definition: ids_send.c:544
int recv_line(int soc, char *buf, size_t bufsiz)
Reads a text from the socket stream into the argument buffer, always.
Definition: network.c:2187
int stream_set_buffer(int fd, int sz)
Definition: network.c:2336
int openvas_SSL_init()
Initializes SSL support.
Definition: network.c:380
gnutls_session_t ovas_get_tlssession_from_connection(int fd)
Definition: network.c:422
int fd_is_stream(int fd)
Definition: network.c:2319
int nsend(int fd, void *data, int length, int i_opt)
Definition: network.c:1747
int read_stream_connection(int fd, void *buf0, int len)
Definition: network.c:1591
int port
Definition: ids_send.c:541
void add_close_stream_connection_hook(int(*fnc)(int fd))
Register a hook function for close_stream_connection.
Definition: network.c:1830
int socket_get_ssl_version(int fd)
Definition: network.c:833
int socket_get_ssl_compression(int fd)
Definition: network.c:914
void socket_get_cert(int fd, void **cert, int *certlen)
Definition: network.c:797
unsigned short * getpts(char *origexpr, int *len)
Converts a string like "-100,200-1024,3000-4000,60000-" into an array.
Definition: network.c:2589
int read_stream_connection_min(int fd, void *buf0, int min_len, int max_len)
Definition: network.c:1530
int internal_recv(int soc, char **data, int *data_sz, int *msg_type)
Definition: network.c:2491
int stream_get_buffer_sz(int fd)
Definition: network.c:2326
int nrecv(int fd, void *data, int length, int i_opt)
Definition: network.c:1788
openvas_encaps
Definition: network.h:44
int socket_get_ssl_ciphersuite(int fd)
Definition: network.c:954
int stream_zero(fd_set *set)
Definition: network.c:2303
int stream_get_err(int fd)
Definition: network.c:165
struct ovas_scanner_context_s * ovas_scanner_context_t
Definition: network.h:94
Definition: network.c:1143
int socket_negotiate_ssl(int fd, openvas_encaps_t transport, struct arglist *args)
Definition: network.c:762
Definition: arglists.h:29
int write_stream_connection(int fd, void *buf0, int n)
Definition: network.c:1741
int open_sock_opt_hn(const char *hostname, unsigned int port, int type, int protocol, int timeout)
Definition: network.c:2058
const char * get_encaps_through(openvas_encaps_t code)
Definition: network.c:1929
int internal_send(int soc, char *data, int msg_type)
Definition: network.c:2436
void socket_get_ssl_session_id(int fd, void **sid, size_t *ssize)
Definition: network.c:874
void ovas_scanner_context_free(ovas_scanner_context_t ctx)
Frees the ovas_scanner_context_t instance ctx.
Definition: network.c:1226
int timeout
Definition: ids_send.c:694
int get_sock_infos(int sock, int *r_transport, void **r_tls_session)
Definition: network.c:2549
int os_recv(int soc, void *buf, int len, int opt)
Definition: network.c:2406
int socket_close(int soc)
Definition: network.c:2293
openvas_encaps_t encaps
Definition: network.c:1146
int stream_set_timeout(int fd, int timeout)
Definition: network.c:1328
ovas_scanner_context_t ovas_scanner_context_new(openvas_encaps_t encaps, const char *certfile, const char *keyfile, const char *passwd, const char *cafile, const char *priority, const char *dhparams)
Creates a new ovas_scanner_context_t.
Definition: network.c:1167
int ovas_scanner_context_attach(ovas_scanner_context_t ctx, int soc)
Sets up SSL/TLS on the socket soc and returns a openvas file.
Definition: network.c:1251
int close_stream_connection(int fd)
Definition: network.c:1869