summaryrefslogtreecommitdiff
path: root/src/libstddjb/tain_addsec.c
blob: b0d19e2c9f0424364765800f0ccb20a5f1f9479d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
/* ISC license. */

#include <skalibs/uint64.h>
#include <skalibs/tai.h>

int tain_addsec (tain_t *b, tain_t const *a, int c)
{
  if (c >= 0)
  {
    tai_t t = { .x = (uint64)c } ;
    tai_add(&b->sec, &a->sec, &t) ;
  }
  else
  {
    tai_t t = { .x = (uint64)-c } ;
    tai_sub(&b->sec, &a->sec, &t) ;
  }
  b->nano = a->nano ;
  return 1 ;
}