diff --git a/demo/demo.c b/demo/demo.c index 6308db1..7a82db4 100644 --- a/demo/demo.c +++ b/demo/demo.c @@ -65,6 +65,11 @@ static char helptext[][80] = { #include #include +#ifndef PATH_MAX +#define PATH_MAX Libisofs_default_path_maX +#endif + + /* ------------------------- from demo/tree.c ----------------------- */ static void diff --git a/demo/iso_read.c b/demo/iso_read.c index 7b19ba2..9bbfe38 100644 --- a/demo/iso_read.c +++ b/demo/iso_read.c @@ -10,6 +10,12 @@ #include "libisofs.h" + +#ifndef PATH_MAX +#define PATH_MAX Libisofs_default_path_maX +#endif + + static void print_permissions(mode_t mode) { diff --git a/demo/lsl.c b/demo/lsl.c index 17659f7..92e02cb 100644 --- a/demo/lsl.c +++ b/demo/lsl.c @@ -13,6 +13,12 @@ #include #include + +#ifndef PATH_MAX +#define PATH_MAX Libisofs_default_path_maX +#endif + + /* * Little test program to test filesystem implementations. * diff --git a/libisofs/builder.c b/libisofs/builder.c index 9635892..f35cf2f 100644 --- a/libisofs/builder.c +++ b/libisofs/builder.c @@ -21,6 +21,11 @@ #include +#ifndef PATH_MAX +#define PATH_MAX Libisofs_default_path_maX +#endif + + void iso_node_builder_ref(IsoNodeBuilder *builder) { diff --git a/libisofs/filesrc.c b/libisofs/filesrc.c index 505b7d1..155eb4a 100644 --- a/libisofs/filesrc.c +++ b/libisofs/filesrc.c @@ -23,6 +23,11 @@ #include +#ifndef PATH_MAX +#define PATH_MAX Libisofs_default_path_maX +#endif + + int iso_file_src_cmp(const void *n1, const void *n2) { int ret; diff --git a/libisofs/fs_image.c b/libisofs/fs_image.c index 9280b10..03fc04c 100644 --- a/libisofs/fs_image.c +++ b/libisofs/fs_image.c @@ -30,6 +30,11 @@ #include +#ifndef PATH_MAX +#define PATH_MAX Libisofs_default_path_maX +#endif + + /** * Options for image reading. * There are four kind of options: diff --git a/libisofs/libisofs.h b/libisofs/libisofs.h index 59fb477..99dd1ae 100644 --- a/libisofs/libisofs.h +++ b/libisofs/libisofs.h @@ -4689,6 +4689,11 @@ int iso_local_set_attrs(char *disk_path, size_t num_attrs, char **names, size_t *value_lengths, char **values, int flag); +/* Default in case that the compile environment has no macro PATH_MAX. +*/ +#define Libisofs_default_path_maX 4096 + + /* --------------------------- Filters in General -------------------------- */ /* diff --git a/libisofs/node.c b/libisofs/node.c index bd4b338..8d5480e 100644 --- a/libisofs/node.c +++ b/libisofs/node.c @@ -22,6 +22,12 @@ #include #include + +#ifndef PATH_MAX +#define PATH_MAX Libisofs_default_path_maX +#endif + + struct dir_iter_data { /* points to the last visited child, to NULL before start */ diff --git a/libisofs/stream.c b/libisofs/stream.c index 6991ff7..97e0ba4 100644 --- a/libisofs/stream.c +++ b/libisofs/stream.c @@ -17,6 +17,12 @@ #include #include + +#ifndef PATH_MAX +#define PATH_MAX Libisofs_default_path_maX +#endif + + ino_t serial_id = (ino_t)1; ino_t mem_serial_id = (ino_t)1; ino_t cut_out_serial_id = (ino_t)1; diff --git a/libisofs/tree.c b/libisofs/tree.c index d1c6feb..d753d3b 100644 --- a/libisofs/tree.c +++ b/libisofs/tree.c @@ -25,6 +25,12 @@ #include #include + +#ifndef PATH_MAX +#define PATH_MAX Libisofs_default_path_maX +#endif + + /** * Add a new directory to the iso tree. *