WX version 0.93: ---------------- These are programs to measure, predict and display information about `Internet weather,' meaning the quality of Internet data connections available between one local computer (the source host) and various user-selected remote computers (the target hosts, or `weather stations'). The connection quality is defined by (1) the fraction of test data packets lost enroute to the target host, and (2) the average round-trip travel time of these test data packets. See the enclosed basic explanation Web page `explain.html' for further details. COPYRIGHT: --------- This code is copyright (c) 2001 by Christopher J. Grayce. Permission to use, copy, modify, distribute and sell this software including C source code and header files for any purpose is hereby granted provided the above copyright notice and this permission notice appear in all copies of the software. THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND, EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. CONTENTS: -------- wx.pl : Perl script which measures the Internet weather and produces Web pages and image files that describe it. Intended to be executed regularly by a cron job. explain.html : Template for a user explanation of how the weather data is generated and what it means. wx_header.html : Template for a header to the main weather Web page. Modify to suit local requirements. crontab : Template for a crontab file to be submitted to cron, so that the weather HTML pages are updated automatically. C source for three programs: wx_poll : loads the names of `weather stations' from a text file, `pings' them all, and appends the results for each host to a `weather diary' data file. This program uses LinuxThreads, included in glibc 2. wx_chk : examines a `weather diary' data file, truncates it (if desired), and returns information about the latest entry. wx_graph : examines a `weather diary' data file and produces a PNG image file of various types of graph of the data therein, using the gd graphics library (see ). configure.pl : a Perl script that tries to configure a reasonable Makefile, wx_header, wx.pl and crontab from prototypes. INSTALLATION: ------------- Short version: tar -xzvf wx-0.93.tar.gz cd wx-0.93 su perl configure.pl make make install make cron Long version: (1) Compilation has only been tested under RedHat Linux 7.1. Clean results for any other system are a priori unlikely. (2) wx_graph requires the gd graphics library from Boutell, Inc., (see ) and the PNG library (see ), and the LinuxThreads library, which comes along with glibc 2. If these libraries are in unusual places you will need to edit Makefile directly. (3) Because it opens a raw socket, wx_poll must be SUID root. The first thing wx_poll does is open the sockets, and then set the effective UID of root to the real UID of the executing process. Hence output files are only created if the executing process has appropriate permissions, and are owned by the executing process. (4) To configure the build, you have two choices: (a) Type "perl configure.pl" and follow instructions. This will try to create a reasonable default Makefile, wx_header, wx.pl, and crontab. (b) Edit Makefile, wx_header, wx.pl, and crontab directly. (5) After configuring, type `make' to build the wx binaries, 'make install' to install the binaries and HTML files, and 'make cron' to submit the crontab. FEEDBACK: -------- Please send feedback to .