aboutsummaryrefslogtreecommitdiffstats
path: root/src/sbearssl/sbearssl_x509_minimal_set_tai.c
blob: cfa12be9f1dca91587f2ebf45f5a139f2132efae (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
/* ISC license. */

#include <stdint.h>
#include <bearssl.h>
#include <skalibs/uint64.h>
#include <skalibs/tai.h>
#include <skalibs/djbtime.h>
#include <s6-networking/sbearssl.h>

int sbearssl_x509_minimal_set_tai (br_x509_minimal_context *ctx, tai_t const *t)
{
  uint64_t u ;
  if (!utc_from_tai(&u, t)) return 0 ;
  u -= TAI_MAGIC ;
  br_x509_minimal_set_time(ctx, (uint32_t)(u / 86400 + 719528), u % 86400) ;
  return 1 ;
}