summaryrefslogtreecommitdiffstats
path: root/src/ustar.h
diff options
context:
space:
mode:
authorPatrick McDermott <patrick.mcdermott@libiquity.com>2023-07-06 11:41:11 (EDT)
committer Patrick McDermott <patrick.mcdermott@libiquity.com>2023-07-06 11:41:11 (EDT)
commit4bc1fe19d8cb13cb0d36bf7c213dcf6839e82a46 (patch)
treee2f8fb756814c75ca5a3b9c28d7e5b1cb38ec0a3 /src/ustar.h
parent4cea4ecbfd27152cd3b6e6dfc3ca1ca0cf03c7fc (diff)
Rename src/ to opkg-opk/
Diffstat (limited to 'src/ustar.h')
-rw-r--r--src/ustar.h117
1 files changed, 0 insertions, 117 deletions
diff --git a/src/ustar.h b/src/ustar.h
deleted file mode 100644
index 4a3dc1a..0000000
--- a/src/ustar.h
+++ /dev/null
@@ -1,117 +0,0 @@
-/*
- * Copyright (C) 2023 Patrick McDermott
- *
- * This file is part of opkg-opk.
- *
- * opkg-opk is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * opkg-opk is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with opkg-opk. If not, see <https://www.gnu.org/licenses/>.
- */
-
-#ifndef OPKG_OPK_USTAR_H_
-#define OPKG_OPK_USTAR_H_
-
-#include <stdint.h>
-#include "dirent.h"
-#include "gzip.h"
-
-#define OPKG_OPK_USTAR_RECORD_SIZE 512
-#define OPKG_OPK_USTAR_NAME_SIZE 257 /* prefix[155] + '/' + name[100]
- + '\0' */
-#define OPKG_OPK_USTAR_LINKNAME_SIZE 101 /* linkname[100] + '\0' */
-
-struct opkg_opk_ustar;
-
-struct opkg_opk_ustar_member {
- char name [OPKG_OPK_USTAR_NAME_SIZE];
- uint16_t mode;
- uint64_t size;
- uint64_t mtime;
- char type;
- char linkname[OPKG_OPK_USTAR_LINKNAME_SIZE];
- char uname [32];
- char gname [32];
- uint32_t devmajor;
- uint32_t devminor;
- struct opkg_opk_ustar_member *next;
-};
-
-struct opkg_opk_ustar_seek_name;
-
-/*
- * Allocates and initializes an archive structure.
- * Parameters:
- * - gzip: Decompressor for archive's gzip stream.
- * Returns:
- * - Allocated archive structure on success. Free with opkg_opk_ustar_free().
- * - NULL on memory exhaustion.
- */
-struct opkg_opk_ustar *
-opkg_opk_ustar_init(struct opkg_opk_gzip *gzip);
-
-/*
- * Lists member files one at a time.
- * Parameters:
- * - ustar: Archive structure.
- * - member: Address in which to store address of allocated member structure.
- * Free with free().
- * Returns:
- * - OPKG_OPK_OK if a member was listed. More members may exist.
- * - OPKG_OPK_END if no more members exist. Parameter "member" is unchanged.
- * - OPKG_OPK_ERROR on decompression error, memory exhaustion, mode or mtime
- * integer conversion error, or unsupported file type.
- */
-int
-opkg_opk_ustar_list(struct opkg_opk_ustar *ustar,
- struct opkg_opk_ustar_member **member);
-
-/*
- * Reads up to a record (512 octets) of member file data at a time.
- * Parameters:
- * - ustar: Archive structure.
- * - buffer: Address in which to store address of data buffer. May be NULL. Do
- * not free.
- * - size: Address in which to store size of read data. May be NULL.
- * Returns:
- * - OPKG_OPK_OK if data was read.
- * - OPKG_OPK_END if no more data exists.
- * - OPKG_OPK_ERROR on decompression error or premature end of gzip stream.
- */
-int
-opkg_opk_ustar_read(struct opkg_opk_ustar *ustar, char **buffer, size_t *size);
-
-int
-opkg_opk_ustar_write_header(struct opkg_opk_ustar *ustar,
- struct opkg_opk_dirent *dirent, uint16_t mode,
- uid_t uid, const char *uname, gid_t gid, const char *gname,
- uint32_t devmajor, uint32_t devminor,
- uint64_t size, uint64_t mtime, char type, const char *linkname);
-
-int
-opkg_opk_ustar_get_buffer(struct opkg_opk_ustar *ustar, char **buffer,
- size_t *size);
-
-int
-opkg_opk_ustar_write_data(struct opkg_opk_ustar *ustar, size_t size);
-
-int
-opkg_opk_ustar_write_trailer(struct opkg_opk_ustar *ustar);
-
-/*
- * Frees an archive structure.
- * Parameters:
- * - ustar: Archive structure.
- */
-void
-opkg_opk_ustar_free(struct opkg_opk_ustar *ustar);
-
-#endif /* OPKG_OPK_USTAR_H_ */