#include "cert.h" #include "ff.h" u32 LoadCertFromCertDb(u64 offset, Certificate* cert, u32* mod, u32* exp) { Certificate cert_local; FIL db; UINT bytes_read; // not much in terms of error checking here if (f_open(&db, "1:/dbs/certs.db", FA_READ | FA_OPEN_EXISTING) != FR_OK) return 1; f_lseek(&db, offset); if (!cert) cert = &cert_local; f_read(&db, cert, CERT_SIZE, &bytes_read); f_close(&db); if (mod) memcpy(mod, cert->mod, 0x100); if (exp) *exp = getle32(cert->exp); return 0; }