#include "stuff/bool.h"
#define NEXT_FLAT_ADDRESS_TO_ASSIGN "<<< Next flat address to assign >>>"
#define NEXT_SPLIT_ADDRESS_TO_ASSIGN "<<< Next split address to assign >>>"
#define FIXED_ADDRESS_AND_SIZE "<<< Fixed address and size not to assign >>>"
struct seg_addr_table {
char *install_name;
enum bool split;
unsigned long seg1addr;
unsigned long segs_read_only_addr;
unsigned long segs_read_write_addr;
unsigned long line;
};
extern struct seg_addr_table *parse_default_seg_addr_table(
char **seg_addr_table_name,
unsigned long *table_size);
extern struct seg_addr_table * parse_seg_addr_table(
char *file_name,
char *flag,
char *argument,
unsigned long *table_size);
extern struct seg_addr_table * search_seg_addr_table(
struct seg_addr_table *seg_addr_table,
char *install_name);
extern void process_seg_addr_table(
char *file_name,
FILE *out_fp,
char *comment_prefix,
void (*processor)(struct seg_addr_table *entry, FILE *out_fp, void *cookie),
void *cookie);