libisofs/libisofs/joliet.h
Thomas Schmitt 017dcb39f2 New API function iso_write_opts_set_part_offset() controls creation of
an MBR with a first partiton table entry that bears non-zero start address.
A second set of volume descriptors and directory tree+tables gets created
which can be used to mount the image at the partition start.
Not yet implemented for second set: ISO 9660:1999, MD5 checksums.
2010-09-05 12:43:48 +02:00

64 lines
1.2 KiB
C

/*
* Copyright (c) 2007 Vreixo Formoso
* Copyright (c) 2007 Mario Danic
*
* This file is part of the libisofs project; you can redistribute it and/or
* modify it under the terms of the GNU General Public License version 2
* or later as published by the Free Software Foundation.
* See COPYING file for details.
*/
/**
* Declare Joliet related structures.
*/
#ifndef LIBISO_JOLIET_H
#define LIBISO_JOLIET_H
#include "libisofs.h"
#include "ecma119.h"
enum joliet_node_type {
JOLIET_FILE,
JOLIET_DIR
};
struct joliet_dir_info {
JolietNode **children;
size_t nchildren;
size_t len;
size_t block;
};
struct joliet_node
{
uint16_t *name; /**< Name in UCS-2BE. */
JolietNode *parent;
IsoNode *node; /*< reference to the iso node */
enum joliet_node_type type;
union {
IsoFileSrc *file;
struct joliet_dir_info *dir;
} info;
};
/**
* Create a IsoWriter to deal with Joliet estructures, and add it to the given
* target.
*
* @return
* 1 on success, < 0 on error
*/
int joliet_writer_create(Ecma119Image *target);
/* TWINTREE: Not to be called but only for comparison with target->writers[i]
*/
int joliet_writer_write_vol_desc(IsoImageWriter *writer);
#endif /* LIBISO_JOLIET_H */