---
name: "asntool"
section: "1"
platform: "linux"
package: "ncbi-tools-bin"
version: "6.1.20170106+dfsg2-6"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/asntool"
---

# asntool(1)

process ASN.1 module specifications

## NAME

asntool - process ASN.1 module specifications

## SYNOPSIS

**asntool** \[**-**\] \[**-B** *filename*\] \[**-D** *N*\] \[**-F** *N*\] \[**-G**\] \[**-I** *str*\] \[**-J** *type*\] \[**-K** *str*\] \[**-L** *str*\] \[**-M** *filename,...*\] \[**-N** *N*\] \[**-P** *str*\] \[**-Q**\] \[**-S** *filename*\] \[**-T** *filename*\] \[**-U** *N*\] \[**-V**\] \[**-X** *filename*\] \[**-Z**\] \[**-b** *N*\] \[**-d** *filename*\] \[**-e** *filename*\] \[**-f** *filename*\] \[**-l** *filename*\] **-m** *filename* \[**-o** *filename*\] \[**-p** *filename*\] \[**-t** *str*\] \[**-v** *filename*\] \[**-w** *N*\] \[**-x** *filename*\]

## DESCRIPTION

**asntool** reads, validates, and displays ASN.1 module specifications.

## OPTIONS

A summary of options is included below.

- **-**

  Print usage message

- **-B** *filename*

  Generate objects and code in files named *filename*.\*

- **-D** *N*

  Debugging level for code generation:

  - 0

    No debugging (default)

  - 1

    Shallow debugging

  - 2

    Deep debugging

  - 3-9

    Same as 2

- **-F** *N*

  Fix non-printing characters:

  - 0

    Replace with #, post ERROR (default)

  - 1

    Replace with # silently

  - 2

    Pass through silently

  - 3

    Replace with #, post FATAL

- **-G**

  Generate object loader .c and .h files

- **-I** *str*

  Put "#include *str*" in generated .c file

- **-J** *type*

  Register type *type* with object manager

- **-K** *str*

  In generated .c, force name of #included asn header to *str*

- **-L** *str*

  Label registered type as *str*

- **-M** *filename,...*

  Search the ASN.1 modules in *filename,...* for external references

- **-N** *N*

  UTF8 input conversion:

  - 0

    Convert silently (default)

  - 1

    Convert, post WARNING first time

  - 2

    Convert, post WARNING each time

  - 3

    Do not convert

- **-P** *str*

  XML module prefix for **DOCTYPE**

- **-Q**

  Use quoted syntax form for generated include files

- **-S** *filename*

  Send debugging output to *filename* rather than stderr

- **-T** *filename*

  Dump ASN.1 tree to *filename*

- **-U** *N*

  UTF8 output conversion:

  - 0

    Convert silently (default)

  - 1

    Convert, post WARNING first time

  - 2

    Convert, post WARNING each time

  - 3

    Do not convert

- **-V**

  Force CHOICE objects to use custom structures rather than ValNodePtrs, for compatibility with some old hand-coded object loaders.

- **-X** *filename*

  Write XML DTD to *filename*.  If *filename* is "m", print each module to a separate file.

- **-Z**

  Bit twiddle for optional zero value base slots

- **-b** *N*

  Use *N*-byte buffers (default = 1024; anything between 512 and 10000 is legal)

- **-d** *filename*

  Read binary values from *filename* (requires **-t**)

- **-e** *filename*

  Write binary values to *filename*

- **-f** *filename*

  Write ASN.1 module to *filename*

- **-l** *filename*

  Write ASN.1 loader to *filename*

- **-m** *filename*

  Read ASN.1 module from *filename*

- **-o** *filename*

  Write header to *filename*

- **-p** *filename*

  Write print values to *filename*

- **-t** *str*

  Expect binary values to have type *str*

- **-v** *filename*

  Read print values from *filename*

- **-w** *N*

  Limit values in #defines to *N* bits (default = 31; anything between 31 and 128 is legal)

- **-x** *filename*

  Write XML data to *filename*

## AUTHOR

The National Center for Biotechnology Information.
