Version 5.6 Build 450.7
SPECIAL NOTES ABOUT THIS UPDATE:
- IMPORTANT: If you are upgrading from Wildcat! v5.4 or less, please read the change history in AUP v5.5.450.2. A few conversion steps much be performed before running this new update as outlined in the 450.2 Special Notes. The Wildcat! server will also inform you of this required conversion if it not done. - IMPORTANT: If you are upgrading from Wildcat! v5.5.450.2, please read the change history in AUP v5.6.450.3. In AUP 450.3, new optional internet security features (SSL and SASL) were added and WCCONFIG components related to Mail Operations was reorganized and consolidated under one section called "Mail Server."
- If you have the add-on product "Wildcat! List Server", it will automatically perform a conversion the first time you run the new wcListServeSetup.exe configuration utility.
- In this v5.6.450.7 update, we concentrated on many enhancments and and fixes, especially in regards to the Internet Email system. Much emphasis was placed on addressing SPAM mail with the enhancements to the Wildcat! SMTP SMTPFILTER wcBASIC hook system. The FTP server has many new extended support features. Many enhancements and new SDK/WCBASIC features were added. It is now possible for 3rd party developers to write remote WEB configuration features using wcBASIC.
Changes, Fixes, New Features and Enhancements by Wildcat! Component
WCSERVER (Wildcat! Server) - Minor change to UpdateFileRec() when renaming a file. If the record exist for renaming, the original file does not exist but the new file exist, then it will check for the old file before it internally renames the file. This helps the situation when a file is named externally and the sysop uses the File Manager to correct the record file name. With this change, the new file name was deleted.
- Enhanced the Configuration Login client session to check for WCX access by remote client IP address. This augments the new ability for wcBASIC WCX applications to perform configuration operations. See the new WCCONFIG | System Securities options.
- Added logic to address the intermittent Windows 2000 "RPC Error 1740" when wcserver is started. This may occur for some systems because there is an Windows 2000 installation problem causing duplicate NCALRPC end-points. The Wildcat! Server will now ignore the second NCALRPC thus allowing it to continue to start. However, please note that this is still considered a Windows 2000 installation issue that should be addressed. We don't know why this happens. It seems harmless but it does seem to be an Windows installation issue. WCSERVER will write a warning in WILDCAT.LOG if it finds duplicate end-points. If you find there are strange RPC related issues, you might want to check the log for this "duplicate RPC end-point" warning and address the installation issue until WCSERVER no longer issues the warning in the log.
WCCONFIG (Wildcat! Configuration) - WCMENU was cleaned up. Printing the menu tree was enhanced. - Fixed Bounce Mail option (was forcing true) - Added new SMTP Server options: [ ] Enable Receiver Bin Only set this TRUE if you intend to use the anti-spam SMTPFILTER wcBASIC hook system. If this option is set and no SMTPFILTERxxxxx.WCX application is available, the mail will be received but not processed. It will remain in the NEW directory off the your primary host spool directory. [ ] Retries include each MX attempt
Enable this option if you wish to include each MX mail server connection attempt as part of the total retries when sending mail. If this option is off, one attempt include all the MX records for a particular site domain. Enable this option if you wish to speed up the rejection/bouncing of mail.
- Added new System Security Options.
In WCCONFIG | System Securities, there are two new options: [ ] Allow WCX Configuration [ ] Check Client IP Network Access
Wildcat! now offers wcBASIC wcx applications the ability to perform wcCONFIG-like configuration/setup operations. This opens up the possibilities for new/future WEB-based Wildcat! Remote Configuration applications to be written. By default, WCX applications are not allowed to perform configuration operations. You must first enable the System Security option: [X] Allow WCX Configuration In addition, Wildcat! can check the IP of the client machine performing the remote configuration. If this option is checked, enter the IP of the client machine (i.e, the browser) in the Network Access table. This allows you to restrict the remote client machines allowed to perform remote WCX configuration operations.
WCSSLCONFIG (Wildcat! SSL Configuration) - Updated help for Verify Level. If you are using an InstantSSL certificate, you need to set the Verify Level to "FAIL IF NO PEER CERTIFICATE", and you need to make sure the file ssl\cacert\ca-bundle.txt is updated with the new Comodo Trusted Root Certificate. You can download the latest version from the following URL:
ftp://ftp.santronics.com/wildcat/ssl/cacert/ca-bundle.txt
Using your mouse, Right Click the URL and select "Save Target As" and save the file in your SSL\CACERT directory.
WCONLINE (Wildcat! Online Controller) - no changes WCWEB (Wildcat! WEB Server) - Fixed a memory handle leak - Fixed the WEB SSL option, "Required for all connections." Now it is possible to use the WEB server for SSL operations only. - In version 449.5, the web IMG counter (hits) logic was changed to allow automatically creation the counter file in your data folder. In previous version, the file had to exist first before the counter worked. Since the WEB allows URL access from remote sites, it was possible for a remote site to create unwanted counter files. In short, they were using YOUR machine as storage system. In this update, the WEB server reverted to the old logic to address this possible issue. If you want to use the <IMG src="counter?XXXX"> url to create a web hits counter on your web site, you must first create the DATA\XXXX.ctr file. It will not be automatically created. The HITS counter will show zero (0) if the file does not exist. - The WEB server questionnaire processor will now support the phone number validation check file, data\badphone.lst. If the phone number or mask is in this file, the user be redirected to the error file: InvalidPhone.htm. The default message is: Phone number is invalid or not permitted. Click the browser back button and try again. - Cleaned up the WEB server questionnaire processor when dealing with double entrys in the answer file. This might occur if a questionnaire expired or the original URL did not have &js=1. For example: /ques?ques2 Without the &js=1 parameter, the web server will generate a non-javascript questionnaire html form with a small javascript to redirect back to the same question. If the browser supports javascript, the form is regenerated with javascript form field validation logic. Under this situation, a double entry of the answer file occured. This is now fixed. WCBASIC - Fixed a compiler bug for an ASC conversion to a const integer. Example: Const xxxxx = asc("$") - Fixed a bug in the DATELIB.WCC library function DayOfWeekStr()showing wrong day of week string. Note: The GetDateOfWeek() returns an index of 1 to 7 where 1 corresponds to Sunday.
- Fixed a bug in the Questionnaire handler (QUES.WCC) where it was not updating user time remaining when a security was changed. - Main.wcc version display information was updated. - Exposed existing Wildcat! SDK function to wcBASIC Function WildcatLoggedIn(pUser as integer) as integer where pUser is NULL or the address of a TUser record Returns one of the following constants: clSessionNone if no user is logged in clSessionUser if user is logged in (returns pUser if not NULL) clSessionSystem if system client is logged in clSessionConfig if configuration client is logged in Example: if (WildcatLoggedIn(0) <> clSessionUser) then print "User not logged in" end end if - Added wcBASIC compiler defines: BUILD_450_7 WILDCAT_V56 example: #ifdef BUILD_450_7 if (WildcatLoggedIn(0) <> clSessionUser) then print "User not logged in" end end if #else if (user.info.id = 0) then print "User not logged in" end end if #endif - Added wcBASIC constant WC_VERSION returns the current version info, i.e., "v5.6.450.7" example: print "Running Wildcat ";WC_VERSION - New Configuration Library. wcBASIC now offers support for using the configuration SDK, wcsmw.dll and wcsgate.dll, functions. New headers are provided, wcsmw.wch wctypemw.wch, wcsgate.wch wcgtype.wch. The best way to use the configuration library is by using the new contextlib.wch library header which offers a way to prepare a configuration context session in standalone applications and via the web. WCFTP (Wildcat! FTP Server) - By default, the Wildcat! FTP Server will only accept a minimum Non-Passive data port of 1024 per the RFC 2277 FTP security guidelines. This will prevent "proxy FTP Bounce Attacks" where a malicious ftp client attempts to penetrate your local machine via the FTP server PORT command which tells the FTP server which port to use to transfer data. You do not need to do anything to secure this hole with this new version. However, you now have registry control over the minimum and maximum port values for both PASSIVE and NON-PASSIVE mode: HKEY_LOCAL_MACHINE/Software/SSI/Wildcat/wcFTP (if you don't have a wcFTP key, create one) Non-passive or PORT command: DWORD: NonPassiveMinDataPort (default is 1024) DWORD: NonPassiveMaxDataPort (default is 65355)
Passive or PASV command: DWORD: PassiveMinDataPort (default is 1024) DWORD: PassiveMaxDataPort (default is 65355) NOTE: VERY IMPORTANT! If you use these registry DWORD values, make sure you define them as DECIMAL values, not as HEXDECIMAL. ALSO, in general you do not need to define Passive port values since the server will control the port values. The main point of this new security feature is to control the FTP client's ability to use a non-passive PORT command to tell the server which PORT to use to open a connection to something other than a FTP data transfer request.
- Enhanced FTP wildcard search specification to better support the '?' character in search specification. - Fixed an explicit SSL connection problem with FTP client WS_FTP. - Fixed a state machine problem with the DATA port. This showed up when using extended QUOTE commands. It was not a problem for standard FTP client operations. - Added a FTPLOGON.WCX hook for FTP login operations. Now it is possible to perform customize user operations when a user logs in. The most obvious feature is to switch to a particular user directory, another could be to send a message to the sysop when the user logs in. - Added support for extended FTP commands, MLST and MLSD. Supportive FTP client required. The MLSx commands show extended information about the file. MLST will show infomation for one file MLSD will list the directory extended information. - Added support for MSDOS or UNIX style directory displays. The default style is unix which is the standard among FTP servers. The key difference is the MSDOS format offers a complete DATE/TIME format for the file. With the unix style, depending on the FTP server, the time of the file could be the YEAR or TIME depending on the age of the file. - Added support for "Unix-style 6 month range" for date/time display of directory listings of files. - Added support checking the data\badfiles.lst list file for uploads. If the file name or mask is found in the badfiles.lst file, the upload is not permitted with a 550 response code. Example: ftp> put command.com 550 Specific file name not permitted. WCSMTP (Wildcat! SMTP Server) - Added Enable Receiver Bin ON/OFF log entry in wcSMTP. - Now supports the Return-Path: header line for better identication of bounce addresses. This fixes a bounce mail problem where under special conditions, an extra unnecessary messages can be created. - Added some enhancements for SMTPFILTER.WCC operations to better support 3rd party ANTI-SPAM applications using the SMTPFILTER technology in Wildcat!. See SMTPFILTER.WCC
- Fixed EHLO/HELO command for non-extended SMTP servers when the option [X] Enable SSL Outbound SMTP is enabled. If the server did not support the EHLO command, wcSMTP was not trying the HELO command. You could just turn off the option, but this update fixes the problem. wcSMTP will try HELO if EHLO fails at the remote server. - The registry option EnableReceiverBin was required to enabled the SMTPFILTER.WCX operation. This option will be now be available as a Check Box in the WCCONFIG | MAIL SERVER | SMTP SERVER setup as: [X] Enable Receiver Bin (for SMTPFILTER operations) Note: If you had this registry option enabled, you need to now set it in WCCONFIG to enable the smtp filter system. - SMTPFILTER.WCC Enhancements: WcSMTP will now look for the wcx SmtpFilterHookLoader.wcx before looking for SmtpFilter.wcx. The purpose to is support a multi-hook layer system. If you are currently using SFHOOK.ZIP and you renamed SmtpFilterHookLoader.wcx to SMTPFILTER.WCX, you should rename it back or delete it and unzip the original smtpfilterhookloader.wcx from SFHOOK.ZIP The SmtpFilterHookLoader.wcx program is designed to run each program listed in the data\smtpfilter-hooklist.txt file one at a time. - Standard TSL AUTH (sasllogin.dll) is now automatically installed for smtp AUTH operations. This reduces the need to unzip this file from wcsasl.zip. - New Auto-Forwarding Feature:
This is not new, but it was never documented. For local mail delivery, (your local users), wcSMTP will look for an extended user profile field called "SmtpForward" containing the forwarding address for a particular user. The easiest way to add an extended user profile field is with the wcReport utility: 1) Start Wcreport and go to the Setup Options page. 2) Add SMTPFORWARD to one of the empty User Defined Fields.
Now all user accounts will have this extra field as part of their record. Simply put the forwarding address in this field for the particular user. - Fixed the "Use SSL for Outgoing mail" option. It was not working. Now it is. WCPOP3 (Wildcat! POP3 Server) - New registry option to add the Received: when the user picks up his mail. This use to be TRUE by default. However, some mail clients do not sort multiple received mail well with this option. HKLM\Software\SSI\Wildcat\wcPOP3 DWORD: EnableReceivedLine VALUE: 1 or 0 WCMAIL (Wildcat! Mail Gateway) - Fixed the reloading of cached information when a restart signal is sent to wcMAIL. - Now supports Return-Path: header line for bounce messages.
WCLISTSERVER (Wildcat! List Server) - no changes
WCNNTPSERVER (Wildcat! NNTP News Server) - Changed "Authentication Required" response code from 502 to 480. This will have no effect on news readers. However, 480 is the proper response to used when authentication is required.
WCREPORT (Wildcat! Reports) - Fixed the automated script command line mode where an extra "Cancel Update?" window prompt was displayed.