H*--+--------------------------------------------------------+--* H*--+ PROGRAM ID : RFTP_LOGON +--* H*--+ PROGRAM NAME : RPG OF $FTP_LOGON +--* H*--+--------------------------------------------------------+--* H*--+ VERSION : 1.1 (1999/02/26) RENAME OF RPG +--* H*--+ 1.0 (1998/11/17) +--* H*--+--------------------------------------------------------+--* * FFTPCNF IF E K DISK FFTPUSR IF E K DISK FFTPIP IF E K DISK * C*--+--------------------------------------------------------+--* C*--+ ACCEPT PARAMETER FROM $FTP_LOGON +--* C*--+--------------------------------------------------------+--* C *ENTRY PLIST C PARM P#USR 10 USER PROFILE C PARM P#IP 15 IP ADDRESS C PARM P#RTN 10 RETURN CODE * C*--+--------------------------------------------------------+--* C*--+ START OF PROGRAM +--* C*--+--------------------------------------------------------+--* C EXSR SRINIT C EXSR SRMAIN C EXSR SREND * C*--+--------------------------------------------------------+--* C*--+ INITIALIZE +--* C*--+--------------------------------------------------------+--* C SRINIT BEGSR C READ FTPCNF 90 C* IF CONF DATA WAS NOT FOUND, THIS PGM USE BELOW VALUES. C *IN90 IFEQ *ON C MOVE '*USRPRF' CNFCHK C MOVE '*OR ' CNFIF C MOVE '*LOGIN ' CNFTYP C END C ENDSR * C*--+--------------------------------------------------------+--* C*--+ M A I N +--* C*--+--------------------------------------------------------+--* C SRMAIN BEGSR C Z-ADD0 P#RTN C* CHECK DATA IS USER PROFILE DATA C CNFCHK IFEQ '*BOTH ' C CNFCHK OREQ '*USRPRF' C EXSR SRUSR C END C* C* CHECK DATA IS IP ADDRESS DATA C CNFCHK IFEQ '*BOTH ' C CNFCHK OREQ '*IPADDR' C EXSR SRIP C END C* C* CHECK MODE IS *BOTH C CNFCHK IFEQ '*BOTH ' C* C CNFIF IFEQ '*OR ' C XF#USR IFEQ '*ALLOW' C XF#IP OREQ '*ALLOW' C Z-ADD1 P#RTN C END C END C* C CNFIF IFEQ '*AND' C XF#USR IFEQ '*ALLOW' C XF#IP ANDEQ'*ALLOW' C Z-ADD1 P#RTN C END C END C* C END C* C* CHECK MODE IS *USRPRF C CNFCHK IFEQ '*USRPRF' C XF#USR ANDEQ'*ALLOW' C Z-ADD1 P#RTN C END C* C* CHECK MODE IS *IPADDR C CNFCHK IFEQ '*IPADDR' C XF#IP ANDEQ'*ALLOW' C Z-ADD1 P#RTN C END C ENDSR * C*--+--------------------------------------------------------+--* C*--+ END OF PROGRAM +--* C*--+--------------------------------------------------------+--* C SREND BEGSR C SETON LR C RETRN C ENDSR * C*--+--------------------------------------------------------+--* C*--+ CHECK USER PROFILE DATA +--* C*--+--------------------------------------------------------+--* C SRUSR BEGSR C MOVE ' ' XF#USR 6 FLG C* C P#USR CHAINFTPUSR 91 C* C CNFTYP IFEQ '*LOGIN ' C *IN91 ANDEQ*OFF C MOVE '*ALLOW' XF#USR C END C* C CNFTYP IFEQ '*REJECT' C *IN91 ANDEQ*ON C MOVE '*ALLOW' XF#USR C END C ENDSR * C*--+--------------------------------------------------------+--* C*--+ CHECK IP ADDRESS DATA +--* C*--+--------------------------------------------------------+--* C SRIP BEGSR C MOVE ' ' XF#IP 6 FLG C* C P#IP CHAINFTPIP 92 C* C CNFTYP IFEQ '*LOGIN ' C *IN92 ANDEQ*OFF C MOVE '*ALLOW' XF#IP C END C* C CNFTYP IFEQ '*REJECT' C *IN92 ANDEQ*ON C MOVE '*ALLOW' XF#IP C END C ENDSR