×
The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.
 
I use a function to get the md5 from memory, you can use it by first
reading the ifs.
_CIPHER  does the trick.
On 03/11/2016 05:32 PM, Justin Taylor wrote:
Is it possible to generate an MD5 checksum for an IFS stream file?  If so, can someone throw me bone?
Thx
DCipher           PR                  EXTPROC('_CIPHER')
D                                 *   VALUE            
D                                 *   VALUE            
D                                 *   VALUE            
                                                              
DInput            S          32000                            
DptrInput         S               *   Inz(%Addr(Input))       
                                                              
DOutput           S             20                            
DptrOutput        S               *   Inz(%Addr(Output))      
                                                              
DdsControls       DS            96                            
D Function                       5U 0 Inz(5)                  
D HashAlgorithm                  1    Inz(x'01')              
D Sequence                       1    Inz(x'00')              
D DataLength                    10U 0                         
D OutputType                     1    Inz(x'00')              
D Reserved1                      7    Inz(*ALLx'00')          
D ptrHashContext                  *   Inz(%Addr(HashWorkArea))
DHashWorkArea     S             96    Inz(*LOVAL)             
 // Return a hash as a 16-byte binary value                         
PMD5Hash_BINARY   B                   Export                        
DMD5Hash_BINARY   PI            16                                  
D parmInput                  32000    Options(*VarSize) Const Varying
                                                                    
                                            
     HashAlgorithm = x'00';                                         
     HashWorkArea  = *LOVAL;                                        
     DataLength=%Len(parmInput);                                    
     Input=parmInput;                                               
     Cipher(%Addr(ptrOutput):                                       
            %Addr(dsControls):                                      
            %Addr(ptrInput));                                       
                                                                    
     Return Output;                                                 
                                                 
P                 E                                                 
                                                                    
-- Este e-mail fue enviado desde el Mail Server del diario ABC Color -- 
            -- Verificado por Anti-Virus Corporativo Symantec --
As an Amazon Associate we earn from qualifying purchases.