Skip to content

Instantly share code, notes, and snippets.

@shelajev
Created October 15, 2020 13:48
Show Gist options
  • Save shelajev/0f76496e1c4801c0f8364f871e16b08f to your computer and use it in GitHub Desktop.
Save shelajev/0f76496e1c4801c0f8364f871e16b08f to your computer and use it in GitHub Desktop.
IDENTIFICATION DIVISION.
PROGRAM-ID. KECCAK-Wrapper-struct.
ENVIRONMENT DIVISION.
DATA DIVISION.
WORKING-STORAGE SECTION.
LINKAGE SECTION.
01 LNK-KECCAK.
02 LNK-KECCAK-RATE BINARY-LONG UNSIGNED.
02 LNK-KECCAK-CAPACITY BINARY-LONG UNSIGNED.
02 LNK-KECCAK-INPUT POINTER.
02 LNK-KECCAK-INPUT-BYTE-LEN POINTER.
02 LNK-KECCAK-DELIMITED-SUFFIX BINARY-CHAR UNSIGNED.
02 LNK-KECCAK-OUTPUT POINTER.
02 LNK-KECCAK-OUTPUT-BYTE-LEN BINARY-DOUBLE UNSIGNED.
PROCEDURE DIVISION USING LNK-KECCAK.
CALL "KECCAK" USING
LNK-KECCAK-RATE
LNK-KECCAK-CAPACITY
BY VALUE LNK-KECCAK-INPUT
BY VALUE LNK-KECCAK-INPUT-BYTE-LEN
BY REFERENCE LNK-KECCAK-DELIMITED-SUFFIX
BY VALUE LNK-KECCAK-OUTPUT
BY REFERENCE LNK-KECCAK-OUTPUT-BYTE-LEN
END-CALL
EXIT.
END PROGRAM KECCAK-Wrapper-struct.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment