X-Git-Url: https://ruderich.org/simon/gitweb/?a=blobdiff_plain;f=nss%2Ffile.h;h=15647242de60e3e3c57679b1d390791204447d58;hb=278c50be3d8a8c433aa862d602492112b9f26a67;hp=9560bc3379182edbcabd94ce14e7756b622de4d6;hpb=d228d6e6197aa1ea7ca40b19bfeb8453d6d41ee3;p=nsscash%2Fnsscash.git diff --git a/nss/file.h b/nss/file.h index 9560bc3..1564724 100644 --- a/nss/file.h +++ b/nss/file.h @@ -1,7 +1,7 @@ /* * Load and unload nsscash files (header) * - * Copyright (C) 2019 Simon Ruderich + * Copyright (C) 2019-2021 Simon Ruderich * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as published by @@ -25,6 +25,8 @@ #include +// Magic value at the beginning of each nsscash file (8 byte, without the +// trailing NUL) #define MAGIC "NSS-CASH" // Defined in Makefile @@ -36,11 +38,13 @@ #endif +// header describes the on-disk (and, after loading via mmap, in-memory) +// structure of nsscash files. struct header { char magic[8]; // magic string uint64_t version; // also doubles as byte-order check - uint64_t count; + uint64_t count; // number of entries in this file // All offsets are relative to data uint64_t off_orig_index; @@ -51,6 +55,7 @@ struct header { char data[]; } __attribute__((packed)); +// file represents an open nsscash file. struct file { int fd; size_t size;