xorriso  1.5.4.pl02
About: GNU xorriso creates, loads, manipulates and writes ISO 9660 filesystem images with Rock Ridge extensions. It is suitable for incremental data backup and for production of bootable ISO 9660 images. GNU xorriso is a statical compilation of the libraries libburn, libisofs, libisoburn, and libjte.
  Fossies Dox: xorriso-1.5.4.pl02.tar.gz  ("unofficial" and yet experimental doxygen-generated source code documentation)  

findjob.c File Reference
#include <ctype.h>
#include <sys/types.h>
#include <unistd.h>
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include <sys/stat.h>
#include <sys/time.h>
#include <time.h>
#include <dirent.h>
#include <errno.h>
#include "xorriso.h"
#include "xorriso_private.h"
#include "xorrisoburn.h"
Include dependency graph for findjob.c:

Go to the source code of this file.

Functions

int Exprtest_new (struct ExprtesT **ftest, struct FindjoB *boss, int flag)
 
int Exprtest_destroy (struct ExprtesT **ftest, int flag)
 
int Exprnode_new (struct ExprnodE **fnode, struct FindjoB *job, struct ExprnodE *up, char *origin, int flag)
 
int Exprnode_destroy (struct ExprnodE **fnode, int flag)
 
int Exprnode_set_is_if (struct ExprnodE *fnode, int value, int flag)
 
int Exprnode_is_if (struct ExprnodE *fnode, int flag)
 
int Exprnode_set_branch (struct ExprnodE *fnode, struct ExprnodE *target, int flag)
 
int Exprnode_get_branch (struct ExprnodE *fnode, struct ExprnodE **branch, int flag)
 
int Exprnode_is_defined (struct ExprnodE *fnode, int flag)
 
int Exprnode_own_value (struct XorrisO *xorriso, struct ExprnodE *fnode, void *node, char *name, char *path, struct stat *boss_stbuf, struct stat *stbuf, int flag)
 
int Exprnode_op (int value1, int value2, int op, int flag)
 
int Exprnode_tree_value (struct XorrisO *xorriso, struct ExprnodE *fnode, int left_value, void *node, char *name, char *path, struct stat *boss_stbuf, struct stat *stbuf, int flag)
 
int Findjob_new (struct FindjoB **o, char *start_path, int flag)
 
int Findjob_destroy (struct FindjoB **o, int flag)
 
int Findjob_set_start_path (struct FindjoB *o, char *start_path, int flag)
 
int Findjob_get_start_path (struct FindjoB *o, char **start_path, int flag)
 
int Findjob_cursor_complete (struct FindjoB *job, int flag)
 
int Findjob_is_restrictive (struct FindjoB *job, int flag)
 
int Findjob_new_node (struct FindjoB *job, struct ExprnodE **fnode, char *origin, int flag)
 
int Findjob_default_and (struct FindjoB *o, int flag)
 
int Findjob_open_bracket (struct FindjoB *job, int flag)
 
int Findjob_close_bracket (struct FindjoB *job, int flag)
 
int Findjob_not (struct FindjoB *job, int flag)
 
int Findjob_and (struct FindjoB *job, int flag)
 
int Findjob_or (struct FindjoB *job, int flag)
 
int Findjob_if (struct FindjoB *job, int flag)
 
int Findjob_then (struct FindjoB *job, int flag)
 
int Findjob_else (struct FindjoB *job, int flag)
 
int Findjob_elseif (struct FindjoB *job, int flag)
 
int Findjob_endif (struct FindjoB *job, int flag)
 
int Findjob_set_name_expr (struct FindjoB *o, char *name_expr, int flag)
 
int Findjob_set_file_type (struct FindjoB *o, char file_type, int flag)
 
int Findjob_set_prop_filter (struct FindjoB *o, int test_type, int value, int flag)
 
int Findjob_set_damage_filter (struct FindjoB *o, int value, int flag)
 
