]> ruderich.org/simon Gitweb - nsscash/nsscash.git/blobdiff - nss/search.h
Update copyright years
[nsscash/nsscash.git] / nss / search.h
index 9012b49d29598ef7eb51d653dff4690af2841109..6bd3c19c06cf8fd9041ea32b353ce6c0283ffd06 100644 (file)
@@ -1,7 +1,7 @@
 /*
  * Search entries in nsscash files by using indices and binary search (header)
  *
- * Copyright (C) 2019  Simon Ruderich
+ * Copyright (C) 2019-2020  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
 
 
 struct search_key {
-    const char *name;
-    const uint64_t *id;
+    const char *name; // if name != NULL search for a string
+    const uint64_t id; // if name == NULL search for an id
 
+    // The actual data with all entries; this is where the full entry
+    // including name/id is located (the index holds an offset into data for
+    // each entry)
     const void *data;
+    // Static offset to the search key (name/id) inside the entry; after it
+    // was located by using the index's offset into data
     uint64_t offset;
 };
 
-uint64_t *search(struct search_key *key, const void *index, uint64_t count) __attribute__((visibility("hidden")));
+uint64_t *search(const struct search_key *key, const void *index, uint64_t count) __attribute__((visibility("hidden")));
 
 #endif