OpenVAS Scanner 23.40.3
nasl_init.c File Reference
#include "nasl_init.h"
#include "../misc/network.h"
#include "../misc/nvt_categories.h"
#include "exec.h"
#include "nasl.h"
#include "nasl_builtin_plugins.h"
#include "nasl_cert.h"
#include "nasl_cmd_exec.h"
#include "nasl_crypto.h"
#include "nasl_crypto2.h"
#include "nasl_debug.h"
#include "nasl_frame_forgery.h"
#include "nasl_func.h"
#include "nasl_global_ctxt.h"
#include "nasl_host.h"
#include "nasl_http.h"
#include "nasl_http2.h"
#include "nasl_isotime.h"
#include "nasl_krb5.h"
#include "nasl_lex_ctxt.h"
#include "nasl_misc_funcs.h"
#include "nasl_packet_forgery.h"
#include "nasl_packet_forgery_v6.h"
#include <stdlib.h>
#include <string.h>
#include "nasl_raw.h"
#include "nasl_scanner_glue.h"
#include "nasl_smb.h"
#include "nasl_snmp.h"
#include "nasl_socket.h"
#include "nasl_ssh.h"
#include "nasl_text_utils.h"
#include "nasl_tree.h"
#include "nasl_var.h"
#include "nasl_wmi.h"
Include dependency graph for nasl_init.c:

Go to the source code of this file.

Data Structures

struct  init_func

Functions

void init_nasl_library (lex_ctxt *lexic)
 Adds "built-in" variable and function definitions to a context.
nasl_funcfunc_is_internal (const char *name)
char * nasl_version (void)
void add_nasl_library (GSList **list)
 Add "built-in" variables to a list.

Variables