int Findjob_set_num_filter (struct FindjoB *o, int test_type, int num1, int num2, int flag)
 
int Findjob_set_lba_range (struct FindjoB *o, int start_lba, int count, int flag)
 
int Findjob_set_test_hidden (struct FindjoB *o, int mode, int flag)
 
int Findjob_set_acl_filter (struct FindjoB *o, int value, int flag)
 
int Findjob_set_xattr_filter (struct FindjoB *o, int value, int flag)
 
int Findjob_set_aaip_filter (struct FindjoB *o, int value, int flag)
 
int Findjob_set_filter_filter (struct FindjoB *o, int value, int flag)
 
int Findjob_set_crtp_filter (struct FindjoB *o, char *creator, char *hfs_type, int flag)
 
int Findjob_set_bless_filter (struct XorrisO *xorriso, struct FindjoB *o, char *blessing, int flag)
 
int Findjob_set_wanted_node (struct FindjoB *o, void *wanted_node, int flag)
 
int Findjob_set_commit_filter_2 (struct FindjoB *o, int flag)
 
int Findjob_set_arg1 (struct FindjoB *o, int test_type, char *arg1, int flag)
 
int Findjob_set_false (struct FindjoB *o, int value, int flag)
 
int Findjob_set_prune (struct FindjoB *o, int flag)
 
int Findjob_set_found_path (struct FindjoB *o, char *path, int flag)
 
int Findjob_get_found_path (struct FindjoB *o, char **path, int flag)
 
int Findjob_get_last_data_file_block (struct FindjoB *o, uint32_t *lba, int flag)
 
int Findjob_get_action (struct FindjoB *o, int flag)
 
int Findjob_get_action_parms (struct FindjoB *o, char **target, char **text_2, uid_t *user, gid_t *group, mode_t *mode_and, mode_t *mode_or, int *type, time_t *date, struct FindjoB **subjob, int flag)
 
int Findjob_test_2 (struct XorrisO *xorriso, struct FindjoB *o, void *node, char *name, char *path, struct stat *boss_stbuf, struct stat *stbuf, int flag)
 
int Findjob_set_action_target (struct FindjoB *o, int action, char *target, int flag)
 
int Findjob_set_action_type (struct FindjoB *o, int action, int type, int flag)
 
int Findjob_set_action_text_2 (struct FindjoB *o, int action, char *target, char *text_2, int flag)
 
int Findjob_set_action_chown (struct FindjoB *o, uid_t user, int flag)
 
int Findjob_set_action_chgrp (struct FindjoB *o, gid_t group, int flag)
 
int Findjob_set_action_chmod (struct FindjoB *o, mode_t mode_and, mode_t mode_or, int flag)
 
int Findjob_set_action_ad (struct FindjoB *o, int type, time_t date, int flag)
 
int Findjob_set_action_subjob (struct FindjoB *o, int action, struct FindjoB *subjob, int flag)
 
int Findjob_set_action_found_path (struct FindjoB *o, int flag)
 

Function Documentation

◆ Exprnode_destroy()

int Exprnode_destroy ( struct ExprnodE **  fnode,
int  flag 
)

Definition at line 126 of file findjob.c.

References Exprtest_destroy().

Referenced by Exprnode_new(), Exprnode_set_branch(), Findjob_destroy(), and Findjob_new_node().

◆ Exprnode_get_branch()

int Exprnode_get_branch ( struct ExprnodE fnode,
struct ExprnodE **  branch,
int  flag 
)

Definition at line 172 of file findjob.c.

References ExprnodE::false_branch, and ExprnodE::true_branch.

Referenced by Findjob_else(), Findjob_elseif(), Findjob_endif(), and Findjob_then().

◆ Exprnode_is_defined()

int Exprnode_is_defined ( struct ExprnodE fnode,
int  flag 
)

◆ Exprnode_is_if()

int Exprnode_is_if ( struct ExprnodE fnode,
int  flag 
)

