× 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 am feeling my way along with RPG ILE and I am having trouble understanding
D specs.  I'll be the first to admit that perhaps I was missing the boat
even with I specs....

I am modifying an example telnet exit program that expects 7 parameters and
has a plist coded like:

0058.00 c     *entry        plist                                
0059.00 c                   parm                    peUserDscInfo
0060.00 c                   parm                    peDevDscInfo 
0061.00 c                   parm                    peCnnDscInfo 
0062.00 c                   parm                    peEnvOpt     
0063.00 c                   parm                    peEnvOptLen  
0064.00 c                   parm                    peAllowConn  
0065.00 c                   parm                    peAutoSignOn 

There is code that assigns a pointer to the address of the parameter (I
think that is what it is doing...)

0069.00 c                   eval      p_CnnDscInfo = %addr(peCnnDscInfo) 

Up above in the the D specs  I have the following D spec that I think breaks
the parameter (pointed to by the pointer) into a data structure:

0044.00  ** Connection Description Info structure                 
0045.00 D p_CnnDscInfo    S               *   inz(*NULL)          
0046.00 D dsCnnDscInfo    DS                  based(p_CnnDscInfo) 
0046.01 D  dsLenCnnInfo                 10I 0                     
0046.02 D  dsCnnIntrAdd                 20A                       
0046.03 D  dsCnnPwdVal                   1A                       
0046.04 D  dsCnnWrkTyp                  12A                       
0050.01 D  dsCnnSSLCnn                   1A     
                  

What I am most interested in here is the dsCnnSSLCnn field which I want to
evaluate for further processing.  It comes across as a blank rather than a
"1" or a "0". I am guessing that it is a data mapping issue.  The Exit
program documentation says the data should look like:

Table 1. Format of Connection Description Information

Offset
Dec Hex  Type     Field 
0   0    INT(4)         Length of connection description information 
4   4    CHAR(20) Client internet address 
24 18    CHAR(1)  Client password validated 
25 19    CHAR(12) Workstation type 
39 27    CHAR(1)  Secure socket layer connection 
40 28    CHAR(20) Server (local) internet address 
60 3C    CHAR(1)  Client authentication level 
61 3D    CHAR(3)  Reserved 
64 40    INT(4)   Client certificate valid rc 
68 44    INT(4)   Offset to client certificate 
72 48    INT(4)   Client certificate length   

I am using dsply to display the information when the program runs.  It
return blanks. Admittedly  there is a bit of "magic" in the D spec of the
datastructure since I am used to slavishly entering to-from values and here
it doesn't appear necessary.  Or is it?

Just need a bit of direction so I know where to look for the SSL connection
flag.

Thanks,
 
Pete Helgren
Value Added Software,Inc.
801.581.1154 x202


As an Amazon Associate we earn from qualifying purchases.

This thread ...

Follow-Ups:

Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].

Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.