|
OpenVAS Scanner 23.32.3
|
This file contains all the "unsafe" functions found in NASL. More...
#include "nasl_cmd_exec.h"#include "../misc/plugutils.h"#include "nasl_debug.h"#include "nasl_func.h"#include "nasl_global_ctxt.h"#include "nasl_lex_ctxt.h"#include "nasl_tree.h"#include "nasl_var.h"#include <errno.h>#include <fcntl.h>#include <glib.h>#include <gvm/base/drop_privileges.h>#include <gvm/base/prefs.h>#include <signal.h>#include <string.h>#include <sys/param.h>#include <sys/stat.h>#include <sys/wait.h>#include <unistd.h>
Go to the source code of this file.
Macros | |
| #define | MAXPATHLEN 4096 |
Functions | |
| static char * | pread_streams (int fdout, int fderr) |
| tree_cell * | nasl_pread (lex_ctxt *lexic) |
| Spawn a process. | |
| tree_cell * | nasl_find_in_path (lex_ctxt *lexic) |
| tree_cell * | nasl_fread (lex_ctxt *lexic) |
| Read file. | |
| tree_cell * | nasl_unlink (lex_ctxt *lexic) |
| Unlink file. | |
| tree_cell * | nasl_fwrite (lex_ctxt *lexic) |
| Write file. | |
| tree_cell * | nasl_get_tmp_dir (lex_ctxt *lexic) |
| tree_cell * | nasl_file_stat (lex_ctxt *lexic) |
| Stat file. | |
| tree_cell * | nasl_file_open (lex_ctxt *lexic) |
| Open file. | |
| tree_cell * | nasl_file_close (lex_ctxt *lexic) |
| Close file. | |
| tree_cell * | nasl_file_read (lex_ctxt *lexic) |
| Read file. | |
| tree_cell * | nasl_file_write (lex_ctxt *lexic) |
| Write file. | |
| tree_cell * | nasl_file_seek (lex_ctxt *lexic) |
| Seek in file. | |
Variables | |
| static pid_t | pid = 0 |
This file contains all the "unsafe" functions found in NASL.
Definition in file nasl_cmd_exec.c.
| #define MAXPATHLEN 4096 |
Definition at line 36 of file nasl_cmd_exec.c.
Referenced by nasl_get_tmp_dir(), and nasl_pread().
Close file.
Definition at line 474 of file nasl_cmd_exec.c.
References alloc_typed_cell(), CONST_INT, get_int_var_by_num(), TC::i_val, nasl_perror(), and TC::x.

Open file.
Definition at line 416 of file nasl_cmd_exec.c.
References alloc_typed_cell(), CONST_INT, get_str_var_by_name(), TC::i_val, nasl_perror(), and TC::x.

Read file.
Definition at line 501 of file nasl_cmd_exec.c.
References alloc_typed_cell(), CONST_DATA, get_int_var_by_name(), nasl_perror(), TC::size, TC::str_val, and TC::x.

Seek in file.
Definition at line 586 of file nasl_cmd_exec.c.
References alloc_typed_cell(), CONST_INT, get_int_var_by_name(), TC::i_val, nasl_perror(), and TC::x.

Stat file.
Definition at line 391 of file nasl_cmd_exec.c.
References alloc_typed_cell(), CONST_INT, get_str_var_by_num(), TC::i_val, nasl_perror(), and TC::x.

Write file.
Definition at line 543 of file nasl_cmd_exec.c.
References alloc_typed_cell(), CONST_INT, get_int_var_by_name(), get_str_var_by_name(), get_var_size_by_name(), TC::i_val, len, nasl_perror(), and TC::x.

Definition at line 243 of file nasl_cmd_exec.c.
References alloc_typed_cell(), CONST_INT, get_str_var_by_num(), TC::i_val, nasl_perror(), and TC::x.

Read file.
Definition at line 270 of file nasl_cmd_exec.c.
References alloc_typed_cell(), CONST_DATA, get_str_var_by_num(), nasl_perror(), TC::size, TC::str_val, and TC::x.

Write file.
Definition at line 331 of file nasl_cmd_exec.c.
References alloc_typed_cell(), CONST_INT, get_str_var_by_name(), get_var_size_by_name(), TC::i_val, nasl_perror(), and TC::x.

Definition at line 360 of file nasl_cmd_exec.c.
References alloc_typed_cell(), CONST_DATA, MAXPATHLEN, nasl_perror(), TC::size, TC::str_val, and TC::x.

Spawn a process.
| [in] | lexic | Lexical context of NASL interpreter. |
| [in] | cmd | Command to run. |
| [in] | argv | List of arguments. |
| [in] | cd | If set to TRUE the scanner will change it's current directory to the directory where the command was found. |
| [in] | drop_privileges_user | Owner of the spawned process. |
Definition at line 100 of file nasl_cmd_exec.c.
References alloc_typed_cell(), CONST_DATA, deref_cell(), get_int_var_by_name(), get_str_var_by_name(), get_variable_by_name(), st_nasl_array::hash_elt, st_nasl_array::max_idx, MAXPATHLEN, nasl_perror(), st_nasl_array::num_elt, pid, pread_streams(), TC::size, TC::str_val, st_a_nasl_var::v, st_a_nasl_var::v_arr, VAR2_ARRAY, var2str(), st_a_nasl_var::var_type, and TC::x.

Unlink file.
Definition at line 306 of file nasl_cmd_exec.c.
References FAKE_CELL, get_str_var_by_num(), and nasl_perror().

|
static |
Definition at line 42 of file nasl_cmd_exec.c.
Referenced by nasl_pread().

|
static |
Definition at line 39 of file nasl_cmd_exec.c.
Referenced by attack_network(), get_connection_fd(), hosts_set_pid(), ipc_exec_as_process(), launch_plugin(), let_em_die(), nasl_pread(), next_free_process(), plug_fork_child(), plugin_launch(), pluginlaunch_stop(), process_alive(), procs_cleanup_children(), scan_stop_cleanup(), stop_single_task_scan(), terminate_process(), timeout_running_processes(), and update_running_processes().