CPJNFinger v1.04 An MFC class
to encapsulate the "Finger" protocol (Obsolete)
Welcome to CPJNFinger, A very simple MFC class to encapsulate the Finger protocol.
Finger for those not familiar with all the internet protocols is the protocol used
to retrieve information about a systems users. The information returned is a simple
string and can be used for any purposes. For example the USGS (United States Geological
Survey) use Finger to allow up to date Earthquake data to be retrieved.
For detailed information about the Finger, you should read RFC 1288. You can
find numerous Web Servers which carry these documents by doing an internet search
for "RFC" and "1288".
The sample app provided with the code implements a very simple GUI Finger client,
a definite improvement over the console version provided by MS on NT.
Features
- Simple and clean C++ interface.
- The interface provided is synchronous which provides an easier programming
model than using asynchronous sockets.
- The code does not rely on the MFC socket classes. These classes have a number
of shortcomings, one of which causes problems when they are used in NT services.
- The code can be used in a console application without any problems (Again
this is not the case for the MFC socket classes).
- A configurable timeout for the connection can be set through the main class
method.
The enclosed zip file contains the CPJNFinger
source code and a simple GUI based Finger client based on it.
Copyright
- You are allowed to include the source code in any product (commercial, shareware,
freeware or otherwise) when your product is released in binary form.
- You are allowed to modify the source code in any way you want except you
cannot modify the copyright details at the top of each module.
- If you want to distribute source code with your application, then you are
only allowed to distribute versions released by the author. This is to maintain
a single distribution point for the source code.
Updates
8 February 2011
- Please note that this code is now considered obsolete as the vast majority
of sites on the internet no longer offer the service and I will not be updating
the code going forward.
V1.04 (28 December 2006)
- Updated the code to compile cleanly on VC 2005
- Code now uses newer C++ style casts instead of C style casts.
- Provided a GetLastError method which returns the last error which the code
encountered. This is required because due to C++ destructors, the value stored
in GetLastError can be destroyed in the CPJNFinger methods.
V1.03 (14 April 2006)
- Updated copyright details.
- Addition of a CPJNFINGER_EXT_CLASS macro which makes the class easier to
use in an extension DLL.
- Renamed the class to CPJNFinger.
- Module has been renamed to PJNFinger
- Now uses the author's CWSocket sockets wrapper class. This now allows the
code to support connecting via Socks4, Socks5 and HTTP proxies.
- Updated documentation to use the same style as my web site.
- Did a spell check of the documentation.
- Fixed a graceful disconnect problem in ReadResponse method.
- Fixed a issue in CPJNFinger::Finger when code is compiled with /Wp64
V1.02 (3 November 2003)
- Updated copyright messages
- Simplified the code in CPJNFinger::ReadResponse. Thanks to Clarke Brunt
for reporting this issue.
V1.01 (17 October 1999)
- The value returned from GetLastError is now preserved across calls to CPJNFingerSocket::Close.
V1.0 (11 October 1999)