Line | Count | Source (jump to first uncovered line) |
1 | | #ifndef HEX_LL_H |
2 | | #define HEX_LL_H |
3 | | |
4 | | extern const signed char hexval_table[256]; |
5 | | static inline unsigned int hexval(unsigned char c) |
6 | 0 | { |
7 | 0 | return hexval_table[c]; |
8 | 0 | } Unexecuted instantiation: am.c:hexval Unexecuted instantiation: bisect.c:hexval Unexecuted instantiation: blame.c:hexval Unexecuted instantiation: cat-file.c:hexval Unexecuted instantiation: checkout.c:hexval Unexecuted instantiation: clone.c:hexval Unexecuted instantiation: commit-graph.c:hexval Unexecuted instantiation: commit-tree.c:hexval Unexecuted instantiation: describe.c:hexval Unexecuted instantiation: diff-tree.c:hexval Unexecuted instantiation: difftool.c:hexval Unexecuted instantiation: fast-export.c:hexval Unexecuted instantiation: fast-import.c:hexval Unexecuted instantiation: fetch-pack.c:hexval Unexecuted instantiation: fetch.c:hexval Unexecuted instantiation: fsck.c:hexval Unexecuted instantiation: gc.c:hexval Unexecuted instantiation: grep.c:hexval Unexecuted instantiation: hash-object.c:hexval Unexecuted instantiation: index-pack.c:hexval Unexecuted instantiation: log.c:hexval Unexecuted instantiation: ls-files.c:hexval Unexecuted instantiation: ls-remote.c:hexval Unexecuted instantiation: ls-tree.c:hexval Unexecuted instantiation: merge-base.c:hexval Unexecuted instantiation: merge-file.c:hexval Unexecuted instantiation: merge-index.c:hexval Unexecuted instantiation: merge-tree.c:hexval Unexecuted instantiation: merge.c:hexval Unexecuted instantiation: mktag.c:hexval Unexecuted instantiation: mktree.c:hexval Unexecuted instantiation: name-rev.c:hexval Unexecuted instantiation: notes.c:hexval Unexecuted instantiation: pack-objects.c:hexval Unexecuted instantiation: pack-redundant.c:hexval Unexecuted instantiation: patch-id.c:hexval Unexecuted instantiation: prune.c:hexval Unexecuted instantiation: pull.c:hexval Unexecuted instantiation: read-tree.c:hexval Unexecuted instantiation: rebase.c:hexval Unexecuted instantiation: receive-pack.c:hexval Unexecuted instantiation: repack.c:hexval Unexecuted instantiation: replace.c:hexval Unexecuted instantiation: replay.c:hexval Unexecuted instantiation: reset.c:hexval Unexecuted instantiation: rev-list.c:hexval Unexecuted instantiation: rev-parse.c:hexval Unexecuted instantiation: send-pack.c:hexval Unexecuted instantiation: show-branch.c:hexval Unexecuted instantiation: show-index.c:hexval Unexecuted instantiation: show-ref.c:hexval Unexecuted instantiation: stash.c:hexval Unexecuted instantiation: submodule--helper.c:hexval Unexecuted instantiation: tag.c:hexval Unexecuted instantiation: unpack-file.c:hexval Unexecuted instantiation: unpack-objects.c:hexval Unexecuted instantiation: update-index.c:hexval Unexecuted instantiation: worktree.c:hexval Unexecuted instantiation: write-tree.c:hexval Unexecuted instantiation: add-interactive.c:hexval Unexecuted instantiation: apply.c:hexval Unexecuted instantiation: archive.c:hexval Unexecuted instantiation: branch.c:hexval Unexecuted instantiation: bulk-checkin.c:hexval Unexecuted instantiation: bundle.c:hexval Unexecuted instantiation: cache-tree.c:hexval Unexecuted instantiation: color.c:hexval Unexecuted instantiation: combine-diff.c:hexval Unexecuted instantiation: commit-reach.c:hexval Unexecuted instantiation: commit.c:hexval Unexecuted instantiation: connect.c:hexval Unexecuted instantiation: connected.c:hexval Unexecuted instantiation: convert.c:hexval Unexecuted instantiation: delta-islands.c:hexval Unexecuted instantiation: diagnose.c:hexval Unexecuted instantiation: diff-lib.c:hexval Unexecuted instantiation: diff.c:hexval Unexecuted instantiation: dir.c:hexval Unexecuted instantiation: entry.c:hexval Unexecuted instantiation: fmt-merge-msg.c:hexval Unexecuted instantiation: hex.c:hexval Unexecuted instantiation: hex-ll.c:hexval Unexecuted instantiation: line-log.c:hexval Unexecuted instantiation: list-objects.c:hexval Unexecuted instantiation: log-tree.c:hexval Unexecuted instantiation: mailinfo.c:hexval Unexecuted instantiation: merge-ort.c:hexval Unexecuted instantiation: merge-recursive.c:hexval Unexecuted instantiation: midx.c:hexval Unexecuted instantiation: midx-write.c:hexval Unexecuted instantiation: notes-merge.c:hexval Unexecuted instantiation: object-file-convert.c:hexval Unexecuted instantiation: object-file.c:hexval Unexecuted instantiation: object-name.c:hexval Unexecuted instantiation: object.c:hexval Unexecuted instantiation: oidset.c:hexval Unexecuted instantiation: pack-bitmap-write.c:hexval Unexecuted instantiation: pack-bitmap.c:hexval Unexecuted instantiation: pack-check.c:hexval Unexecuted instantiation: pack-write.c:hexval Unexecuted instantiation: packfile.c:hexval Unexecuted instantiation: parallel-checkout.c:hexval Unexecuted instantiation: patch-ids.c:hexval Unexecuted instantiation: pkt-line.c:hexval Unexecuted instantiation: pretty.c:hexval Unexecuted instantiation: promisor-remote.c:hexval Unexecuted instantiation: pseudo-merge.c:hexval Unexecuted instantiation: reachable.c:hexval Unexecuted instantiation: read-cache.c:hexval Unexecuted instantiation: ref-filter.c:hexval Unexecuted instantiation: refs.c:hexval Unexecuted instantiation: debug.c:hexval Unexecuted instantiation: files-backend.c:hexval Unexecuted instantiation: reftable-backend.c:hexval Unexecuted instantiation: packed-backend.c:hexval Unexecuted instantiation: refspec.c:hexval Unexecuted instantiation: remote.c:hexval Unexecuted instantiation: replace-object.c:hexval Unexecuted instantiation: rerere.c:hexval Unexecuted instantiation: revision.c:hexval Unexecuted instantiation: sequencer.c:hexval Unexecuted instantiation: server-info.c:hexval Unexecuted instantiation: setup.c:hexval Unexecuted instantiation: shallow.c:hexval Unexecuted instantiation: strbuf.c:hexval Unexecuted instantiation: submodule-config.c:hexval Unexecuted instantiation: submodule.c:hexval Unexecuted instantiation: tr2_sid.c:hexval Unexecuted instantiation: transport-helper.c:hexval Unexecuted instantiation: transport.c:hexval Unexecuted instantiation: tree-walk.c:hexval Unexecuted instantiation: tree.c:hexval Unexecuted instantiation: unpack-trees.c:hexval Unexecuted instantiation: upload-pack.c:hexval Unexecuted instantiation: url.c:hexval Unexecuted instantiation: urlmatch.c:hexval Unexecuted instantiation: wt-status.c:hexval Unexecuted instantiation: xdiff-interface.c:hexval Unexecuted instantiation: sha1dc_git.c:hexval Unexecuted instantiation: archive-tar.c:hexval Unexecuted instantiation: archive-zip.c:hexval Unexecuted instantiation: list-objects-filter.c:hexval Unexecuted instantiation: loose.c:hexval Unexecuted instantiation: ls-refs.c:hexval Unexecuted instantiation: match-trees.c:hexval Unexecuted instantiation: skipping.c:hexval Unexecuted instantiation: protocol-caps.c:hexval |
9 | | |
10 | | /* |
11 | | * Convert two consecutive hexadecimal digits into a char. Return a |
12 | | * negative value on error. Don't run over the end of short strings. |
13 | | */ |
14 | | static inline int hex2chr(const char *s) |
15 | 0 | { |
16 | 0 | unsigned int val = hexval(s[0]); |
17 | 0 | return (val & ~0xf) ? val : (val << 4) | hexval(s[1]); |
18 | 0 | } Unexecuted instantiation: am.c:hex2chr Unexecuted instantiation: bisect.c:hex2chr Unexecuted instantiation: blame.c:hex2chr Unexecuted instantiation: cat-file.c:hex2chr Unexecuted instantiation: checkout.c:hex2chr Unexecuted instantiation: clone.c:hex2chr Unexecuted instantiation: commit-graph.c:hex2chr Unexecuted instantiation: commit-tree.c:hex2chr Unexecuted instantiation: describe.c:hex2chr Unexecuted instantiation: diff-tree.c:hex2chr Unexecuted instantiation: difftool.c:hex2chr Unexecuted instantiation: fast-export.c:hex2chr Unexecuted instantiation: fast-import.c:hex2chr Unexecuted instantiation: fetch-pack.c:hex2chr Unexecuted instantiation: fetch.c:hex2chr Unexecuted instantiation: fsck.c:hex2chr Unexecuted instantiation: gc.c:hex2chr Unexecuted instantiation: grep.c:hex2chr Unexecuted instantiation: hash-object.c:hex2chr Unexecuted instantiation: index-pack.c:hex2chr Unexecuted instantiation: log.c:hex2chr Unexecuted instantiation: ls-files.c:hex2chr Unexecuted instantiation: ls-remote.c:hex2chr Unexecuted instantiation: ls-tree.c:hex2chr Unexecuted instantiation: merge-base.c:hex2chr Unexecuted instantiation: merge-file.c:hex2chr Unexecuted instantiation: merge-index.c:hex2chr Unexecuted instantiation: merge-tree.c:hex2chr Unexecuted instantiation: merge.c:hex2chr Unexecuted instantiation: mktag.c:hex2chr Unexecuted instantiation: mktree.c:hex2chr Unexecuted instantiation: name-rev.c:hex2chr Unexecuted instantiation: notes.c:hex2chr Unexecuted instantiation: pack-objects.c:hex2chr Unexecuted instantiation: pack-redundant.c:hex2chr Unexecuted instantiation: patch-id.c:hex2chr Unexecuted instantiation: prune.c:hex2chr Unexecuted instantiation: pull.c:hex2chr Unexecuted instantiation: read-tree.c:hex2chr Unexecuted instantiation: rebase.c:hex2chr Unexecuted instantiation: receive-pack.c:hex2chr Unexecuted instantiation: repack.c:hex2chr Unexecuted instantiation: replace.c:hex2chr Unexecuted instantiation: replay.c:hex2chr Unexecuted instantiation: reset.c:hex2chr Unexecuted instantiation: rev-list.c:hex2chr Unexecuted instantiation: rev-parse.c:hex2chr Unexecuted instantiation: send-pack.c:hex2chr Unexecuted instantiation: show-branch.c:hex2chr Unexecuted instantiation: show-index.c:hex2chr Unexecuted instantiation: show-ref.c:hex2chr Unexecuted instantiation: stash.c:hex2chr Unexecuted instantiation: submodule--helper.c:hex2chr Unexecuted instantiation: tag.c:hex2chr Unexecuted instantiation: unpack-file.c:hex2chr Unexecuted instantiation: unpack-objects.c:hex2chr Unexecuted instantiation: update-index.c:hex2chr Unexecuted instantiation: worktree.c:hex2chr Unexecuted instantiation: write-tree.c:hex2chr Unexecuted instantiation: add-interactive.c:hex2chr Unexecuted instantiation: apply.c:hex2chr Unexecuted instantiation: archive.c:hex2chr Unexecuted instantiation: branch.c:hex2chr Unexecuted instantiation: bulk-checkin.c:hex2chr Unexecuted instantiation: bundle.c:hex2chr Unexecuted instantiation: cache-tree.c:hex2chr Unexecuted instantiation: color.c:hex2chr Unexecuted instantiation: combine-diff.c:hex2chr Unexecuted instantiation: commit-reach.c:hex2chr Unexecuted instantiation: commit.c:hex2chr Unexecuted instantiation: connect.c:hex2chr Unexecuted instantiation: connected.c:hex2chr Unexecuted instantiation: convert.c:hex2chr Unexecuted instantiation: delta-islands.c:hex2chr Unexecuted instantiation: diagnose.c:hex2chr Unexecuted instantiation: diff-lib.c:hex2chr Unexecuted instantiation: diff.c:hex2chr Unexecuted instantiation: dir.c:hex2chr Unexecuted instantiation: entry.c:hex2chr Unexecuted instantiation: fmt-merge-msg.c:hex2chr Unexecuted instantiation: hex.c:hex2chr Unexecuted instantiation: hex-ll.c:hex2chr Unexecuted instantiation: line-log.c:hex2chr Unexecuted instantiation: list-objects.c:hex2chr Unexecuted instantiation: log-tree.c:hex2chr Unexecuted instantiation: mailinfo.c:hex2chr Unexecuted instantiation: merge-ort.c:hex2chr Unexecuted instantiation: merge-recursive.c:hex2chr Unexecuted instantiation: midx.c:hex2chr Unexecuted instantiation: midx-write.c:hex2chr Unexecuted instantiation: notes-merge.c:hex2chr Unexecuted instantiation: object-file-convert.c:hex2chr Unexecuted instantiation: object-file.c:hex2chr Unexecuted instantiation: object-name.c:hex2chr Unexecuted instantiation: object.c:hex2chr Unexecuted instantiation: oidset.c:hex2chr Unexecuted instantiation: pack-bitmap-write.c:hex2chr Unexecuted instantiation: pack-bitmap.c:hex2chr Unexecuted instantiation: pack-check.c:hex2chr Unexecuted instantiation: pack-write.c:hex2chr Unexecuted instantiation: packfile.c:hex2chr Unexecuted instantiation: parallel-checkout.c:hex2chr Unexecuted instantiation: patch-ids.c:hex2chr Unexecuted instantiation: pkt-line.c:hex2chr Unexecuted instantiation: pretty.c:hex2chr Unexecuted instantiation: promisor-remote.c:hex2chr Unexecuted instantiation: pseudo-merge.c:hex2chr Unexecuted instantiation: reachable.c:hex2chr Unexecuted instantiation: read-cache.c:hex2chr Unexecuted instantiation: ref-filter.c:hex2chr Unexecuted instantiation: refs.c:hex2chr Unexecuted instantiation: debug.c:hex2chr Unexecuted instantiation: files-backend.c:hex2chr Unexecuted instantiation: reftable-backend.c:hex2chr Unexecuted instantiation: packed-backend.c:hex2chr Unexecuted instantiation: refspec.c:hex2chr Unexecuted instantiation: remote.c:hex2chr Unexecuted instantiation: replace-object.c:hex2chr Unexecuted instantiation: rerere.c:hex2chr Unexecuted instantiation: revision.c:hex2chr Unexecuted instantiation: sequencer.c:hex2chr Unexecuted instantiation: server-info.c:hex2chr Unexecuted instantiation: setup.c:hex2chr Unexecuted instantiation: shallow.c:hex2chr Unexecuted instantiation: strbuf.c:hex2chr Unexecuted instantiation: submodule-config.c:hex2chr Unexecuted instantiation: submodule.c:hex2chr Unexecuted instantiation: tr2_sid.c:hex2chr Unexecuted instantiation: transport-helper.c:hex2chr Unexecuted instantiation: transport.c:hex2chr Unexecuted instantiation: tree-walk.c:hex2chr Unexecuted instantiation: tree.c:hex2chr Unexecuted instantiation: unpack-trees.c:hex2chr Unexecuted instantiation: upload-pack.c:hex2chr Unexecuted instantiation: url.c:hex2chr Unexecuted instantiation: urlmatch.c:hex2chr Unexecuted instantiation: wt-status.c:hex2chr Unexecuted instantiation: xdiff-interface.c:hex2chr Unexecuted instantiation: sha1dc_git.c:hex2chr Unexecuted instantiation: archive-tar.c:hex2chr Unexecuted instantiation: archive-zip.c:hex2chr Unexecuted instantiation: list-objects-filter.c:hex2chr Unexecuted instantiation: loose.c:hex2chr Unexecuted instantiation: ls-refs.c:hex2chr Unexecuted instantiation: match-trees.c:hex2chr Unexecuted instantiation: skipping.c:hex2chr Unexecuted instantiation: protocol-caps.c:hex2chr |
19 | | |
20 | | /* |
21 | | * Read `len` pairs of hexadecimal digits from `hex` and write the |
22 | | * values to `binary` as `len` bytes. Return 0 on success, or -1 if |
23 | | * the input does not consist of hex digits). |
24 | | */ |
25 | | int hex_to_bytes(unsigned char *binary, const char *hex, size_t len); |
26 | | |
27 | | #endif |