Definition at line 148 of file findjob.c.

References ExprnodE::is_if_then_else.

Referenced by Findjob_else(), Findjob_elseif(), Findjob_endif(), and Findjob_then().

◆ Exprnode_new()

◆ Exprnode_op()

int Exprnode_op ( int  value1,
int  value2,
int  op,
int  flag 
)

Definition at line 237 of file findjob.c.

Referenced by Exprnode_tree_value().

◆ Exprnode_own_value()

int Exprnode_own_value ( struct XorrisO xorriso,
struct ExprnodE fnode,
void *  node,
char *  name,
char *  path,
struct stat *  boss_stbuf,
struct stat *  stbuf,
int  flag 
)

◆ Exprnode_set_branch()

int Exprnode_set_branch ( struct ExprnodE fnode,
struct ExprnodE target,
int  flag 
)

Definition at line 154 of file findjob.c.

References Exprnode_destroy(), ExprnodE::false_branch, and ExprnodE::true_branch.

Referenced by Findjob_else(), and Findjob_then().

◆ Exprnode_set_is_if()

int Exprnode_set_is_if ( struct ExprnodE fnode,
int  value,
int  flag 
)

Definition at line 141 of file findjob.c.

References ExprnodE::is_if_then_else.

Referenced by Findjob_if().

◆ Exprnode_tree_value()

int Exprnode_tree_value ( struct XorrisO xorriso,
struct ExprnodE fnode,
int  left_value,
void *  node,
char *  name,
char *  path,
struct stat *  boss_stbuf,
struct stat *  stbuf,
int  flag 
)

◆ Exprtest_destroy()

int Exprtest_destroy ( struct ExprtesT **  ftest,
int  flag 
)

Definition at line 53 of file findjob.c.

References ExprtesT::arg1, ExprtesT::arg2, and ExprtesT::test_type.

Referenced by Exprnode_destroy().

◆ Exprtest_new()

int Exprtest_new ( struct ExprtesT **  ftest,
struct FindjoB boss,
int  flag 
)

Definition at line 37 of file findjob.c.

References ExprtesT::arg1, ExprtesT::arg2, ExprtesT::boss, ExprtesT::invert, ExprtesT::test_type, and TSOB_FELD.

Referenced by Exprnode_new().

◆ Findjob_and()

int Findjob_and ( struct FindjoB job,
int  flag 
)

◆ Findjob_close_bracket()

int Findjob_close_bracket ( struct FindjoB job,
int  flag 
)

◆ Findjob_cursor_complete()

int Findjob_cursor_complete ( struct FindjoB job,
int  flag 
)

◆ Findjob_default_and()

◆ Findjob_destroy()

◆ Findjob_else()

◆ Findjob_elseif()

◆ Findjob_endif()

int Findjob_endif ( struct FindjoB job,
int  flag 
)

◆ Findjob_get_action()

int Findjob_get_action ( struct FindjoB o,
int  flag 
)

Definition at line 1120 of file findjob.c.

References FindjoB::action.

Referenced by Xorriso_findi(), and Xorriso_findi_headline().

◆ Findjob_get_action_parms()

int Findjob_get_action_parms ( struct FindjoB o,
char **  target,
char **  text_2,
uid_t *  user,
gid_t *  group,
mode_t *  mode_and,
mode_t *  mode_or,
int *  type,
time_t *  date,
struct FindjoB **  subjob,
int  flag 
)

◆ Findjob_get_found_path()

int Findjob_get_found_path ( struct FindjoB o,
char **  path,
int  flag 
)

Definition at line 1105 of file findjob.c.

References FindjoB::found_path.

Referenced by Xorriso_path_from_lba().

◆ Findjob_get_last_data_file_block()

int Findjob_get_last_data_file_block ( struct FindjoB o,
uint32_t *  lba,
int  flag 
)

Definition at line 1112 of file findjob.c.

References FindjoB::last_data_file_block.

