Skip to main content

Purpose

This tool does check compiled elf-files (and all dependencies) against given rules. Objectives are

  • check for discouraged functions (e.g. strcpy)
  • check for combinations of symbols (e.g. mutex and pthreads)

Usage

usage: pysymbolcheck [-h] [--libpath LIBPATH] rules file

Eval symbols of a binary against given rules

positional arguments:
  rules              Path to a rule file
  file               File to parse

optional arguments:
  -h, --help         show this help message and exit
  --libpath LIBPATH  ":" separated path to lookup libraries

Rule file format

a rule file consists of a json-array, like this

[]

within this n element of the following can be added

{ "severity": "error", "id": "A_Unique_ID", "msg": "some message", "rule", "<rule>" }

for severity it is advised to use only info, warning or error

Rule definition

A rule can consist of any logical combined operation such as

((A && B) || (C && D )) && !E

to get the needed information following keywords are implemented

keyword variables purpose example
AVAILABLE() symbol-name check if a symbol is defined in the binary or any referenced lib AVAILABLE(strncpy)
USED() symbol-name check if a symbol is used by some binary or lib USED(strncpy)
SIZE() symbol-name get the size in bytes of a symbol SIZE(strncpy)
TYPE() symbol-name get the type in bytes of a symbol TYPE(strncpy)
&& n.a. logical and A && B
|| n.a. logical or A || B
! n.a. not operator !A

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pysymbolcheck-2.12.1.tar.gz (6.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pysymbolcheck-2.12.1-py3-none-any.whl (11.4 kB view details)

Uploaded Python 3

File details

Details for the file pysymbolcheck-2.12.1.tar.gz.

File metadata

  • Download URL: pysymbolcheck-2.12.1.tar.gz
  • Upload date:
  • Size: 6.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for pysymbolcheck-2.12.1.tar.gz
Algorithm Hash digest
SHA256 545d25bb3389500a149b665481d946d3b2ea7f6a2672783348e9e5f6e369983f
MD5 20e0528c870d945dacdc67df82967304
BLAKE2b-256 8e75db107e3e7ef5d97da3dac6b598e0575636dc8b5e7aaf9879958555212c4a

See more details on using hashes here.

File details

Details for the file pysymbolcheck-2.12.1-py3-none-any.whl.

File metadata

  • Download URL: pysymbolcheck-2.12.1-py3-none-any.whl
  • Upload date:
  • Size: 11.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for pysymbolcheck-2.12.1-py3-none-any.whl
Algorithm Hash digest
SHA256 44d00427cc03b4a11bdaaf647906742a1ac7407e60d52e3784a4886f36af79f6
MD5 13e993847c3ce7b2721094c404649a67
BLAKE2b-256 27027662fb822cf5eb48f47a7e58659954d51f653abef8cc2230cc4cb19097f6

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

2.12.1 This release

2 files

2.12.0

2 files

2.11.0

2 files

2.10.2

2 files

2.10.1

2 files

2.10.0

2 files

2.9.4

2 files

2.9.3

2 files

2.9.2

2 files

2.9.1

2 files

2.9.0

2 files

2.8.3

2 files

2.8.2

2 files

2.8.1

2 files

2.8.0

2 files

2.7.5

2 files

2.7.4

2 files

2.7.3

2 files

2.7.2

2 files

2.7

2 files

2.6

2 files

2.3

1 file

2.2

1 file

2.1

1 file

2.0

1 file

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page