LCOV - code coverage report
Current view: top level - third_party/heimdal/lib/hcrypto/libtommath - bn_s_mp_get_bit.c (source / functions) Hit Total Coverage
Test: coverage report for v4-17-test 1498b464 Lines: 0 6 0.0 %
Date: 2024-06-13 04:01:37 Functions: 0 1 0.0 %

          Line data    Source code
       1             : #include "tommath_private.h"
       2             : #ifdef BN_S_MP_GET_BIT_C
       3             : 
       4             : /* LibTomMath, multiple-precision integer library -- Tom St Denis */
       5             : /* SPDX-License-Identifier: Unlicense */
       6             : 
       7             : /* Get bit at position b and return MP_YES if the bit is 1, MP_NO if it is 0 */
       8           0 : mp_bool s_mp_get_bit(const mp_int *a, unsigned int b)
       9             : {
      10             :    mp_digit bit;
      11           0 :    int limb = (int)(b / MP_DIGIT_BIT);
      12             : 
      13           0 :    if (limb >= a->used) {
      14           0 :       return MP_NO;
      15             :    }
      16             : 
      17           0 :    bit = (mp_digit)1 << (b % MP_DIGIT_BIT);
      18           0 :    return ((a->dp[limb] & bit) != 0u) ? MP_YES : MP_NO;
      19             : }
      20             : 
      21             : #endif

Generated by: LCOV version 1.13