Referenced by Xorriso_highest_data_block().

◆ Findjob_get_start_path()

int Findjob_get_start_path ( struct FindjoB o,
char **  start_path,
int  flag 
)

Definition at line 434 of file findjob.c.

References FindjoB::start_path.

Referenced by Xorriso_findi_action(), and Xorriso_findx_action().

◆ Findjob_if()

int Findjob_if ( struct FindjoB job,
int  flag 
)

◆ Findjob_is_restrictive()

int Findjob_is_restrictive ( struct FindjoB job,
int  flag 
)

Definition at line 452 of file findjob.c.

References Exprnode_is_defined(), and FindjoB::test_tree.

◆ Findjob_new()

◆ Findjob_new_node()

◆ Findjob_not()

int Findjob_not ( struct FindjoB job,
int  flag 
)

Definition at line 564 of file findjob.c.

References FindjoB::cursor, Findjob_default_and(), and ExprnodE::invert.

Referenced by Xorriso_option_find().

◆ Findjob_open_bracket()

int Findjob_open_bracket ( struct FindjoB job,
int  flag 
)

Definition at line 528 of file findjob.c.

References FindjoB::cursor, Findjob_default_and(), and Findjob_new_node().

Referenced by Xorriso_option_find().

◆ Findjob_or()

◆ Findjob_set_aaip_filter()

int Findjob_set_aaip_filter ( struct FindjoB o,
int  value,
int  flag 
)

Definition at line 956 of file findjob.c.

References Findjob_set_prop_filter().

Referenced by Xorriso_option_find().

◆ Findjob_set_acl_filter()

int Findjob_set_acl_filter ( struct FindjoB o,
int  value,
int  flag 
)

Definition at line 933 of file findjob.c.

References Findjob_set_prop_filter().

Referenced by Xorriso_option_find().

◆ Findjob_set_action_ad()

int Findjob_set_action_ad ( struct FindjoB o,
int  type,
time_t  date,
int  flag 
)

◆ Findjob_set_action_chgrp()

int Findjob_set_action_chgrp ( struct FindjoB o,
gid_t  group,
int  flag 
)

◆ Findjob_set_action_chmod()

int Findjob_set_action_chmod ( struct FindjoB o,
mode_t  mode_and,
mode_t  mode_or,
int  flag 
)

◆ Findjob_set_action_chown()

int Findjob_set_action_chown ( struct FindjoB o,
uid_t  user,
int  flag 
)

◆ Findjob_set_action_found_path()

int Findjob_set_action_found_path ( struct FindjoB o,
int  flag 
)

Definition at line 1292 of file findjob.c.

References FindjoB::action, and Findjob_set_found_path().

Referenced by Xorriso_path_from_lba().

◆ Findjob_set_action_subjob()

int Findjob_set_action_subjob ( struct FindjoB o,
int  action,
struct FindjoB subjob,
int  flag 
)

Definition at line 1282 of file findjob.c.

References FindjoB::action, Findjob_destroy(), and FindjoB::subjob.

Referenced by Xorriso_option_find().

◆ Findjob_set_action_target()

int Findjob_set_action_target ( struct FindjoB o,
int  action,
char *  target,
int  flag 
)

◆ Findjob_set_action_text_2()

int Findjob_set_action_text_2 ( struct FindjoB o,
int  action,
char *  target,
char *  text_2,
int  flag 
)

◆ Findjob_set_action_type()

int Findjob_set_action_type ( struct FindjoB o,
int  action,
int  type,
int  flag 
)

◆ Findjob_set_arg1()

int Findjob_set_arg1 ( struct FindjoB o,
int  test_type,
char *  arg1,
int  flag 
)

◆ Findjob_set_bless_filter()

int Findjob_set_bless_filter ( struct XorrisO xorriso,
struct FindjoB o,
char *  blessing,
int  flag 
)

◆ Findjob_set_commit_filter_2()

