Data Structures |
| struct | cd_image |
| struct | PDATE_AND_TIME |
| struct | PDIR_RECORD |
Defines |
| #define | MAX_PATH 260 |
| #define | DIR_SEPARATOR_CHAR '/' |
| #define | DIR_SEPARATOR_STRING "/" |
| #define | MAX_LEVEL 8 |
| #define | MAX_NAME_LENGTH 64 |
| #define | MAX_CDNAME_LENGTH 8 |
| #define | MAX_EXTENSION_LENGTH 10 |
| #define | MAX_CDEXTENSION_LENGTH 3 |
| #define | SECTOR_SIZE 2048 |
| #define | BUFFER_SIZE (8 * SECTOR_SIZE) |
Typedefs |
| typedef unsigned char | BYTE |
| typedef unsigned short | WORD |
| typedef unsigned long | DWORD |
| typedef int | BOOL |
typedef enum
directory_record_type * | PDIR_RECORD_TYPE |
Enumerations |
| enum | DIR_RECORD_TYPE { DOT_RECORD,
DOT_DOT_RECORD,
SUBDIRECTORY_RECORD,
FILE_RECORD
} |
| enum | { QUIET,
NORMAL,
VERBOSE
} |
Functions |
| PDIR_RECORD | sort_linked_list (PDIR_RECORD, unsigned, int(*)(PDIR_RECORD, PDIR_RECORD)) |
| static char * | edit_with_commas (DWORD x, BOOL pad) |
| static void | release_memory (void) |
| void | error_exit (const char *fmt,...) |
| static void | flush_buffer (void) |
| static void | write_byte (BYTE x) |
| static void | write_little_endian_word (WORD x) |
| static void | write_big_endian_word (WORD x) |
| static void | write_both_endian_word (WORD x) |
| static void | write_little_endian_dword (DWORD x) |
| static void | write_big_endian_dword (DWORD x) |
| static void | write_both_endian_dword (DWORD x) |
| static void | fill_sector (void) |
| static void | write_string (char *s) |
| static void | write_string_as_big_endian_unicode (char *s) |
| static void | write_block (unsigned count, BYTE value) |
| static void | write_word_block (unsigned count, WORD value) |
| static void | write_directory_record (PDIR_RECORD d, DIR_RECORD_TYPE DirType, BOOL joliet) |
| static void | convert_date_and_time (PDATE_AND_TIME dt, time_t *time) |
| static int | check_for_punctuation (int c, const char *name) |
| int | cdname_exists (PDIR_RECORD d) |
| void | parse_filename_into_dirrecord (const char *filename, PDIR_RECORD d, BOOL dir) |
| PDIR_RECORD | new_directory_record (struct dirent *entry, struct stat *stbuf, PDIR_RECORD parent) |
| static int | compare_directory_order (PDIR_RECORD p, PDIR_RECORD q) |
| static int | compare_path_table_order (PDIR_RECORD p, PDIR_RECORD q) |
| static void | append_string_to_source (char *s) |
| static void | make_directory_records (PDIR_RECORD d) |
| static void | get_file_specifications (PDIR_RECORD d) |
| static void | pass (void) |
| int | main (int argc, char **argv) |
Variables |
| const BOOL | TRUE = 1 |
| const BOOL | FALSE = 0 |
| const BYTE | HIDDEN_FLAG = 1 |
| const BYTE | DIRECTORY_FLAG = 2 |
| static char | DIRECTORY_TIMESTAMP [] = "~Y$'KOR$.3K&" |
| static jmp_buf | error |
| static struct cd_image | cd |
| char | volume_label [32] |
| DIR_RECORD | root |
| char | source [512] |
| char * | end_source |
| enum { ... } | verbosity |
| BOOL | show_progress |
| DWORD | size_limit |
| BOOL | accept_punctuation_marks |
| DWORD | total_sectors |
| DWORD | path_table_size |
| DWORD | little_endian_path_table_sector |
| DWORD | big_endian_path_table_sector |
| DWORD | number_of_files |
| DWORD | bytes_in_files |
| DWORD | unused_bytes_at_ends_of_files |
| DWORD | number_of_directories |
| DWORD | bytes_in_directories |
| char | bootimage [512] |
| BOOL | eltorito |
| DWORD | boot_catalog_sector |
| DWORD | boot_image_sector |
| WORD | boot_image_size |
| BOOL | joliet |
| DWORD | joliet_path_table_size |
| DWORD | joliet_little_endian_path_table_sector |
| DWORD | joliet_big_endian_path_table_sector |
| static char | HELP [] = " -j generate Joliet filename records\n" |