system_xsb.c File Reference

#include "xsb_config.h"
#include <stdio.h>
#include <stdlib.h>
#include <signal.h>
#include <string.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <errno.h>
#include <ctype.h>
#include <unistd.h>
#include <stddef.h>
#include <sys/wait.h>
#include <dirent.h>
#include <fcntl.h>
#include "auxlry.h"
#include "cell_xsb.h"
#include "error_xsb.h"
#include "cinterf.h"
#include "syscall_xsb.h"
#include "io_builtins_xsb.h"
#include "wind2unix.h"
#include "system_xsb.h"
#include "system_defs_xsb.h"
#include "register.h"
#include "psc_xsb.h"
#include "memory_xsb.h"

Data Structures

struct  proc_table_t
struct  proc_table_t::proc_array_t

Defines

#define MAX_CMD_LEN   1024

Functions

static int xsb_spawn (char *prog, char *arg[], int callno, int pipe1[], int pipe2[], int pipe3[], FILE *toprocess_fptr, FILE *fromprocess_fptr, FILE *fromproc_stderr_fptr)
static void concat_array (char *array[], char *separator, char *result_str, int maxsize)
static int get_free_process_cell (void)
static void init_process_table (void)
static int process_status (int pid)
static void split_command_arguments (char *string, char *params[], char *callname)
static char * get_next_command_argument (char **buffptr, char **cmdlineprt)
static int file_copy (char *, char *)
static int copy_file_chunk (FILE *, FILE *, unsigned long)
static char * xreadlink (const char *, int *)
static xsbBool file_stat (CTXTdeclc int callno, char *file)
static int xsb_find_first_file (CTXTdeclc prolog_term, char *, prolog_term)
static int xsb_find_next_file (CTXTdeclc prolog_term, char *, prolog_term)
int sys_syscall (CTXTdeclc int callno)
xsbBool sys_system (CTXTdeclc int callno)

Variables

static struct proc_table_t xsb_process_table

Define Documentation

#define MAX_CMD_LEN   1024
 


Function Documentation

static void concat_array char *  array[],
char *  separator,
char *  result_str,
int  maxsize
[static]
 

static int copy_file_chunk FILE *  ,
FILE *  ,
unsigned  long
[static]
 

static int file_copy char *  ,
char * 
[static]
 

static xsbBool file_stat CTXTdeclc int  callno,
char *  file
[static]
 

static int get_free_process_cell void   )  [static]
 

static char * get_next_command_argument char **  buffptr,
char **  cmdlineprt
[static]
 

static void init_process_table void   )  [static]
 

static int process_status int  pid  )  [static]
 

static void split_command_arguments char *  string,
char *  params[],
char *  callname
[static]
 

int sys_syscall CTXTdeclc int  callno  ) 
 

xsbBool sys_system CTXTdeclc int  callno  ) 
 

static char * xreadlink const char *  ,
int
[static]
 

static int xsb_find_first_file CTXTdeclc  prolog_term,
char *  ,
prolog_term 
[static]
 

static int xsb_find_next_file CTXTdeclc  prolog_term,
char *  ,
prolog_term 
[static]
 

static int xsb_spawn char *  prog,
char *  arg[],
int  callno,
int  pipe1[],
int  pipe2[],
int  pipe3[],
FILE *  toprocess_fptr,
FILE *  fromprocess_fptr,
FILE *  fromproc_stderr_fptr
[static]
 


Variable Documentation

struct proc_table_t xsb_process_table [static]
 


Generated on Wed Jul 26 13:26:54 2006 for XSB by  doxygen 1.4.5