|
This is a multi-part message in MIME format.
--
[ Picked text/plain from multipart/alternative ]
Thank you all for your suggestions about writing exit programs for exit points
using examples from books such as "Cool title about the AS/400 and the
internet" and "Who knew you could do that with RPGIV".
However, after a week of working on this, I am still have difficulties in
successfully implementing these exit programs. I have pasted some of the
messages I get when I try to FTP into our AS/400. I have also pasted the CL
program I found somewhere that I use to validate server logon.
I'd like to add that the problem with being rejected from logging on and
sometimes even refused connection happens with all the exit programs I write
not just this 1 little CL program. I duplicated every exit program that has
been put in front of me and when I implement them my connection is refused or
log on is rejected.
I created the program in my library. Ran the command "WRKREGINF". Selected
"QIBM_QTMF_SVR_LOGON" with an option "8". Added exit program "FTPLOGON" from
my library. I wait a few minutes. Go to MS-DOS and below is the result:
=========================
C:\WINDOWS>ftp 192.168.XXX.XX
Connected to 192.168.XXX.XX.
220-QTCP at 192.168.XXX.XX.
220 Connection will close if idle more than 5 minutes.
User (192.168.XXX.XX:(none)): frank
331 Enter password.
Password:
530 Log on attempt by user FRANK rejected.
Login failed.
ftp> quit
221 QUIT subcommand received.
===============================
Source for the CL exit program:
========================================
PGM PARM(&APPIDIN &USRIN &USRLENIN &AUTIN +
&AUTLENIN &IPADDRIN &IPLENIN &RETCDOUT +
&USRPRFOUT &PASSWDOUT &CURLIBOUT)
DCL VAR(&APPIDIN) TYPE(*CHAR) LEN(4)
DCL VAR(&USRIN) TYPE(*CHAR) LEN(999)
DCL VAR(&USRLENIN) TYPE(*CHAR) LEN(4)
DCL VAR(&AUTIN) TYPE(*CHAR) LEN(999)
DCL VAR(&AUTLENIN) TYPE(*CHAR) LEN(4)
DCL VAR(&IPADDRIN) TYPE(*CHAR) LEN(15)
DCL VAR(&IPLENIN) TYPE(*CHAR) LEN(4)
DCL VAR(&RETCDOUT) TYPE(*CHAR) LEN(4)
DCL VAR(&USRPRFOUT) TYPE(*CHAR) LEN(10)
DCL VAR(&PASSWDOUT) TYPE(*CHAR) LEN(10)
DCL VAR(&CURLIBOUT) TYPE(*CHAR) LEN(10)
DCL VAR(&APPID) TYPE(*DEC) LEN(1 0)
DCL VAR(&USRLEN) TYPE(*DEC) LEN(5 0)
DCL VAR(&AUTLEN) TYPE(*DEC) LEN(5 0)
DCL VAR(&IPLEN) TYPE(*DEC) LEN(5 0)
CHGVAR VAR(&APPID) VALUE(%BINARY(&APPIDIN))
CHGVAR VAR(&USRLEN) VALUE(%BINARY(&USRLENIN))
CHGVAR VAR(&AUTLEN) VALUE(%BINARY(&AUTLENIN))
CHGVAR VAR(&IPLEN) VALUE(%BINARY(&IPLENIN))
CHGVAR VAR(&RETCDOUT) VALUE('1')
IF COND(%SST(&USRIN 1 7) = 'FRANK36') +
THEN(CHGVAR VAR(&RETCDOUT) VALUE('0'))
RETURN
ENDPGM
=========================================
What I am missing or doing wrong?
Frank
--
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2025 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.