int Findjob_set_commit_filter_2 ( struct FindjoB o,
int  flag 
)

Definition at line 1037 of file findjob.c.

References FindjoB::cursor, Findjob_default_and(), ExprnodE::test, and ExprtesT::test_type.

Referenced by Xorriso_option_find().

◆ Findjob_set_crtp_filter()

int Findjob_set_crtp_filter ( struct FindjoB o,
char *  creator,
char *  hfs_type,
int  flag 
)

◆ Findjob_set_damage_filter()

int Findjob_set_damage_filter ( struct FindjoB o,
int  value,
int  flag 
)

Definition at line 867 of file findjob.c.

References Findjob_set_prop_filter().

Referenced by Xorriso_option_check_media(), and Xorriso_option_find().

◆ Findjob_set_false()

int Findjob_set_false ( struct FindjoB o,
int  value,
int  flag 
)

Definition at line 1073 of file findjob.c.

References Findjob_set_prop_filter().

Referenced by Xorriso_option_find().

◆ Findjob_set_file_type()

int Findjob_set_file_type ( struct FindjoB o,
char  file_type,
int  flag 
)

◆ Findjob_set_filter_filter()

int Findjob_set_filter_filter ( struct FindjoB o,
int  value,
int  flag 
)

Definition at line 967 of file findjob.c.

References Findjob_set_prop_filter().

Referenced by Xorriso_option_find().

◆ Findjob_set_found_path()

int Findjob_set_found_path ( struct FindjoB o,
char *  path,
int  flag 
)

Definition at line 1091 of file findjob.c.

References FindjoB::found_path.

Referenced by Findjob_set_action_found_path(), and Xorriso_findi_action().

◆ Findjob_set_lba_range()

int Findjob_set_lba_range ( struct FindjoB o,
int  start_lba,
int  count,
int  flag 
)

Definition at line 898 of file findjob.c.

References Findjob_set_num_filter().

Referenced by Xorriso_option_find(), and Xorriso_path_from_lba().

◆ Findjob_set_name_expr()

int Findjob_set_name_expr ( struct FindjoB o,
char *  name_expr,
int  flag 
)

◆ Findjob_set_num_filter()

int Findjob_set_num_filter ( struct FindjoB o,
int  test_type,
int  num1,
int  num2,
int  flag 
)

◆ Findjob_set_prop_filter()

◆ Findjob_set_prune()

int Findjob_set_prune ( struct FindjoB o,
int  flag 
)

Definition at line 1082 of file findjob.c.

References Findjob_set_prop_filter().

Referenced by Xorriso_option_find().

◆ Findjob_set_start_path()

int Findjob_set_start_path ( struct FindjoB o,
char *  start_path,
int  flag 
)

Definition at line 420 of file findjob.c.

References FindjoB::start_path.

Referenced by Xorriso_findi_action(), Xorriso_findi_sorted(), and Xorriso_option_find().

◆ Findjob_set_test_hidden()

int Findjob_set_test_hidden ( struct FindjoB o,
int  mode,
int  flag 
)

◆ Findjob_set_wanted_node()

int Findjob_set_wanted_node ( struct FindjoB o,
void *  wanted_node,
int  flag 
)

◆ Findjob_set_xattr_filter()

int Findjob_set_xattr_filter ( struct FindjoB o,
int  value,
int  flag 
)

Definition at line 945 of file findjob.c.

References Findjob_set_prop_filter().

Referenced by Xorriso_option_find().

◆ Findjob_test_2()

int Findjob_test_2 ( struct XorrisO xorriso,
struct FindjoB o,
void *  node,
char *  name,
char *  path,
struct stat *  boss_stbuf,
struct stat *  stbuf,
int  flag 
)

Definition at line 1147 of file findjob.c.

References Exprnode_tree_value(), and FindjoB::test_tree.

Referenced by Xorriso_findi_test(), and Xorriso_findx().

◆ Findjob_then()