Coverage Report

Created: 2025-11-07 06:58

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
/src/util-linux/include/iso9660.h
Line
Count
Source
1
/*
2
 * No copyright is claimed.  This code is in the public domain; do with
3
 * it what you wish.
4
 */
5
#ifndef UTIL_LINUX_ISO_H
6
#define UTIL_LINUX_ISO_H
7
8
#include <stdbool.h>
9
#include <stdint.h>
10
11
#include "c.h"
12
13
static inline uint16_t isonum_721(const unsigned char *p)
14
248
{
15
248
  return ((p[0] & 0xff)
16
248
    | ((p[1] & 0xff) << 8));
17
248
}
18
19
static inline uint16_t isonum_722(const unsigned char *p)
20
248
{
21
248
  return ((p[1] & 0xff)
22
248
    | ((p[0] & 0xff) << 8));
23
248
}
24
25
static inline uint16_t isonum_723(const unsigned char *p, bool check_match)
26
248
{
27
248
  uint16_t le = isonum_721(p);
28
248
  uint16_t be = isonum_722(p + 2);
29
30
248
  if (check_match && le != be)
31
    /* translation is useless */
32
0
    warnx("723error: le=%d be=%d", le, be);
33
248
  return (le);
34
248
}
35
36
static inline uint32_t isonum_731(const unsigned char *p)
37
248
{
38
248
  return ((p[0] & 0xff)
39
248
    | ((p[1] & 0xff) << 8)
40
248
    | ((p[2] & 0xff) << 16)
41
248
    | (((uint32_t) p[3] & 0xff) << 24));
42
248
}
43
44
static inline uint32_t isonum_732(const unsigned char *p)
45
248
{
46
248
  return ((p[3] & 0xff)
47
248
    | ((p[2] & 0xff) << 8)
48
248
    | ((p[1] & 0xff) << 16)
49
248
    | (((uint32_t) p[0] & 0xff) << 24));
50
248
}
51
52
static inline uint32_t isonum_733(const unsigned char *p, bool check_match)
53
248
{
54
248
  uint32_t le = isonum_731(p);
55
248
  uint32_t be = isonum_732(p + 4);
56
57
248
  if (check_match && le != be)
58
    /* translation is useless */
59
0
    warnx("733error: le=%d be=%d", le, be);
60
248
  return(le);
61
248
}
62
63
#endif