static init_func libfuncs []
struct { 
   const char *   name 
   const char *   val 
libsvars []
struct { 
   const char *   name 
   int   val 
libivars []

Function Documentation

◆ add_nasl_library()

void add_nasl_library ( GSList ** list)

Add "built-in" variables to a list.

Definition at line 583 of file nasl_init.c.

584{
585 int i;
586 for (i = 0; libivars[i].name != NULL; i++)
587 *list = g_slist_append (*list, g_strdup (libivars[i].name));
588 for (i = 0; libsvars[i].name != NULL; i++)
589 *list = g_slist_append (*list, g_strdup (libsvars[i].name));
590}
static struct @260365312376163127012272224246062244353077307342 libsvars[]
const char * name
Definition nasl_init.c:440
static struct @002143073300314243041325344242175301040162155246 libivars[]

References libivars, libsvars, and name.

Referenced by add_predef_varname().

Here is the caller graph for this function:

◆ func_is_internal()

nasl_func * func_is_internal ( const char * name)

Definition at line 555 of file nasl_init.c.

556{
557 size_t i;
558
559 if (!name)
560 return NULL;
561
562 for (i = 0; i < sizeof (libfuncs) / sizeof (libfuncs[0]) - 1; i++)
563 {
564 if (!strcmp (name, libfuncs[i].name))
565 return (nasl_func *) &libfuncs[i];
566 }
567 return NULL;
568}
struct st_nasl_func nasl_func
static init_func libfuncs[]
Definition nasl_init.c:60

References libfuncs, and name.

Referenced by get_func(), nasl_func_call(), and nasl_lint_call().

Here is the caller graph for this function:

◆ init_nasl_library()

void init_nasl_library ( lex_ctxt * lexic)

Adds "built-in" variable and function definitions to a context.

Definition at line 515 of file nasl_init.c.

516{
517 tree_cell tc;
518 unsigned i;
519
520 memset (&tc, 0, sizeof (tc));
521
522 // Initialize constant integer terms
523 tc.type = CONST_INT;
524 for (i = 0; i < sizeof (libivars) / sizeof (libivars[0]) - 1; i++)
525 {
526 tc.x.i_val = libivars[i].val;
527 if (add_named_var_to_ctxt (lexic, libivars[i].name, &tc) == NULL)
528 {
529 nasl_perror (lexic, "init_nasl_library: could not define var '%s'\n",
530 libivars[i].name);
531 continue;
532 }
533 }
534
535 // Initialize constant string terms
536 tc.type = CONST_DATA;
537 for (i = 0; i < sizeof (libsvars) / sizeof (libsvars[0]) - 1; i++)
538 {
539 tc.x.str_val = (char *) libsvars[i].val;
540 tc.size = strlen (libsvars[i].val);
541 if (add_named_var_to_ctxt (lexic, libsvars[i].name, &tc) == NULL)
542 {
543 nasl_perror (lexic, "init_nasl_library: could not define var '%s'\n",
544 libsvars[i].name);
545 continue;
546 }
547 }
548
549 // Add the "NULL" variable
550 if (add_named_var_to_ctxt (lexic, "NULL", NULL) == NULL)
551 nasl_perror (lexic, "init_nasl_library: could not define var 'NULL'\n");
552}
void nasl_perror(lex_ctxt *lexic, char *msg,...)
Definition nasl_debug.c:105
const char * val
Definition nasl_init.c:441
named_nasl_var * add_named_var_to_ctxt(lex_ctxt *, const char *, tree_cell *)
Definition nasl_var.c:810
@ CONST_DATA
Definition nasl_tree.h:82
@ CONST_INT
Definition nasl_tree.h:79
struct TC tree_cell
long int i_val
Definition nasl_tree.h:104
long int size
Definition nasl_tree.h:99
union TC::@332262321161220155002104006201360276211317150140 x
char * str_val
Definition nasl_tree.h:103
short type
Definition nasl_tree.h:95

References add_named_var_to_ctxt(), CONST_DATA, CONST_INT, TC::i_val, libivars, libsvars, name, nasl_perror(), TC::size, TC::str_val, TC::type, val, and TC::x.

Referenced by init_empty_lex_ctxt().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ nasl_version()

char * nasl_version ( void )

Definition at line 571 of file nasl_init.c.

572{
573 static char vers[sizeof (OPENVASLIB_VERSION) + 1];
574 strncpy (vers, OPENVASLIB_VERSION, sizeof (vers) - 1);
575 vers[sizeof (vers) - 1] = '\0';
576 return vers;
577}

Referenced by main().

Here is the caller graph for this function:

Variable Documentation

◆ libfuncs

init_func libfuncs[]
static

Mapping of function names in NASL (eg. script_name("english")) to the C function pointers (e.g. script_name (lex_ctx**) ), argument count and argument Meta-information (names).

Definition at line 60 of file nasl_init.c.

60 {
61 {"script_name", script_name},
62 {"script_version", script_version},
63 {"script_timeout", script_timeout},
64 {"script_copyright", script_copyright},
65 {"script_category", script_category},
66 {"script_family", script_family},
67 {"script_dependencies", script_dependencies},
68 {"script_require_keys", script_require_keys},
69 {"script_mandatory_keys", script_mandatory_keys},
70 {"script_require_ports", script_require_ports},
71 {"script_require_udp_ports", script_require_udp_ports},
72 {"script_exclude_keys", script_exclude_keys},
73 {"script_add_preference", script_add_preference},
74 {"script_get_preference", script_get_preference},
75 {"script_get_preference_file_content", script_get_preference_file_content},
76 {"script_get_preference_file_location", script_get_preference_file_location},
77 {"script_oid", script_oid},
78 {"script_cve_id", script_cve_id},
79 {"script_xref", script_xref},
80 {"script_tag", script_tag},
81 {"vendor_version", nasl_vendor_version},
82 {"update_table_driven_lsc_data", nasl_update_table_driven_lsc_data},
83 {"notus", nasl_notus},
84 {"notus_type", nasl_notus_type},
85 {"notus_error", nasl_notus_error},
86 {"get_preference", nasl_get_preference},
87 {"safe_checks", safe_checks},
88 {"get_script_oid", get_script_oid},
89 {"replace_kb_item", replace_kb_item},
90 {"set_kb_item", set_kb_item},
91 {"get_kb_item", get_kb_item},
92 {"get_kb_list", get_kb_list},
93 {"get_host_kb_index", get_host_kb_index},
94 {"security_message", security_message},
95 {"security_notus", security_notus},
96 {"log_message", log_message},
97 {"error_message", error_message2},
98 {"open_sock_tcp", nasl_open_sock_tcp},
99 {"open_sock_udp", nasl_open_sock_udp},
100 {"open_priv_sock_tcp", nasl_open_priv_sock_tcp},
101 {"open_priv_sock_udp", nasl_open_priv_sock_udp},
102 {"socket_get_error", nasl_socket_get_error},
103 {"recv", nasl_recv},
104 {"recv_line", nasl_recv_line},
105 {"send", nasl_send},
106 {"get_mtu", nasl_get_mtu},
107 {"socket_negotiate_ssl", nasl_socket_negotiate_ssl},
108 {"socket_check_ssl_safe_renegotiation",
110 {"socket_ssl_do_handshake", nasl_socket_ssl_do_handshake},
111 {"socket_get_cert", nasl_socket_get_cert},
112 {"socket_get_ssl_version", nasl_socket_get_ssl_version},
113 {"socket_get_ssl_ciphersuite", nasl_socket_get_ssl_ciphersuite},
114 {"socket_get_ssl_session_id", nasl_socket_get_ssl_session_id},
115 {"socket_cert_verify", nasl_socket_cert_verify},
116 {"close", nasl_close_socket},
117 {"join_multicast_group", nasl_join_multicast_group},
118 {"leave_multicast_group", nasl_leave_multicast_group},
119 {"get_source_port", nasl_get_source_port},
120 {"get_sock_info", nasl_get_sock_info},
121 {"cgibin", cgibin},
122 {"http_open_socket", http_open_socket},
123 {"http_head", http_head},
124 {"http_get", http_get},
125 {"http_post", http_post},
126 {"http_delete", http_delete},
127 {"http_put", http_put},
128 {"http_close_socket", http_close_socket},
129 {"http2_handle", nasl_http2_handle},
130 {"http2_get_response_code", nasl_http2_get_response_code},
131 {"http2_close_handle", nasl_http2_close_handle},
132 {"http2_set_custom_header", nasl_http2_set_custom_header},
133 {"http2_get", nasl_http2_get},
134 {"http2_head", nasl_http2_head},
135 {"http2_post", nasl_http2_post},
136 {"http2_delete", nasl_http2_delete},
137 {"http2_put", nasl_http2_put},
138 {"add_host_name", add_hostname},
139 {"get_host_name", get_hostname},
140 {"ip_reverse_lookup", host_reverse_lookup},
141 {"get_host_names", get_hostnames},
142 {"get_host_name_source", get_hostname_source},
143 {"resolve_host_name", resolve_hostname},
144 {"resolve_hostname_to_multiple_ips", resolve_hostname_to_multiple_ips},
145 {"get_host_ip", get_host_ip},
146 {"get_local_mac_address_from_ip", nasl_get_local_mac_address_from_ip},
147 {"same_host", nasl_same_host},
148 {"TARGET_IS_IPV6", nasl_target_is_ipv6},
149 {"get_host_open_port", get_host_open_port},
150 {"get_port_state", get_port_state},
151 {"get_tcp_port_state", get_port_state},
152 {"get_udp_port_state", get_udp_port_state},
153 {"scanner_add_port", nasl_scanner_add_port},
154 {"scanner_status", nasl_scanner_status},
155 {"scanner_get_port", nasl_scanner_get_port},
156 {"islocalhost", nasl_islocalhost},
157 {"islocalnet", nasl_islocalnet},
158 {"get_port_transport", get_port_transport},
159 {"this_host", nasl_this_host},
160 {"this_host_name", nasl_this_host_name},
161 {"string", nasl_string},
162 {"raw_string", nasl_rawstring},
163 {"strcat", nasl_strcat},
164 {"display", nasl_display},
165 {"ord", nasl_ord},
166 {"hex", nasl_hex},
167 {"hexstr", nasl_hexstr},
168 {"strstr", nasl_strstr},
169 {"ereg", nasl_ereg},
170 {"ereg_replace", nasl_ereg_replace},
171 {"egrep", nasl_egrep},
172 {"eregmatch", nasl_eregmatch},
173 {"match", nasl_match},
174 {"substr", nasl_substr},
175 {"insstr", nasl_insstr},
176 {"tolower", nasl_tolower},
177 {"toupper", nasl_toupper},
178 {"crap", nasl_crap},
179 {"strlen", nasl_strlen},
180 {"split", nasl_split},
181 {"chomp", nasl_chomp},
182 {"int", nasl_int},
183 {"stridx", nasl_stridx},
184 {"str_replace", nasl_str_replace},
185 {"make_list", nasl_make_list},
186 {"make_array", nasl_make_array},
187 {"keys", nasl_keys},
188 {"max_index", nasl_max_index},
189 {"sort", nasl_sort_array},
190 {"unixtime", nasl_unixtime},
191 {"gettimeofday", nasl_gettimeofday},
192 {"localtime", nasl_localtime},
193 {"mktime", nasl_mktime},
194 {"open_sock_kdc", nasl_open_sock_kdc},
195 {"telnet_init", nasl_telnet_init},
196 {"ftp_log_in", nasl_ftp_log_in},
197 {"ftp_get_pasv_port", nasl_ftp_get_pasv_address},
198 {"start_denial", nasl_start_denial},
199 {"end_denial", nasl_end_denial},
200 {"dump_ctxt", nasl_dump_ctxt},
201 {"typeof", nasl_typeof},
202 {"exit", nasl_do_exit},
203 {"rand", nasl_rand},
204 {"usleep", nasl_usleep},
205 {"sleep", nasl_sleep},
206 {"isnull", nasl_isnull},
207 {"defined_func", nasl_defined_func},
208
209 /* Following 5 entries needed for backwards compatibility.
210 * TODO: Once versions older than 20.08 are no longer in use these 5 entries
211 * can be deleted. */
212 {"forge_ipv6_packet", forge_ip_v6_packet},
213 {"get_ipv6_element", get_ip_v6_element},
214 {"set_ipv6_elements", set_ip_v6_elements},
215 {"insert_ipv6_options", insert_ip_v6_options},
216 {"dump_ipv6_packet", dump_ip_v6_packet},
217
218 {"forge_ip_packet", forge_ip_packet},
219 {"forge_ip_v6_packet", forge_ip_v6_packet},
220 {"get_ip_element", get_ip_element},
221 {"get_ip_v6_element", get_ip_v6_element},
222 {"set_ip_elements", set_ip_elements},
223 {"set_ip_v6_elements", set_ip_v6_elements},
224 {"insert_ip_options", insert_ip_options},
225 {"insert_ip_v6_options", insert_ip_v6_options},
226 {"dump_ip_packet", dump_ip_packet},
227 {"dump_ip_v6_packet", dump_ip_v6_packet},
228 {"forge_tcp_packet", forge_tcp_packet},
229 {"forge_tcp_v6_packet", forge_tcp_v6_packet},
230 {"get_tcp_element", get_tcp_element},
231 {"get_tcp_v6_element", get_tcp_v6_element},
232 {"get_tcp_option", get_tcp_option},
233 {"get_tcp_v6_option", get_tcp_v6_option},
234 {"set_tcp_elements", set_tcp_elements},
235 {"set_tcp_v6_elements", set_tcp_v6_elements},
236 {"insert_tcp_options", insert_tcp_options},
237 {"insert_tcp_v6_options", insert_tcp_v6_options},
238 {"dump_tcp_packet", dump_tcp_packet},
239 {"dump_tcp_v6_packet", dump_tcp_v6_packet},
240 {"tcp_ping", nasl_tcp_ping},
241 {"tcp_v6_ping", nasl_tcp_v6_ping},
242 {"forge_udp_packet", forge_udp_packet},
243 {"forge_udp_v6_packet", forge_udp_v6_packet},
244 {"get_udp_element", get_udp_element},
245 {"get_udp_v6_element", get_udp_v6_element},
246 {"set_udp_elements", set_udp_elements},
247 {"set_udp_v6_elements", set_udp_v6_elements},
248 {"dump_udp_packet", dump_udp_packet},
249 {"dump_udp_v6_packet", dump_udp_v6_packet},
250 {"forge_icmp_packet", forge_icmp_packet},
251 {"forge_icmp_v6_packet", forge_icmp_v6_packet},
252 {"get_icmp_element", get_icmp_element},
253 {"get_icmp_v6_element", get_icmp_v6_element},
254 {"dump_icmp_packet", dump_icmp_packet},
255 {"dump_icmp_v6_packet", dump_icmp_v6_packet},
256 {"forge_igmp_packet", forge_igmp_packet},
257 {"forge_igmp_v6_packet", forge_igmp_v6_packet},
258 {"send_packet", nasl_send_packet},
259 {"send_v6packet", nasl_send_v6packet},
260 {"send_arp_request", nasl_send_arp_request},
261 {"forge_frame", nasl_forge_frame},
262 {"send_frame", nasl_send_frame},
263 {"dump_frame", nasl_dump_frame},
264 {"pcap_next", nasl_pcap_next},
265 {"send_capture", nasl_send_capture},
266 {"MD2", nasl_md2},
267 {"MD4", nasl_md4},
268 {"MD5", nasl_md5},
269 {"SHA1", nasl_sha1},
270 {"SHA256", nasl_sha256},
271 {"SHA512", nasl_sha512},
272 {"RIPEMD160", nasl_ripemd160},
273 {"HMAC_MD2", nasl_hmac_md2},
274 {"HMAC_MD5", nasl_hmac_md5},
275 {"HMAC_SHA1", nasl_hmac_sha1},
276 {"HMAC_SHA256", nasl_hmac_sha256},
277 {"HMAC_SHA384", nasl_hmac_sha384},
278 {"HMAC_SHA512", nasl_hmac_sha512},
279 {"HMAC_RIPEMD160", nasl_hmac_ripemd160},
280 {"prf_sha256", nasl_prf_sha256},
281 {"prf_sha384", nasl_prf_sha384},
282 {"tls1_prf", nasl_tls1_prf},
283 {"ntlmv2_response", nasl_ntlmv2_response},
284 {"ntlm2_response", nasl_ntlm2_response},
285 {"ntlm_response", nasl_ntlm_response},
286 {"key_exchange", nasl_keyexchg},
287 {"NTLMv1_HASH", nasl_ntlmv1_hash},
288 {"NTLMv2_HASH", nasl_ntlmv2_hash},
289 {"nt_owf_gen", nasl_nt_owf_gen},
290 {"lm_owf_gen", nasl_lm_owf_gen},
291 {"ntv2_owf_gen", nasl_ntv2_owf_gen},
292 {"insert_hexzeros", nasl_insert_hexzeros},
293 {"dec2str", nasl_dec2str},
294 {"get_signature", nasl_get_sign},
295 {"get_smb2_signature", nasl_get_smb2_sign},
296 {"smb_cmac_aes_signature", nasl_smb_cmac_aes_sign},
297 {"smb_gmac_aes_signature", nasl_smb_gmac_aes_sign},
298 {"dh_generate_key", nasl_dh_generate_key},
299 {"bn_random", nasl_bn_random},
300 {"bn_cmp", nasl_bn_cmp},
301 {"dh_compute_key", nasl_dh_compute_key},
302 {"rsa_public_encrypt", nasl_rsa_public_encrypt},
303 {"rsa_private_decrypt", nasl_rsa_private_decrypt},
304 {"rsa_public_decrypt", nasl_rsa_public_decrypt},
305 {"bf_cbc_encrypt", nasl_bf_cbc_encrypt},
306 {"bf_cbc_decrypt", nasl_bf_cbc_decrypt},
307 {"rc4_encrypt", nasl_rc4_encrypt},
308 {"aes_mac_cbc", nasl_aes_mac_cbc},
309 {"aes_mac_gcm", nasl_aes_mac_gcm},
310 {"aes128_cbc_encrypt", nasl_aes128_cbc_encrypt},
311 {"aes256_cbc_encrypt", nasl_aes256_cbc_encrypt},
312 {"aes128_ctr_encrypt", nasl_aes128_ctr_encrypt},
313 {"aes256_ctr_encrypt", nasl_aes256_ctr_encrypt},
314 {"aes128_gcm_encrypt", nasl_aes128_gcm_encrypt},
315 {"aes128_gcm_encrypt_auth", nasl_aes128_gcm_encrypt_auth},
316 {"aes128_gcm_decrypt", nasl_aes128_gcm_decrypt},
317 {"aes128_gcm_decrypt_auth", nasl_aes128_gcm_decrypt_auth},
318 {"aes256_gcm_encrypt", nasl_aes256_gcm_encrypt},
319 {"aes256_gcm_encrypt_auth", nasl_aes256_gcm_encrypt_auth},
320 {"aes256_gcm_decrypt", nasl_aes256_gcm_decrypt},
321 {"aes256_gcm_decrypt_auth", nasl_aes256_gcm_decrypt_auth},
322 {"aes128_ccm_encrypt", nasl_aes128_ccm_encrypt},
323 {"aes128_ccm_encrypt_auth", nasl_aes128_ccm_encrypt_auth},
324 {"aes128_ccm_decrypt", nasl_aes128_ccm_decrypt},
325 {"aes128_ccm_decrypt_auth", nasl_aes128_ccm_decrypt_auth},
326 {"aes256_ccm_encrypt", nasl_aes256_ccm_encrypt},
327 {"aes256_ccm_encrypt_auth", nasl_aes256_ccm_encrypt_auth},
328 {"aes256_ccm_decrypt", nasl_aes256_ccm_decrypt},
329 {"aes256_ccm_decrypt_auth", nasl_aes256_ccm_decrypt_auth},
330 {"smb3kdf", nasl_smb3kdf},
331 {"des_ede_cbc_encrypt", nasl_des_ede_cbc_encrypt},
332 {"open_rc4_cipher", nasl_open_rc4_cipher},
333 {"close_stream_cipher", nasl_close_stream_cipher},
334 {"dsa_do_verify", nasl_dsa_do_verify},
335 {"pem_to_rsa", nasl_pem_to_rsa},
336 {"pem_to_dsa", nasl_pem_to_dsa},
337 {"rsa_sign", nasl_rsa_sign},
338 {"dsa_do_sign", nasl_dsa_do_sign},
339 {"gunzip", nasl_gunzip},
340 {"gzip", nasl_gzip},
341 {"DES", nasl_cipher_des},
342 {"snmpv1_get", nasl_snmpv1_get},
343 {"snmpv1_getnext", nasl_snmpv1_getnext},
344 {"snmpv2c_get", nasl_snmpv2c_get},
345 {"snmpv2c_getnext", nasl_snmpv2c_getnext},
346 {"snmpv3_get", nasl_snmpv3_get},
347 {"snmpv3_getnext", nasl_snmpv3_getnext},
348 {"ssh_connect", nasl_ssh_connect},
349 {"ssh_disconnect", nasl_ssh_disconnect},
350 {"ssh_session_id_from_sock", nasl_ssh_session_id_from_sock},
351 {"ssh_get_sock", nasl_ssh_get_sock},
352 {"ssh_set_login", nasl_ssh_set_login},
353 {"ssh_userauth", nasl_ssh_userauth},
354 {"ssh_login_interactive", nasl_ssh_login_interactive},
355 {"ssh_login_interactive_pass", nasl_ssh_login_interactive_pass},
356 {"ssh_request_exec", nasl_ssh_request_exec},
357 {"ssh_shell_open", nasl_ssh_shell_open},
358 {"ssh_shell_read", nasl_ssh_shell_read},
359 {"ssh_shell_write", nasl_ssh_shell_write},
360 {"ssh_shell_close", nasl_ssh_shell_close},
361 {"ssh_get_issue_banner", nasl_ssh_get_issue_banner},
362 {"ssh_get_server_banner", nasl_ssh_get_server_banner},
363 {"ssh_get_auth_methods", nasl_ssh_get_auth_methods},
364 {"ssh_get_host_key", nasl_ssh_get_host_key},
365 {"ssh_execute_netconf_subsystem", nasl_ssh_execute_netconf_subsystem},
366 {"sftp_enabled_check", nasl_sftp_enabled_check},
367#ifdef HAVE_LIBKSBA
368 {"cert_open", nasl_cert_open},
369 {"cert_close", nasl_cert_close},
370 {"cert_query", nasl_cert_query},
371#endif /*HAVE_LIBKSBA*/
372
373 {"pread", nasl_pread},
374 {"find_in_path", nasl_find_in_path},
375 {"fread", nasl_fread},
376 {"fwrite", nasl_fwrite},
377 {"unlink", nasl_unlink},
378 {"get_tmp_dir", nasl_get_tmp_dir},
379 {"get_byte_order", nasl_get_byte_order},
380 {"file_stat", nasl_file_stat},
381 {"file_open", nasl_file_open},
382 {"file_close", nasl_file_close},
383 {"file_read", nasl_file_read},
384 {"file_write", nasl_file_write},
385 {"file_seek", nasl_file_seek},
386 {"wmi_versioninfo", nasl_wmi_versioninfo},
387 {"wmi_connect", nasl_wmi_connect},
388 {"wmi_close", nasl_wmi_close},
389 {"wmi_query", nasl_wmi_query},
390 {"wmi_connect_rsop", nasl_wmi_connect_rsop},
391 {"wmi_query_rsop", nasl_wmi_query_rsop},
392 {"wmi_connect_reg", nasl_wmi_connect_reg},
393 {"wmi_reg_enum_key", nasl_wmi_reg_enum_key},
394 {"wmi_reg_enum_value", nasl_wmi_reg_enum_value},
395 {"wmi_reg_get_sz", nasl_wmi_reg_get_sz},
396 {"wmi_reg_get_bin_val", nasl_wmi_reg_get_bin_val},
397 {"wmi_reg_get_dword_val", nasl_wmi_reg_get_dword_val},
398 {"wmi_reg_get_ex_string_val", nasl_wmi_reg_get_ex_string_val},
399 {"wmi_reg_get_mul_string_val", nasl_wmi_reg_get_mul_string_val},
400 {"wmi_reg_get_qword_val", nasl_wmi_reg_get_qword_val},
401 {"wmi_reg_set_dword_val", nasl_wmi_reg_set_dword_val},
402 {"wmi_reg_set_qword_val", nasl_wmi_reg_set_qword_val},
403 {"wmi_reg_set_ex_string_val", nasl_wmi_reg_set_ex_string_val},
404 {"wmi_reg_set_string_val", nasl_wmi_reg_set_string_val},
405 {"wmi_reg_create_key", nasl_wmi_reg_create_key},
406 {"wmi_reg_delete_key", nasl_wmi_reg_delete_key},
407 {"smb_versioninfo", nasl_smb_versioninfo},
408 {"smb_connect", nasl_smb_connect},
409 {"smb_close", nasl_smb_close},
410 {"smb_file_SDDL", nasl_smb_file_SDDL},
411 {"smb_file_owner_sid", nasl_smb_file_owner_sid},
412 {"smb_file_group_sid", nasl_smb_file_group_sid},
413 {"smb_file_trustee_rights", nasl_smb_file_trustee_rights},
414 {"win_cmd_exec", nasl_win_cmd_exec},
415 {"plugin_run_find_service", plugin_run_find_service},
416 {"plugin_run_openvas_tcp_scanner", plugin_run_openvas_tcp_scanner},
417 {"plugin_run_synscan", plugin_run_synscan},
418 {"isotime_now", nasl_isotime_now},
419 {"isotime_is_valid", nasl_isotime_is_valid},
420 {"isotime_scan", nasl_isotime_scan},
421 {"isotime_print", nasl_isotime_print},
422 {"isotime_add", nasl_isotime_add},
423 // krb5
424 {"krb5_find_kdc", nasl_okrb5_find_kdc},
425 {"krb5_is_success", nasl_okrb5_is_success},
426 {"krb5_is_failure", nasl_okrb5_is_failure},
427 {"krb5_gss_init", nasl_okrb5_gss_init},
428 {"krb5_gss_prepare_context", nasl_okrb5_gss_prepare_context},
429 {"krb5_gss_update_context", nasl_okrb5_gss_update_context},
430 {"krb5_gss_update_context_needs_more",
432 {"krb5_gss_update_context_out", nasl_okrb5_gss_update_context_out},
433 {"krb5_gss_session_key", nasl_okrb5_gss_session_key_context},
434 {"krb5_error_code_to_string", nasl_okrb5_error_code_to_string},
435 {NULL, NULL}};
tree_cell * plugin_run_find_service(lex_ctxt *lexic)
tree_cell * plugin_run_openvas_tcp_scanner(lex_ctxt *lexic)
tree_cell * plugin_run_synscan(lex_ctxt *)
tree_cell * nasl_cert_open(lex_ctxt *lexic)
tree_cell * nasl_cert_query(lex_ctxt *lexic)
tree_cell * nasl_cert_close(lex_ctxt *lexic)
tree_cell * nasl_pread(lex_ctxt *lexic)
Spawn a process.
tree_cell * nasl_file_seek(lex_ctxt *lexic)
Seek in file.
tree_cell * nasl_unlink(lex_ctxt *lexic)
Unlink file.
tree_cell * nasl_get_tmp_dir(lex_ctxt *lexic)
tree_cell * nasl_file_stat(lex_ctxt *lexic)
Stat file.
tree_cell * nasl_fwrite(lex_ctxt *lexic)
Write file.
tree_cell * nasl_find_in_path(lex_ctxt *lexic)
tree_cell * nasl_file_write(lex_ctxt *lexic)
Write file.
tree_cell * nasl_file_read(lex_ctxt *lexic)
Read file.
tree_cell * nasl_file_open(lex_ctxt *lexic)
Open file.
tree_cell * nasl_file_close(lex_ctxt *lexic)
Close file.
tree_cell * nasl_fread(lex_ctxt *lexic)
Read file.
tree_cell * nasl_aes128_ccm_decrypt(lex_ctxt *lexic)
tree_cell * nasl_aes256_ccm_encrypt_auth(lex_ctxt *lexic)
tree_cell * nasl_aes128_gcm_encrypt_auth(lex_ctxt *lexic)
tree_cell * nasl_aes256_ccm_decrypt_auth(lex_ctxt *lexic)
tree_cell * nasl_aes_mac_cbc(lex_ctxt *lexic)
tree_cell * nasl_rsa_public_decrypt(lex_ctxt *lexic)
tree_cell * nasl_aes256_gcm_encrypt(lex_ctxt *lexic)
tree_cell * nasl_pem_to_rsa(lex_ctxt *lexic)
tree_cell * nasl_aes128_ccm_encrypt_auth(lex_ctxt *lexic)
tree_cell * nasl_aes128_ctr_encrypt(lex_ctxt *lexic)
tree_cell * nasl_aes128_ccm_encrypt(lex_ctxt *lexic)
tree_cell * nasl_aes128_gcm_decrypt_auth(lex_ctxt *lexic)
tree_cell * nasl_rc4_encrypt(lex_ctxt *lexic)
Nasl function to encrypt data with a RC4 cipher. If an hd param exist in the lexix context,...
tree_cell * nasl_close_stream_cipher(lex_ctxt *lexic)
Nasl function to delete a cipher item from the cipher table.
tree_cell * nasl_aes_mac_gcm(lex_ctxt *lexic)
tree_cell * nasl_rsa_public_encrypt(lex_ctxt *lexic)
tree_cell * nasl_aes256_gcm_encrypt_auth(lex_ctxt *lexic)
tree_cell * nasl_rsa_private_decrypt(lex_ctxt *lexic)
tree_cell * nasl_aes256_ccm_encrypt(lex_ctxt *lexic)
tree_cell * nasl_aes256_gcm_decrypt(lex_ctxt *lexic)
tree_cell * nasl_aes256_ctr_encrypt(lex_ctxt *lexic)
tree_cell * nasl_open_rc4_cipher(lex_ctxt *lexic)
Nasl function to open RC4 cipher to encrypt a stream of data. The handler can be used to encrypt stre...
tree_cell * nasl_aes256_gcm_decrypt_auth(lex_ctxt *lexic)
tree_cell * nasl_aes128_ccm_decrypt_auth(lex_ctxt *lexic)
tree_cell * nasl_aes128_cbc_encrypt(lex_ctxt *lexic)
tree_cell * nasl_bn_cmp(lex_ctxt *lexic)
tree_cell * nasl_dsa_do_verify(lex_ctxt *lexic)
tree_cell * nasl_bn_random(lex_ctxt *lexic)
tree_cell * nasl_rsa_sign(lex_ctxt *lexic)
tree_cell * nasl_dh_generate_key(lex_ctxt *lexic)
tree_cell * nasl_aes256_cbc_encrypt(lex_ctxt *lexic)
tree_cell * nasl_bf_cbc_encrypt(lex_ctxt *lexic)
tree_cell * nasl_aes128_gcm_decrypt(lex_ctxt *lexic)
tree_cell * nasl_smb3kdf(lex_ctxt *lexic)
Add the SMB3KDF as specified in [SP800-108] section 5.1.
tree_cell * nasl_des_ede_cbc_encrypt(lex_ctxt *lexic)
tree_cell * nasl_aes128_gcm_encrypt(lex_ctxt *lexic)
tree_cell * nasl_dsa_do_sign(lex_ctxt *lexic)
tree_cell * nasl_aes256_ccm_decrypt(lex_ctxt *lexic)
tree_cell * nasl_bf_cbc_decrypt(lex_ctxt *lexic)
tree_cell * nasl_pem_to_dsa(lex_ctxt *lexic)
tree_cell * nasl_dh_compute_key(lex_ctxt *lexic)
tree_cell * nasl_get_smb2_sign(lex_ctxt *lexic)
tree_cell * nasl_ripemd160(lex_ctxt *lexic)
tree_cell * nasl_hmac_sha1(lex_ctxt *lexic)
tree_cell * nasl_prf_sha256(lex_ctxt *lexic)
tree_cell * nasl_hmac_md2(lex_ctxt *lexic)
tree_cell * nasl_sha256(lex_ctxt *lexic)
tree_cell * nasl_smb_cmac_aes_sign(lex_ctxt *lexic)
tree_cell * nasl_hmac_sha256(lex_ctxt *lexic)
tree_cell * nasl_nt_owf_gen(lex_ctxt *lexic)
tree_cell * nasl_md2(lex_ctxt *lexic)
tree_cell * nasl_ntlm2_response(lex_ctxt *lexic)
tree_cell * nasl_ntlmv1_hash(lex_ctxt *lexic)
tree_cell * nasl_keyexchg(lex_ctxt *lexic)
tree_cell * nasl_sha1(lex_ctxt *lexic)
tree_cell * nasl_ntlm_response(lex_ctxt *lexic)
tree_cell * nasl_hmac_sha512(lex_ctxt *lexic)
tree_cell * nasl_sha512(lex_ctxt *lexic)
tree_cell * nasl_smb_gmac_aes_sign(lex_ctxt *lexic)
tree_cell * nasl_md5(lex_ctxt *lexic)
tree_cell * nasl_prf_sha384(lex_ctxt *lexic)
tree_cell * nasl_hmac_ripemd160(lex_ctxt *lexic)
tree_cell * nasl_tls1_prf(lex_ctxt *lexic)
tree_cell * nasl_hmac_sha384(lex_ctxt *lexic)
tree_cell * nasl_lm_owf_gen(lex_ctxt *lexic)
tree_cell * nasl_md4(lex_ctxt *lexic)
tree_cell * nasl_hmac_md5(lex_ctxt *lexic)
tree_cell * nasl_get_sign(lex_ctxt *lexic)
tree_cell * nasl_ntv2_owf_gen(lex_ctxt *lexic)
tree_cell * nasl_cipher_des(lex_ctxt *lexic)
tree_cell * nasl_ntlmv2_response(lex_ctxt *lexic)
tree_cell * nasl_ntlmv2_hash(lex_ctxt *lexic)
tree_cell * nasl_insert_hexzeros(lex_ctxt *lexic)
tree_cell * nasl_send_frame(lex_ctxt *lexic)
Send a frame and listen to the answer.
tree_cell * nasl_dump_frame(lex_ctxt *lexic)
Dump a datalink layer frame.
tree_cell * nasl_get_local_mac_address_from_ip(lex_ctxt *lexic)
Get the MAC address of host.
tree_cell * nasl_forge_frame(lex_ctxt *lexic)
Forge a datalink layer frame.
tree_cell * nasl_send_arp_request(lex_ctxt *lexic)
Send an arp request to an IP host.
tree_cell * nasl_same_host(lex_ctxt *lexic)
Definition nasl_host.c:484
tree_cell * nasl_this_host_name(lex_ctxt *lexic)
Definition nasl_host.c:406
tree_cell * get_hostname_source(lex_ctxt *lexic)
Definition nasl_host.c:95
tree_cell * get_port_state(lex_ctxt *lexic)
Definition nasl_host.c:292
tree_cell * get_hostname(lex_ctxt *lexic)
Definition nasl_host.c:79
tree_cell * nasl_islocalhost(lex_ctxt *lexic)
Definition nasl_host.c:329
tree_cell * nasl_islocalnet(lex_ctxt *lexic)
Definition nasl_host.c:341
tree_cell * nasl_this_host(lex_ctxt *lexic)
Definition nasl_host.c:353
tree_cell * get_host_ip(lex_ctxt *lexic)
Definition nasl_host.c:208
tree_cell * get_port_transport(lex_ctxt *lexic)
Return the encapsulation mode of a port.
Definition nasl_host.c:456
tree_cell * resolve_hostname(lex_ctxt *lexic)
Definition nasl_host.c:186
tree_cell * get_host_open_port(lex_ctxt *lexic)
Definition nasl_host.c:227
tree_cell * get_udp_port_state(lex_ctxt *lexic)
Definition nasl_host.c:311
tree_cell * nasl_target_is_ipv6(lex_ctxt *lexic)
Definition nasl_host.c:612
tree_cell * add_hostname(lex_ctxt *lexic)
Definition nasl_host.c:113
tree_cell * host_reverse_lookup(lex_ctxt *lexic)
implements ip_reverse_lookup
Definition nasl_host.c:245
tree_cell * get_hostnames(lex_ctxt *lexic)
Definition nasl_host.c:49
tree_cell * resolve_hostname_to_multiple_ips(lex_ctxt *lexic)
Resolve a hostname and return all ip addresses as nasl array.
Definition nasl_host.c:153
tree_cell * nasl_http2_handle(lex_ctxt *lexic)
Creates a handle for http requests.
Definition nasl_http2.c:84
tree_cell * nasl_http2_get_response_code(lex_ctxt *lexic)
Get the http response code after performing a HTTP request.
Definition nasl_http2.c:436
tree_cell * nasl_http2_head(lex_ctxt *lexic)
Wrapper function for HEAD request. See _http2_req.
Definition nasl_http2.c:533
tree_cell * nasl_http2_get(lex_ctxt *lexic)
Wrapper function for GET request. See _http2_req.
Definition nasl_http2.c:525
tree_cell * nasl_http2_close_handle(lex_ctxt *lexic)
Close a handle for http requests previously initialized.
Definition nasl_http2.c:129
tree_cell * nasl_http2_put(lex_ctxt *lexic)
Wrapper function for PUT request. See _http2_req.
Definition nasl_http2.c:557
tree_cell * nasl_http2_set_custom_header(lex_ctxt *lexic)
Set a custom header element in the header.
Definition nasl_http2.c:482
tree_cell * nasl_http2_delete(lex_ctxt *lexic)
Wrapper function for DELETE request. See _http2_req.
Definition nasl_http2.c:549
tree_cell * nasl_http2_post(lex_ctxt *lexic)
Wrapper function for POST request. See _http2_req.
Definition nasl_http2.c:541
tree_cell * http_close_socket(lex_ctxt *lexic)
Definition nasl_http.c:41
tree_cell * http_head(lex_ctxt *lexic)
Definition nasl_http.c:193
tree_cell * http_put(lex_ctxt *lexic)
Definition nasl_http.c:221
tree_cell * http_open_socket(lex_ctxt *lexic)
Definition nasl_http.c:35
tree_cell * cgibin(lex_ctxt *lexic)
Definition nasl_http.c:229
tree_cell * http_get(lex_ctxt *lexic)
Definition nasl_http.c:181
tree_cell * http_delete(lex_ctxt *lexic)
Definition nasl_http.c:212
tree_cell * http_post(lex_ctxt *lexic)
Definition nasl_http.c:203
tree_cell * nasl_isotime_add(lex_ctxt *lexic)
Add days or seconds to an ISO time string.
tree_cell * nasl_isotime_is_valid(lex_ctxt *lexic)
Check whether an ISO time string is valid.
tree_cell * nasl_isotime_print(lex_ctxt *lexic)
Convert an SIO time string into a better readable string.
tree_cell * nasl_isotime_now(lex_ctxt *lexic)
Return the current time in ISO format.
tree_cell * nasl_isotime_scan(lex_ctxt *lexic)
Convert a string into an ISO time string.
tree_cell * nasl_okrb5_is_failure(lex_ctxt *lexic)
Returns 0 if the krb5 function was successful and 1 if it failed.
Definition nasl_krb5.c:235
tree_cell * nasl_okrb5_find_kdc(lex_ctxt *lexic)
Returns the defined KDC of a given Realm.
Definition nasl_krb5.c:151
tree_cell * nasl_okrb5_gss_session_key_context(lex_ctxt *lexic)
Definition nasl_krb5.c:362
tree_cell * nasl_okrb5_gss_update_context_out(lex_ctxt *lexic)
Definition nasl_krb5.c:347
tree_cell * nasl_okrb5_gss_update_context_needs_more(lex_ctxt *lexic)
Definition nasl_krb5.c:329
tree_cell * nasl_okrb5_gss_update_context(lex_ctxt *lexic)
Definition nasl_krb5.c:282
tree_cell * nasl_okrb5_gss_prepare_context(lex_ctxt *lexic)
Definition nasl_krb5.c:262
tree_cell * nasl_okrb5_error_code_to_string(lex_ctxt *lexic)
Definition nasl_krb5.c:381
tree_cell * nasl_okrb5_gss_init(lex_ctxt *lexic)
Definition nasl_krb5.c:245
tree_cell * nasl_okrb5_is_success(lex_ctxt *lexic)
Returns 1 if the krb5 function was successful 0 otherwise.
Definition nasl_krb5.c:214
tree_cell * nasl_telnet_init(lex_ctxt *lexic)
tree_cell * nasl_rand(lex_ctxt *lexic)
tree_cell * nasl_localtime(lex_ctxt *lexic)
tree_cell * nasl_ftp_get_pasv_address(lex_ctxt *lexic)
tree_cell * nasl_unixtime(lex_ctxt *lexic)
tree_cell * nasl_make_list(lex_ctxt *lexic)
tree_cell * nasl_mktime(lex_ctxt *lexic)
tree_cell * nasl_dec2str(lex_ctxt *lexic)
tree_cell * nasl_sleep(lex_ctxt *lexic)
tree_cell * nasl_isnull(lex_ctxt *lexic)
tree_cell * nasl_dump_ctxt(lex_ctxt *lexic)
tree_cell * nasl_open_sock_kdc(lex_ctxt *lexic)
tree_cell * nasl_gunzip(lex_ctxt *lexic)
tree_cell * nasl_defined_func(lex_ctxt *lexic)
tree_cell * nasl_keys(lex_ctxt *lexic)
tree_cell * nasl_do_exit(lex_ctxt *lexic)
tree_cell * nasl_typeof(lex_ctxt *lexic)
tree_cell * nasl_get_byte_order(lex_ctxt *lexic)
tree_cell * nasl_start_denial(lex_ctxt *lexic)
tree_cell * nasl_end_denial(lex_ctxt *lexic)
tree_cell * nasl_sort_array(lex_ctxt *lexic)
tree_cell * nasl_gzip(lex_ctxt *lexic)
tree_cell * nasl_ftp_log_in(lex_ctxt *lexic)
tree_cell * nasl_usleep(lex_ctxt *lexic)
tree_cell * nasl_max_index(lex_ctxt *lexic)
tree_cell * nasl_make_array(lex_ctxt *lexic)
tree_cell * nasl_gettimeofday(lex_ctxt *lexic)
tree_cell * insert_ip_options(lex_ctxt *lexic)
Add option datagram.
tree_cell * nasl_tcp_ping(lex_ctxt *lexic)
Launches a “TCP ping” against the target host.
tree_cell * set_udp_elements(lex_ctxt *lexic)
Modify UDP fields of an IP datagram.
tree_cell * get_tcp_element(lex_ctxt *lexic)
Extracts TCP field from an IP datagram.
tree_cell * get_tcp_option(lex_ctxt *lexic)
Get a TCP option from an IP datagram if present. Possible options are: TCPOPT_MAXSEG (2),...
tree_cell * forge_ip_packet(lex_ctxt *lexic)
Forge an IP datagram.
tree_cell * dump_icmp_packet(lex_ctxt *lexic)
Dump the ICMP part of a IP Datagram.
tree_cell * set_ip_elements(lex_ctxt *lexic)
Modify the fields of a datagram.
tree_cell * dump_ip_packet(lex_ctxt *lexic)
Dump IP datagrams.
tree_cell * insert_tcp_options(lex_ctxt *lexic)
Add options to a TCP segment header. Possible options are: TCPOPT_MAXSEG (2), values between 536 and ...
tree_cell * nasl_pcap_next(lex_ctxt *lexic)
Listen to one packet and return it.
tree_cell * set_tcp_elements(lex_ctxt *lexic)
Modify the TCP fields of a datagram.
tree_cell * dump_tcp_packet(lex_ctxt *lexic)
Dump the TCP part of a IP Datagram.
tree_cell * forge_tcp_packet(lex_ctxt *lexic)
Fills an IP datagram with TCP data. Note that the ip_p field is not updated. It returns the modified ...
tree_cell * dump_udp_packet(lex_ctxt *lexic)
Dump the UDP part of a IP Datagram.
tree_cell * get_icmp_element(lex_ctxt *lexic)
Get an ICMP element from a IP datagram.
tree_cell * nasl_send_packet(lex_ctxt *lexic)
Send a list of packets (passed as unnamed arguments) and listens to the answers. It returns a block m...
tree_cell * nasl_send_capture(lex_ctxt *lexic)
Send a capture.
tree_cell * forge_icmp_packet(lex_ctxt *lexic)
Fill an IP datagram with ICMP data.
tree_cell * get_udp_element(lex_ctxt *lexic)
Get an UDP element from a IP datagram.
tree_cell * forge_udp_packet(lex_ctxt *lexic)
Fills an IP datagram with UDP data. Note that the ip_p field is not updated. It returns the modified ...
tree_cell * get_ip_element(lex_ctxt *lexic)
Extracts a field from an IP datagram.
tree_cell * forge_igmp_packet(lex_ctxt *lexic)
Fills an IP datagram with IGMP data.
tree_cell * get_ip_v6_element(lex_ctxt *lexic)
Obtain IPv6 header element.
tree_cell * dump_ip_v6_packet(lex_ctxt *lexic)
Print IPv6 Header.
tree_cell * set_ip_v6_elements(lex_ctxt *lexic)
Set IPv6 header element.
tree_cell * dump_icmp_v6_packet(lex_ctxt *lexic)
Dump the ICMP part of a IP Datagram.
tree_cell * get_tcp_v6_element(lex_ctxt *lexic)
Get TCP Header element.
tree_cell * forge_ip_v6_packet(lex_ctxt *lexic)
Forge an IPv6 packet.
tree_cell * forge_igmp_v6_packet(lex_ctxt *lexic)
tree_cell * set_udp_v6_elements(lex_ctxt *lexic)
tree_cell * dump_tcp_v6_packet(lex_ctxt *lexic)
Dump TCP part of an IPv6 Datagram.
tree_cell * set_tcp_v6_elements(lex_ctxt *lexic)
Set TCP Header element.
tree_cell * get_tcp_v6_option(lex_ctxt *lexic)
Get a TCP option from an IP datagram if present. Possible options are: TCPOPT_MAXSEG (2),...
tree_cell * insert_ip_v6_options(lex_ctxt *lexic)
Adds an IPv6 option to the datagram.
tree_cell * forge_tcp_v6_packet(lex_ctxt *lexic)
Forge TCP packet.
tree_cell * forge_udp_v6_packet(lex_ctxt *lexic)
tree_cell * get_icmp_v6_element(lex_ctxt *lexic)
tree_cell * insert_tcp_v6_options(lex_ctxt *lexic)
Add options to a TCP segment header. Possible options are: TCPOPT_MAXSEG (2), values between 536 and ...
tree_cell * nasl_tcp_v6_ping(lex_ctxt *lexic)
Performs TCP Connect to test if host is alive.
tree_cell * nasl_send_v6packet(lex_ctxt *lexic)
Send forged IPv6 Packets.
tree_cell * get_udp_v6_element(lex_ctxt *lexic)
tree_cell * dump_udp_v6_packet(lex_ctxt *lexic)
tree_cell * forge_icmp_v6_packet(lex_ctxt *lexic)
tree_cell * script_tag(lex_ctxt *lexic)
tree_cell * security_notus(lex_ctxt *lexic)
tree_cell * log_message(lex_ctxt *lexic)
tree_cell * nasl_scanner_status(lex_ctxt *lexic)
tree_cell * nasl_notus(lex_ctxt *lexic)
Directly runs a LSC with the given package list and OS release.
tree_cell * script_family(lex_ctxt *lexic)
tree_cell * script_get_preference(lex_ctxt *lexic)
Get a preferences of the current script.
tree_cell * script_get_preference_file_content(lex_ctxt *lexic)
tree_cell * nasl_update_table_driven_lsc_data(lex_ctxt *lexic)
Communicate to the parent process that LSC data is ready for use in the host kb.
tree_cell * script_get_preference_file_location(lex_ctxt *lexic)
tree_cell * error_message2(lex_ctxt *lexic)
tree_cell * script_xref(lex_ctxt *lexic)
Add a cross reference to the meta data.
tree_cell * security_message(lex_ctxt *lexic)
Send a security message to the client.
tree_cell * nasl_scanner_add_port(lex_ctxt *lexic)
tree_cell * get_host_kb_index(lex_ctxt *lexic)
Get the kb index of the host running the current script.
tree_cell * safe_checks(lex_ctxt *lexic)
tree_cell * script_name(lex_ctxt *lexic)
tree_cell * script_copyright(lex_ctxt *lexic)
tree_cell * script_add_preference(lex_ctxt *lexic)
tree_cell * nasl_scanner_get_port(lex_ctxt *lexic)
tree_cell * get_script_oid(lex_ctxt *lexic)
Return the OID of the current script.
tree_cell * script_oid(lex_ctxt *lexic)
tree_cell * nasl_vendor_version(lex_ctxt *lexic)
tree_cell * script_category(lex_ctxt *lexic)
tree_cell * get_kb_list(lex_ctxt *lexic)
tree_cell * script_timeout(lex_ctxt *lexic)
Add timeout preference to VT preferences.
tree_cell * script_require_udp_ports(lex_ctxt *lexic)
tree_cell * nasl_notus_type(lex_ctxt *lexic)
Get the Notus scan type.
tree_cell * get_kb_item(lex_ctxt *lexic)
tree_cell * script_mandatory_keys(lex_ctxt *lexic)
tree_cell * script_dependencies(lex_ctxt *lexic)
tree_cell * script_exclude_keys(lex_ctxt *lexic)
tree_cell * set_kb_item(lex_ctxt *lexic)
Set a kb item.
tree_cell * nasl_notus_error(lex_ctxt *lexic)
Get the last Notus error as string.
tree_cell * replace_kb_item(lex_ctxt *lexic)
tree_cell * script_require_ports(lex_ctxt *lexic)
tree_cell * script_require_keys(lex_ctxt *lexic)
tree_cell * script_cve_id(lex_ctxt *lexic)
tree_cell * script_version(lex_ctxt *lexic)
tree_cell * nasl_get_preference(lex_ctxt *lexic)
tree_cell * nasl_smb_file_owner_sid(lex_ctxt *lexic)
Obtain File Owner SID.
Definition nasl_smb.c:206
tree_cell * nasl_smb_file_SDDL(lex_ctxt *lexic)
Obtain Security Descriptor in SDDL format.
Definition nasl_smb.c:163
tree_cell * nasl_smb_file_trustee_rights(lex_ctxt *lexic)
Obtain File Trustee SID with Access Mask.
Definition nasl_smb.c:292
tree_cell * nasl_smb_versioninfo(lex_ctxt *lexic)
Get a version string of the SMB implementation.
Definition nasl_smb.c:50
tree_cell * nasl_smb_close(lex_ctxt *lexic)
Close SMB service handle.
Definition nasl_smb.c:133
tree_cell * nasl_smb_connect(lex_ctxt *lexic)
Connect to SMB service and return a handle for it.
Definition nasl_smb.c:78
tree_cell * nasl_smb_file_group_sid(lex_ctxt *lexic)
Obtain File Group SID.
Definition nasl_smb.c:249
tree_cell * nasl_win_cmd_exec(lex_ctxt *lexic)
Execute the command in windows.
Definition nasl_smb.c:337
tree_cell * nasl_snmpv3_getnext(lex_ctxt *lexic)
Definition nasl_snmp.c:838
tree_cell * nasl_snmpv1_get(lex_ctxt *lexic)
Definition nasl_snmp.c:703
tree_cell * nasl_snmpv2c_get(lex_ctxt *lexic)
Definition nasl_snmp.c:715
tree_cell * nasl_snmpv3_get(lex_ctxt *lexic)
Definition nasl_snmp.c:832
tree_cell * nasl_snmpv1_getnext(lex_ctxt *lexic)
Definition nasl_snmp.c:709
tree_cell * nasl_snmpv2c_getnext(lex_ctxt *lexic)
Definition nasl_snmp.c:721
tree_cell * nasl_leave_multicast_group(lex_ctxt *lexic)
tree_cell * nasl_get_sock_info(lex_ctxt *lexic)
Get info pertaining to a socket.
tree_cell * nasl_recv_line(lex_ctxt *lexic)
tree_cell * nasl_socket_cert_verify(lex_ctxt *lexic)
Verify a certificate.
tree_cell * nasl_get_mtu(lex_ctxt *lexic)
tree_cell * nasl_open_priv_sock_udp(lex_ctxt *lexic)
tree_cell * nasl_recv(lex_ctxt *lexic)
tree_cell * nasl_send(lex_ctxt *lexic)
tree_cell * nasl_join_multicast_group(lex_ctxt *lexic)
tree_cell * nasl_socket_get_error(lex_ctxt *lexic)
tree_cell * nasl_socket_ssl_do_handshake(lex_ctxt *lexic)
Do a re-handshake of the TLS/SSL protocol.
tree_cell * nasl_socket_check_ssl_safe_renegotiation(lex_ctxt *lexic)
Check if Secure Renegotiation is supported in the server side.
tree_cell * nasl_socket_get_ssl_version(lex_ctxt *lexic)
tree_cell * nasl_get_source_port(lex_ctxt *lexic)
tree_cell * nasl_open_sock_udp(lex_ctxt *lexic)
tree_cell * nasl_close_socket(lex_ctxt *lexic)
tree_cell * nasl_open_sock_tcp(lex_ctxt *lexic)
Open a TCP socket to the target host.
tree_cell * nasl_socket_get_ssl_session_id(lex_ctxt *lexic)
tree_cell * nasl_socket_negotiate_ssl(lex_ctxt *lexic)
tree_cell * nasl_socket_get_cert(lex_ctxt *lexic)
tree_cell * nasl_socket_get_ssl_ciphersuite(lex_ctxt *lexic)
tree_cell * nasl_open_priv_sock_tcp(lex_ctxt *lexic)
tree_cell * nasl_ssh_shell_close(lex_ctxt *lexic)
Close an ssh shell.
Definition nasl_ssh.c:1958
tree_cell * nasl_ssh_shell_read(lex_ctxt *lexic)
Read the output of an ssh shell.
Definition nasl_ssh.c:1850
tree_cell * nasl_ssh_set_login(lex_ctxt *lexic)
Set the login name for the authentication.
Definition nasl_ssh.c:728
tree_cell * nasl_ssh_userauth(lex_ctxt *lexic)
Authenticate a user on an ssh connection.
Definition nasl_ssh.c:825
tree_cell * nasl_ssh_shell_open(lex_ctxt *lexic)
Request an ssh shell.
Definition nasl_ssh.c:1705
tree_cell * nasl_ssh_execute_netconf_subsystem(lex_ctxt *lexic)
Excecute the NETCONF subsystem on the the ssh channel.
Definition nasl_ssh.c:2060
tree_cell * nasl_ssh_login_interactive(lex_ctxt *lexic)
Authenticate a user on an ssh connection.
Definition nasl_ssh.c:1016
tree_cell * nasl_ssh_get_issue_banner(lex_ctxt *lexic)
Get the issue banner.
Definition nasl_ssh.c:1471
tree_cell * nasl_ssh_request_exec(lex_ctxt *lexic)
Run a command via ssh.
Definition nasl_ssh.c:1345
tree_cell * nasl_ssh_get_host_key(lex_ctxt *lexic)
Get the host key.
Definition nasl_ssh.c:1561
tree_cell * nasl_ssh_login_interactive_pass(lex_ctxt *lexic)
Authenticate a user on an ssh connection.
Definition nasl_ssh.c:1128
tree_cell * nasl_ssh_get_auth_methods(lex_ctxt *lexic)
Get the list of authmethods.
Definition nasl_ssh.c:1605
tree_cell * nasl_sftp_enabled_check(lex_ctxt *lexic)
Check if the SFTP subsystem is enabled on the remote SSH server.
Definition nasl_ssh.c:1993
tree_cell * nasl_ssh_disconnect(lex_ctxt *lexic)
Disconnect an ssh connection.
Definition nasl_ssh.c:513
tree_cell * nasl_ssh_connect(lex_ctxt *lexic)
Connect to the target host via TCP and setup an ssh connection.
Definition nasl_ssh.c:225
tree_cell * nasl_ssh_shell_write(lex_ctxt *lexic)
Write string to ssh shell.
Definition nasl_ssh.c:1902
tree_cell * nasl_ssh_get_server_banner(lex_ctxt *lexic)
Get the server banner.
Definition nasl_ssh.c:1520
tree_cell * nasl_ssh_session_id_from_sock(lex_ctxt *lexic)
Given a socket, return the corresponding session id.
Definition nasl_ssh.c:578
tree_cell * nasl_ssh_get_sock(lex_ctxt *lexic)
Given a session id, return the corresponding socket.
Definition nasl_ssh.c:621
tree_cell * nasl_hex(lex_ctxt *lexic)
tree_cell * nasl_display(lex_ctxt *lexic)
tree_cell * nasl_chomp(lex_ctxt *lexic)
Takes an unnamed string argument and removes any spaces at the end of it. "Space" means white space,...
tree_cell * nasl_strstr(lex_ctxt *lexic)
tree_cell * nasl_split(lex_ctxt *lexic)
tree_cell * nasl_tolower(lex_ctxt *lexic)
tree_cell * nasl_eregmatch(lex_ctxt *lexic)
Does extended regular expression pattern matching.
tree_cell * nasl_insstr(lex_ctxt *lexic)
tree_cell * nasl_substr(lex_ctxt *lexic)
tree_cell * nasl_rawstring(lex_ctxt *lexic)
tree_cell * nasl_egrep(lex_ctxt *lexic)
looks for a pattern in a string, line by line.
tree_cell * nasl_strcat(lex_ctxt *lexic)
tree_cell * nasl_str_replace(lex_ctxt *lexic)
tree_cell * nasl_strlen(lex_ctxt *lexic)
tree_cell * nasl_match(lex_ctxt *lexic)
tree_cell * nasl_string(lex_ctxt *lexic)
tree_cell * nasl_ereg_replace(lex_ctxt *lexic)
Search for a pattern in a string and replace it.
tree_cell * nasl_ord(lex_ctxt *lexic)
tree_cell * nasl_hexstr(lex_ctxt *lexic)
tree_cell * nasl_stridx(lex_ctxt *lexic)
Returns index of a substring.
tree_cell * nasl_ereg(lex_ctxt *lexic)
Matches a string against a regular expression.
tree_cell * nasl_int(lex_ctxt *lexic)
tree_cell * nasl_crap(lex_ctxt *lexic)
tree_cell * nasl_toupper(lex_ctxt *lexic)
tree_cell * nasl_wmi_close(lex_ctxt *lexic)
Close WMI service handle.
Definition nasl_wmi.c:191
tree_cell * nasl_wmi_reg_get_dword_val(lex_ctxt *lexic)
Get registry DWORD value.
Definition nasl_wmi.c:624
tree_cell * nasl_wmi_reg_get_bin_val(lex_ctxt *lexic)
Get registry binary value.
Definition nasl_wmi.c:579
tree_cell * nasl_wmi_reg_enum_key(lex_ctxt *lexic)
Enumerate registry keys.
Definition nasl_wmi.c:536
tree_cell * nasl_wmi_connect_reg(lex_ctxt *lexic)
Connect to a WMI Registry service and return a handle for it.
Definition nasl_wmi.c:388
tree_cell * nasl_wmi_reg_set_string_val(lex_ctxt *lexic)
Set Registry string value.
Definition nasl_wmi.c:950
tree_cell * nasl_wmi_reg_set_dword_val(lex_ctxt *lexic)
Set Registry DWORD value.
Definition nasl_wmi.c:808
tree_cell * nasl_wmi_query(lex_ctxt *lexic)
Perform WQL query.
Definition nasl_wmi.c:220
tree_cell * nasl_wmi_reg_get_mul_string_val(lex_ctxt *lexic)
Get registry multi valued strings.
Definition nasl_wmi.c:717
tree_cell * nasl_wmi_reg_set_ex_string_val(lex_ctxt *lexic)
Set Registry Expanded string value.
Definition nasl_wmi.c:908
tree_cell * nasl_wmi_reg_create_key(lex_ctxt *lexic)
Create Registry key.
Definition nasl_wmi.c:990
tree_cell * nasl_wmi_connect_rsop(lex_ctxt *lexic)
Connect to a WMI RSOP service and return a handle for it.
Definition nasl_wmi.c:275
tree_cell * nasl_wmi_reg_delete_key(lex_ctxt *lexic)
Delete Registry key.
Definition nasl_wmi.c:1029
tree_cell * nasl_wmi_reg_set_qword_val(lex_ctxt *lexic)
Set Registry QWORD value.
Definition nasl_wmi.c:858
tree_cell * nasl_wmi_connect(lex_ctxt *lexic)
Connect to a WMI service and return a handle for it.
Definition nasl_wmi.c:128
tree_cell * nasl_wmi_reg_enum_value(lex_ctxt *lexic)
Enumerate registry values.
Definition nasl_wmi.c:493
tree_cell * nasl_wmi_reg_get_ex_string_val(lex_ctxt *lexic)
Get registry expanded string value.
Definition nasl_wmi.c:672
tree_cell * nasl_wmi_reg_get_sz(lex_ctxt *lexic)
Get string value from Registry.
Definition nasl_wmi.c:448
tree_cell * nasl_wmi_query_rsop(lex_ctxt *lexic)
WMI RSOP query.
Definition nasl_wmi.c:334
tree_cell * nasl_wmi_reg_get_qword_val(lex_ctxt *lexic)
Get registry QWORD value.
Definition nasl_wmi.c:762
tree_cell * nasl_wmi_versioninfo(lex_ctxt *lexic)
Get a version string of the WMI implementation.
Definition nasl_wmi.c:94

Referenced by func_is_internal().

◆ [struct]

struct { ... } libivars[]

◆ [struct]

struct { ... } libsvars[]
Initial value:
= {
{"OPENVAS_VERSION", OPENVASLIB_VERSION},
{NULL, NULL},
}

Referenced by add_nasl_library(), and init_nasl_library().

◆ name

const char* name

Definition at line 440 of file nasl_init.c.

Referenced by __wrap_redis_push_str(), add_named_var_to_ctxt(), add_nasl_library(), add_var_to_array(), build_encode_URL(), check_dependency_cycles(), create_named_var(), exec_nasl_script(), find_charset_functions_ntlmssp(), func_is_internal(), get_argument_by_name(), get_array_elem(), get_func(), get_func_ref_by_name(), get_int_var_by_name(), get_notus_result_message(), get_plugin_preference(), get_str_var_by_name(), get_var_ref_by_name(), get_var_size_by_name(), get_var_type_by_name(), get_variable_by_name(), getinterfaces(), getipv4routes(), getipv6routes(), hosts_get(), hosts_new(), hosts_set_pid(), init_capture_device(), init_nasl_ctx(), init_nasl_library(), init_v6_capture_device(), ipaddr2devname(), is_utf16_ntlmssp(), kb_item_add_int_unique_with_main_kb_check(), kb_item_add_int_with_main_kb_check(), kb_item_add_str_unique_with_main_kb_check(), kb_item_push_str_with_main_kb_check(), kb_item_set_int_with_main_kb_check(), kb_item_set_str_with_main_kb_check(), launch_plugin(), lsc_process_response_notus(), nasl_get_preference(), nasl_pcap_next(), nasl_send_capture(), nasl_send_v6packet(), parse_notus(), plug_get_key(), plug_replace_key(), plug_replace_key_len(), plug_set_key(), plug_set_key_len(), plug_set_key_len_volatile(), plug_set_key_volatile(), plugin_add(), plugins_reload_from_dir(), replace_kb_item(), routethrough(), script_add_preference(), script_tag(), script_xref(), set_kb_item(), set_kb_item_volatile(), simple_register_host_detail(), update_running_processes(), v6_getinterfaces(), v6_getsourceip(), v6_ipaddr2devname(), v6_is_local_ip(), validate_script_xref(), and yyparse().

◆ val