What is signature checking?

435 pts.
Tags:
AS/400
RPG
Nirmala is trying to figure out what signature checking is and when to use it. Can you offer some advice? -- Michelle Davidson, editor, Search400.com

Answer Wiki

Thanks. We'll let you know when a new response is added.

In what context? Are we talking service programs here?

=========================================================

Signature checking is to service programs as level checking is to files.

A file has a ‘format level identifier’ that is constructed based on the field types, lengths and order when a record format is created. A service program has a signature that is constructed based on parameter types, sizes and position when the service program is compiled.

If a program is compiled over the file, the format level ID is copied into the program object. Whenever the program tries to open the file in the future the level in the program is compared against the level in the file. If the file has been recreated after changes to the field definitions, and the new fields don’t match precisely with the previous ones, there will be a different level ID and the open will fail with a “level check”.

If a program is created to bind with a service program, the signature is copied into the program object. Whenever the program tries to activate the service program, the signature is checked. If the service program has been changed and its parameters don’t match the previous ones, there will be a signature mismatch.

A difference is that service programs can have multiple procedures, all of which may result in different signatures. A service program can therefore present multiple signatures, carrying older ones along as long as the earlier procedures remain available. This is like a multi-format logical file that can have multiple level IDs.

Also, the signature of a service program can be specified by the programmer. This is done in “binder language” in a binder source member. Multiple signatures are listed in the binder source along with the names of the procedures they identify. As new procedures are added, you can add the signature that identifies the new combination of procedures to the binder language. As long as earlier procedures remain intact and their signature is kept in the list, new additions to the service program won’t disrupt them. This allows previously compiled programs to still find them in the recompiled service program.

Tom

Discuss This Question:  

 
There was an error processing your information. Please try again later.
Thanks. We'll let you know when a new response is added.
Send me notifications when members answer or reply to this question.

REGISTER or login:

Forgot Password?
By submitting you agree to receive email from TechTarget and its partners. If you reside outside of the United States, you consent to having your personal data transferred to and processed in the United States. Privacy

Forgot Password

No problem! Submit your e-mail address below. We'll send you an e-mail containing your password.

Your password has been sent to:

To follow this tag...

There was an error processing your information. Please try again later.

REGISTER or login:

Forgot Password?
By submitting you agree to receive email from TechTarget and its partners. If you reside outside of the United States, you consent to having your personal data transferred to and processed in the United States. Privacy

Thanks! We'll email you when relevant content is added and updated.

Following