#include <glib.h>
#include "../misc/scanneraux.h"
#include "nasl_tree.h"
#include "nasl_var.h"
#include "nasl_func.h"
Go to the source code of this file.
|
| lex_ctxt * | init_empty_lex_ctxt (void) |
| void | free_lex_ctxt (lex_ctxt *) |
| void | dump_ctxt (lex_ctxt *) |
| nasl_func * | get_func_ref_by_name (lex_ctxt *, const char *) |
| tree_cell * | decl_nasl_func (lex_ctxt *, tree_cell *, int) |
| nasl_func * | insert_nasl_func (lex_ctxt *, const char *, tree_cell *, int) |
| tree_cell * | nasl_func_call (lex_ctxt *, const nasl_func *, tree_cell *) |
| tree_cell * | get_variable_by_name (lex_ctxt *, const char *) |
| tree_cell * | get_array_elem (lex_ctxt *, const char *, tree_cell *) |
| anon_nasl_var * | add_numbered_var_to_ctxt (lex_ctxt *, int, tree_cell *) |
| named_nasl_var * | add_named_var_to_ctxt (lex_ctxt *, const char *, tree_cell *) |
| tree_cell * | nasl_read_var_ref (lex_ctxt *, tree_cell *) |
| tree_cell * | nasl_incr_variable (lex_ctxt *, tree_cell *, int, int) |
| tree_cell * | nasl_return (lex_ctxt *, tree_cell *) |
| tree_cell * | decl_local_variables (lex_ctxt *, tree_cell *) |
| tree_cell * | decl_global_variables (lex_ctxt *, tree_cell *) |
| tree_cell * | cell2atom (lex_ctxt *, tree_cell *) |
| long int | get_int_var_by_num (lex_ctxt *, int, int) |
| char * | get_str_var_by_num (lex_ctxt *, int) |
| long int | get_int_var_by_name (lex_ctxt *, const char *, int) |
| char * | get_str_var_by_name (lex_ctxt *, const char *) |
| int | get_var_size_by_name (lex_ctxt *, const char *) |
| int | get_var_type_by_name (lex_ctxt *, const char *) |
| int | get_var_size_by_num (lex_ctxt *, int) |
| int | get_var_type_by_num (lex_ctxt *, int) |
| | Returns NASL variable/cell type, VAR2_UNDEF if value is NULL.
|
◆ NASL_COMPAT_LEX_CTXT
| #define NASL_COMPAT_LEX_CTXT "NASL compat lex context" |
◆ lex_ctxt
◆ add_named_var_to_ctxt()
◆ add_numbered_var_to_ctxt()
◆ cell2atom()
- Returns
- A 'referenced' cell.
◆ decl_global_variables()
◆ decl_local_variables()
◆ decl_nasl_func()
◆ dump_ctxt()
◆ free_lex_ctxt()
◆ get_array_elem()
◆ get_func_ref_by_name()
◆ get_int_var_by_name()
| long int get_int_var_by_name |
( |
lex_ctxt * | lexic, |
|
|
const char * | name, |
|
|
int | defval ) |
◆ get_int_var_by_num()
| long int get_int_var_by_num |
( |
lex_ctxt * | lexic, |
|
|
int | num, |
|
|
int | defval ) |
◆ get_str_var_by_name()
| char * get_str_var_by_name |
( |
lex_ctxt * | lexic, |
|
|
const char * | name ) |
◆ get_str_var_by_num()
| char * get_str_var_by_num |
( |
lex_ctxt * | lexic, |
|
|
int | num ) |
◆ get_var_size_by_name()
| int get_var_size_by_name |
( |
lex_ctxt * | lexic, |
|
|
const char * | name ) |
◆ get_var_size_by_num()
| int get_var_size_by_num |
( |
lex_ctxt * | lexic, |
|
|
int | num ) |
◆ get_var_type_by_name()
| int get_var_type_by_name |
( |
lex_ctxt * | lexic, |
|
|
const char * | name ) |
◆ get_var_type_by_num()
| int get_var_type_by_num |
( |
lex_ctxt * | lexic, |
|
|
int | num ) |
Returns NASL variable/cell type, VAR2_UNDEF if value is NULL.
◆ get_variable_by_name()
◆ init_empty_lex_ctxt()
- Todo
- Initialization of the library seems intuitively be necessary only once (involves "linking" the nasl functions to c code). Consider a "prototype" context that has to be created only once and of which copies are made when needed.
◆ insert_nasl_func()
◆ nasl_func_call()
◆ nasl_incr_variable()
◆ nasl_read_var_ref()
◆ nasl_return()