OpenVAS Scanner 21.4.1
Data Structures | Macros | Typedefs | Enumerations | Functions
nasl_var.h File Reference
#include "nasl_tree.h"

Go to the source code of this file.

Data Structures

struct  st_nasl_string
 
struct  st_nasl_array
 
struct  st_a_nasl_var
 
struct  st_n_nasl_var
 
struct  nasl_iterator
 

Macros

#define VAR_NAME_HASH   17
 

Typedefs

typedef struct st_nasl_string nasl_string_t
 
typedef struct st_nasl_array nasl_array
 
typedef struct st_a_nasl_var anon_nasl_var
 
typedef struct st_n_nasl_var named_nasl_var
 

Enumerations

enum  {
  VAR2_UNDEF = 0 , VAR2_INT , VAR2_STRING , VAR2_DATA ,
  VAR2_ARRAY
}
 

Functions

tree_cellnasl_affect (tree_cell *, tree_cell *)
 
void clear_unnamed_var (anon_nasl_var *)
 
const char * var2str (anon_nasl_var *)
 
anon_nasl_varnasl_get_var_by_num (void *, nasl_array *, int, int)
 
nasl_iterator nasl_array_iterator (void *, tree_cell *)
 
tree_cellnasl_iterate_array (nasl_iterator *)
 
int add_var_to_list (nasl_array *, int, const anon_nasl_var *)
 
int add_var_to_array (nasl_array *, char *, const anon_nasl_var *)
 
int array_max_index (nasl_array *)
 
void free_array (nasl_array *)
 
tree_cellcopy_ref_array (const tree_cell *)
 
int hash_str2 (const char *, int)
 
tree_cellvar2cell (anon_nasl_var *)
 
tree_cellmake_array_from_elems (tree_cell *)
 
char * array2str (const nasl_array *)
 

Macro Definition Documentation

◆ VAR_NAME_HASH

#define VAR_NAME_HASH   17

Typedef Documentation

◆ anon_nasl_var

typedef struct st_a_nasl_var anon_nasl_var

◆ named_nasl_var

typedef struct st_n_nasl_var named_nasl_var

◆ nasl_array

typedef struct st_nasl_array nasl_array

◆ nasl_string_t

typedef struct st_nasl_string nasl_string_t

Enumeration Type Documentation

◆ anonymous enum

anonymous enum
Enumerator
VAR2_UNDEF 
VAR2_INT 
VAR2_STRING 
VAR2_DATA 
VAR2_ARRAY 

Function Documentation

◆ add_var_to_array()

int add_var_to_array ( nasl_array a,
char *  name,
const anon_nasl_var v 
)

◆ add_var_to_list()

int add_var_to_list ( nasl_array a,
int  i,
const anon_nasl_var v 
)

◆ array2str()

char * array2str ( const nasl_array a)

◆ array_max_index()

int array_max_index ( nasl_array a)

The name is not great: this function does not returns the index of the last element, but the index of the next free slot

◆ clear_unnamed_var()

void clear_unnamed_var ( anon_nasl_var )

◆ copy_ref_array()

tree_cell * copy_ref_array ( const tree_cell c1)

◆ free_array()

void free_array ( nasl_array a)

Note: the function does not free the nasl_array structure. Do it if necessary

◆ hash_str2()

int hash_str2 ( const char *  s,
int  n 
)
Todo:
Consider using GLibs string hash function.

◆ make_array_from_elems()

tree_cell * make_array_from_elems ( tree_cell el)

make_array_from_list is used by the parser only The list of elements is freed after use

◆ nasl_affect()

tree_cell * nasl_affect ( tree_cell lval,
tree_cell rval 
)

◆ nasl_array_iterator()

nasl_iterator nasl_array_iterator ( void *  ctxt,
tree_cell c 
)

◆ nasl_get_var_by_num()

anon_nasl_var * nasl_get_var_by_num ( void *  ctxt,
nasl_array a,
int  num,
int  create 
)

◆ nasl_iterate_array()

tree_cell * nasl_iterate_array ( nasl_iterator it)

◆ var2cell()

tree_cell * var2cell ( anon_nasl_var v)

◆ var2str()

const char * var2str ( anon_nasl_var v)