Where allowed to run: All environments (*ALL) Threadsafe: No |
Parameters Examples Error messages |
The Check Object Integrity (CHKOBJITG) command checks the objects owned by the specified user profile, the objects that match the specified path name, or all objects on the system to determine if any objects have integrity violations. An integrity violation occurs if:
If an integrity violation has occurred, the object name, library name (or pathname), object type, object owner, and type of failure are logged to a database file.
The type of violations that can occur are:
Also logged to the database file, but not integrity violations, are objects that do not have a digital signature but can be signed, objects that could not be checked, and objects whose format requires changes to be used on this machine implementation (IMPI to RISC conversion).
The type of violations that can occur are:
Note: Objects that are compressed, damaged, saved with storage freed, or in debug mode may not be checked.
Note: IBM commands duplicated from a release prior to V5R2 will be logged as ALTERED violations. These commands should be deleted and re-created using the CRTDUPOBJ (Create Duplicate Object) command each time a new release is loaded.
Restrictions:
Note: The CHKOBJITG command may run a long time if:
Top |
Keyword | Description | Choices | Notes |
---|---|---|---|
USRPRF | User profile, or | Generic name, name, *ALL | Optional, Positional 1 |
OBJ | Object | Path name, *SYSTEM | Optional |
OUTFILE | File to receive output | Qualified object name | Optional, Positional 2 |
Qualifier 1: File to receive output | Name | ||
Qualifier 2: Library | Name, *LIBL, *CURLIB | ||
OUTMBR | Output member options | Element list | Optional |
Element 1: Member to receive output | Name, *FIRST | ||
Element 2: Replace or add records | *REPLACE, *ADD | ||
CHKDMN | Check domain | *YES, *NO | Optional |
CHKPGMMOD | Check program and module | *YES, *NO | Optional |
CHKCMD | Check command | *YES, *NO | Optional |
CHKSIG | Check signature | *SIGNED, *ALL, *NONE | Optional |
CHKLIB | Check library | *YES, *NO | Optional |
SCANFS | Scan file systems | *STATUS, *YES, *NO | Optional |
SUBTREE | Directory subtree | *NONE, *ALL | Optional |
Top |
Specifies the user profiles for which owned objects will be checked for integrity violations.
Note: A value must be specified for either the USRPRF parameter or the OBJ parameter. You cannot specify values for both parameters.
A generic name is a character string of one or more characters followed by an asterisk (*); for example ABC*. The asterisk substitutes for any valid characters. A generic name specifies all objects with names that begin with the generic prefix for which the user has authority. If an asterisk is not included with the generic (prefix) name, the system assumes it to be the complete object name.
Top |
Specifies the objects that will be checked for integrity violations.
Note: A value must be specified for either the USRPRF parameter or the OBJ parameter. You cannot specify values for both parameters.
Note: When *SYSTEM is specified, the only value allowed for the CHKSIG parameter is *ALL.
The object path name can be either a simple name or a name that is qualified with the name of the directory in which the object is located. A pattern can be specified in the last part of the path name. An asterisk (*) matches any number of characters and a question mark (?) matches a single character. If the path name is qualified or contains a pattern, it must be enclosed in apostrophes.
Top |
Specifies the database file to which the output of the command is directed. If the file does not exist, this command creates a database file in the specified library. If the file is created, the public authority for the file is the same as the create authority specified for the library in which the file is created. Use the Display Library Description (DSPLIBD) command to show the library's create authority.
Qualifier 1: File to receive output
Qualifier 2: Library
Note: If a new file is created, system file QASYCHKI in system library QSYS with a format name of QASYCHKI is used as a model.
Top |
Specifies the name of the database file member that receives the output of the command.
Element 1: Member to receive output
Element 2: Replace or add records
Top |
Specifies whether or not to check object domain integrity.
Note: The following objects are valid in user domain so they are not checked:
The following object types are valid in user domain only if the library they are in is specified in system value QALWUSRDMN (or if QALUSRDMN is *ALL).
Top |
Specifies whether or not the integrity of program and module objects will be checked.
Top |
Specifies whether or not the integrity of commands will be checked.
Top |
Specifies whether or not the digital signatures of objects that can be signed will be checked.
Top |
Specifies whether or not the integrity of library attributes will be checked.
Top |
Specifies whether objects in the integrated file systems identified by the QSCANFS system value should be scanned or if existing scan status should be returned.
The integrated file system scan-related exit points are:
For details on these exit points, see the System API Reference information in the iSeries Information Center at http://www.ibm.com/eserver/iseries/infocenter.
Top |
Specifies whether or not to check the objects within the subtree if the object specified by the Object (OBJ) parameter is a directory.
Note: Pattern matching from the OBJ parameter only applies to the first level objects. If the first level object is a directory, the pattern matching does not apply to its contents or the contents of its subdirectories.
Top |
Example 1: Check Objects Owned by One User Profile
CHKOBJITG USRPRF(JOEPGMR) OUTFILE(SECCHECK) OUTMBR(*FIRST *REPLACE) CHKDMN(*YES) CHKPGMMOD(*YES) CHKSIG(*YES) CHKLIB(*YES)
This command checks all objects owned by user JOEPGMR for integrity violations. Objects with an incorrect domain, program and module objects that have been tampered with, objects with digital signatures that are not valid, and libraries whose attributes have been tampered with will cause integrity violation records to be logged in database file SECCHECK. Database file SECCHECK is first cleared of any existing records.
Example 2: Check Objects Owned by Multiple User Profiles
CHKOBJITG USRPRF(ABC*) OUTFILE(ABCCHECK) OUTMBR(*FIRST *REPLACE) CHKDMN(*YES) CHKPGMMOD(*YES) CHKSIG(*NONE) CHKLIB(*YES)
This command checks all objects owned by user profiles that start with ABC for integrity violations. Objects with an incorrect domain, program and module objects that have been tampered with, and libraries whose attributes have been tampered with will cause integrity violation records to be logged to database file ABCCHECK. Database file ABCCHECK will first be cleared of any existing records.
Example 3: Check Objects in One Library
CHKOBJITG OBJ('/QSYS.LIB/LIB2.LIB/ABC*.*) OUTFILE(SECCHECK2) OUTMBR(*FIRST *REPLACE) CHKDMN(*YES) CHKPGMMOD(*YES) CHKSIG(*ALL) CHKLIB(*NO)
This command checks objects in library LIB2 that have names beginning with ABC that are of any object type for integrity violations. Objects with an incorrect domain, program and module objects that have been tampered with, and objects with not valid or missing digital signatures will cause integrity violation records to be logged to database file SECCHECK2. Database file SECCHECK2 will first be cleared of any existing records.
Example 4: Check Object in a Directory
CHKOBJITG OBJ('/PartOrder/Forms.jar') OUTFILE(SECCHECK3) OUTMBR(*FIRST *REPLACE) CHKDMN(*NO) CHKPGMMOD(*NO) CHKSIG(*ALL) CHKLIB(*NO)
This command checks file Forms.jar in directory PartOrder for integrity violations. If the file has a digital signature that is not valid or is capable of being signed and has no signature, an integrity violation record will be logged to database file SECCHECK3. Database file SECCHECK3 will first be cleared of any existing records.
Note: Any Java programs associated with this stream file will be checked for valid signatures as well.
Example 5: Check Object in a Directory
CHKOBJITG OBJ('/Parts/*') OUTFILE(SECCHECK4) CHKDMN(*NO) CHKPGMMOD(*NO) CHKSIG(*NONE) CHKLIB(*NO) SCANFS(*YES)
This command scans all files in directory Parts for integrity violations. If a file fails the scan by the scan-related exit program, an integrity violation record will be logged to database file SECCHECK4.
Top |
*ESCAPE Messages
Top |