---
name: "fitsverify"
section: "1"
platform: "linux"
package: "libcfitsio-bin"
version: "4.6.2-2"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/fitsverify"
---

# fitsverify(1)

test if file conform to the FITS format

## NAME

fitsverify - test if file conform to the FITS format

## SYNOPSIS

**fitsverify** \[*OPTION*\]... *FILE*...\
 **fitsverify** \[*OPTION*\]... *@FILELIST*

## DESCRIPTION

**fitsverify** is a utility program designed to verify that files conform to the specifications of the FITS Standard document (known as the NASA/Science Office of Standards and Technology 'Definition of the Current  FITS Standard', document number, NOST 100-2.0, available online at https://fits.gsfc.nasa.gov/).  The input filename template may contain wildcard characters, in which case all matching files will be tested.  Alternatively, the name of an ASCII text file containing a list of file names, one per line, may be entered preceded by an '@' character.

## OPTIONS

Flags must be separate and appear before filenames.

-

  - **-H**

  Test ESO HIERARCH keywords

- **-l**

  List all header keywords.

- **-q**

  Quiet, print one-line pass/fail summary per file.

- **-e**

  Only test for error conditions, don't issue warnings.

- **-h**

  Show help.

## ERROR CONDITIONS

- •

  Mandatory keyword not present or out of order

- •

  Mandatory keyword has wrong datatype or illegal value

- •

  END header keyword is not present

- •

  Sum of table column widths is inconsistent with NAXIS1 value

- •

  BLANK keyword present in image with floating-point datatype

- •

  TNULLn keyword present for floating-point binary table column

- •

  Bit column has non-zero fill bits or is not left adjusted

- •

  ASCII TABLE column contains illegal value inconsistent with TFORMn

- •

  Address to a variable length array not within the data heap

- •

  Extraneous bytes in the FITS file following the last HDU

- •

  Mandatory keyword values not expressed in fixed format

- •

  Mandatory keyword duplicated elsewhere in the header

- •

  Header contains illegal ASCII character (not ASCII 32 - 126)

- •

  Keyword name contains illegal character

- •

  Keyword value field has illegal format

- •

  Value and comment fields not separated by a slash character

- •

  END keyword not filled with blanks in columns 9 - 80

- •

  Reserved keyword with wrong datatype or illegal value

- •

  EXTEND not present in the primary array if there are extensions

- •

  BLOCKED, if present, not among the first 36 keywords

- •

  XTENSION keyword in the primary array

- •

  Column related keyword (TFIELDS, TTYPEn,TFORMn, etc.) in an image

- •

  SIMPLE, EXTEND, or BLOCKED keyword in any extension

- •

  BSCALE, BZERO, BUNIT, BLANK, DATAMAX, DATAMIN keywords in a table

- •

  Image WCS keywords (CTYPEn, CRPIXn, CRVALn, etc.) in a table

- •

  Table WCS keywords (TCTYPn, TCRPXn, TCRVLn, etc.) in an image

- •

  TDIMn or THEAP keyword in an ASCII table

- •

  TBCOLn keyword in a Binary table

- •

  THEAP keyword in a binary table that has PCOUNT = 0

- •

  XTENSION, TFORMn, TDISPn or TDIMn value contains leading space(s)

- •

  Index of any WCS keyword (CRPIXn, CRVALn, etc.) greater than value of WCSAXES

- •

  Index of any table column descriptor keyword (TTYPEn, TFORMn, etc.) greater than value of TFIELDS

- •

  TSCALn or TZEROn present for an ASCII, logical, or Bit column

- •

  TDISPn value is inconsistent with the column datatype

- •

  Length of a variable length array greater than the maximum  length as given by the TFORMn keyword

- •

  Logical column contains illegal value not equal to 'T', 'F', or 0

- •

  Character string column contains non-ASCII text character

- •

  Header fill bytes not all blanks

- •

  Data fill bytes not all blanks in ASCII tables or all zeros in any other type of HDU

- •

  Gaps between defined ASCII table columns contain characters with ASCII value \> 127

## WARNING CONDITIONS

- •

  SIMPLE = F

- •

  Presence of deprecated keywords BLOCKED or EPOCH

- •

  2 HDUs have identical EXTNAME, EXTVER, and EXTLEVEL values

- •

  BSCALE or TSCALn value = 0.

- •

  BLANK OR TNULLn value exceeds the legal range

- •

  TFORMn has 'rAw' format and r is not a multiple of w

- •

  DATE = 'dd/mm/yy' and yy is less than 10 (Y2K problem??)

- •

  Index of any WCS keyword (CRPIXn, CRVALn, etc.) greater than value of NAXIS, if the WCSAXES keyword is not present

- •

  Duplicated keyword (except COMMENT, HISTORY, blank, etc.)

- •

  Column name (TTYPEn) does not exist or contains characters other than letter, digit and underscore

- •

  Calculated checksum inconsistent with CHECKSUM or DATASUM keyword

## AUTHOR

HEASARC at NASA/GSFC

## EXIT STATUS

The exit status of **fitsverify** is the sum of the number of errors and warnings issued, capped at 255. It returns 0 if no errors or warnings have been found.

## SEE ALSO

[**fitscopy**(1)](/fitscopy/1.md).
