× 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.



Tom Hightower said the following on 2/21/2005 11:16 AM:
rob@xxxxxxxxx said the following on 2/21/2005 7:59 AM:

Tom,

Two area's of concern. QIBM_QTMF_SVR_LOGON Will be where you set initial directory.
QIBM_QTMF_SERVER_REQ will be where you make sure that they do not go to another directory. Beware of a patch I need to make to my version, (as pointed out on this list). If you lock them down to a directory /ftp/customer123/upload/*, the hack would be /ftp/customer123/upload/../../customer456/upload
It was suggested that I actually do the CD and then just check the resultant directory against what directory was intended.


Rob Berendt


1- SRV_LOGON is the one that I seem to be having trouble with; I can't get it to plop the user into the specified directory. I must be processing the Application Specific DS incorrectly; check this link for more on that:

http://archive.midrange.com/midrange-l/200502/msg00914.html


2- SERVER_REQ: I've had it in place for a couple of years. In that program I process a db of "allowed commands" specific to each user, and it's worked well mainly because our FTP access has been very restrictive. But that approach won't work for "Tech Support", because that group needs to do whatever they want within the home directory, but only within that directory (or its subdirectories). I'll work on this little gem once I get the 'homedir' issue(s) resolved.


Tom


I _finally_ found my error. As I suspected, I was handling the Application Specific Information parameter incorrectly. I changed the declared length of the AppSpec parameter from '999' to '24' and it started working.


Here's my new *entry parameter list:

d AppId                          9B 0
d UserId                       999
d UserIdLen                      9B 0
d Authen                       999
d AuthenLen                      9B 0
d IpAddr                        15
d IpAddrLen                      9B 0
d RtnCode                        9B 0
d User                          10
d Password                      10
d CurrLib                       10
d homedir                      999
d homedirl                       9b 0
d AppSpec                       24
d AppSpecL                       9b 0


My AppSpecDS structure:

dAppSpecDS        ds                  inz
d asNameFmt                      9b 0
d asIntlWrkDir                   9b 0
d asIntlFileLst                  9b 0
d asCCSM                         9b 0
d asDCEO                         9b 0
d asDCC                          4b 0
d asDCS                          4b 0


For the "Tech Support" user, I populate my fields like so: /free homedir = '/home/tech/software'; homedirl = %len(%trim(homedir)); asNameFmt = 1; asIntlWrkDir = 1; AppSpec = AppSpecDS; RtnCode = 1; /end-free

Thanks to all for the help!

Tom


As an Amazon Associate we earn from qualifying purchases.

This thread ...

Replies:

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.