]> the.earth.li Git - onak.git/blobdiff - keystructs.h
Bump debhelper compat level to 13
[onak.git] / keystructs.h
index 13f9160ed46f9c3afee272eb1a5862b28d7a1b16..18a9ba4ce12ca29017bafab63e256ed5d3ecc8a4 100644 (file)
@@ -14,8 +14,7 @@
  * more details.
  *
  * You should have received a copy of the GNU General Public License along with
- * this program; if not, write to the Free Software Foundation, Inc., 51
- * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ * this program.  If not, see <https://www.gnu.org/licenses/>.
  */
 
 #ifndef __KEYSTRUCTS_H__
 
 #include "ll.h"
 
-/* v3 MD5 fingerprint is 16 characters, v4 SHA-1 fingerprint is 20 */
-#define MAX_FINGERPRINT_LEN 20
+/*
+ * Fingerprint lengths
+ *
+ * v3 MD5 fingerprint is 16 bytes
+ * v4 SHA-1 fingerprint is 20
+ * v5 SHA2-256 fingerprint is 32
+ */
+#define FINGERPRINT_V3_LEN     16
+#define FINGERPRINT_V4_LEN     20
+#define FINGERPRINT_V5_LEN     32
+#define MAX_FINGERPRINT_LEN    32
+
+/**
+ * @brief Stores the fingerprint of an OpenPGP key
+ */
+struct openpgp_fingerprint {
+       /** Length of fingerprint. 16 bytes for v3, 20 for v4 */
+       size_t length;
+       /** Fingerprint data. Only the first length bytes are valid */
+       uint8_t fp[MAX_FINGERPRINT_LEN];
+};
 
 /**
  * @brief Stores an OpenPGP packet.