Sdr changes log
3.0 K.Hasler/E.Whelan 22 Aug 2000
- new 'application' media type for session directories
- fixed byte ordering of headers on intel machines
- fixed IP6 address allocation for unix IP6 stacks
- Authentication and encryption code fixed to allow for extra space
for IPv6 addresses
- Added IPv6 flags to configure scripts "--enable-ipv6"
3.0 K.Hasler 6 Dec 1999
- changed use of option get to use the resource procs in generic.tcl
- store_address now returns if it already has the address.
3.0 C.Perkins 16 Nov 1999
- Remove TTL scoping option
2.9 K.Hasler 26 Oct 1999
- created a directory type for the directory icon, so that the directory icon
is displayed for directory sessions in the main SDR window.
- Fix reshow_sessions to delete sessbox when they exist - fixes problem when
using the Apply button from the preferences window.
2.9 E.Whelan 25 Oct 1999
- fixed window problems caused by adding directories - fixes problems
with passphrase window.
- eg geometry option and key passphrase window at startup
- FAQ has also been updated
- Fixed problem which quit from SDR when closed directory windows
2.8 K.Hasler 9 Sep 1999
- fixdaysinmonth proc fixes daysinmonth variable for leap years. Used
when creating a new session and in calendar.
- Fix convert_vars to recognise other variable separators (ie not just /).
- Fixed set_fmt_menu in create_proc_menu which had attributes in wrong order.
- Directory SDP Patches from: http://www.live.com/sdrpatch.html
2.7e K.Hasler 15 July 1999
- enabled pgp
2.7 K.Hasler 15 July 1999
- Removed calls to splat_tcl_characters, since we're not eval'ing the
parameters anymore.
- Fixed sip code, so we don't eval the packet buffer.
- Fixed run_program to work on Windows
- Removed eval $rule in plugins and replaced with convert_vars in
sd_listen (called from run_program).
2.6.3 K.Hasler 25 June 1999
- removed []$ characters in sip_recv_udp and recv_packets
2.6.2 K.Hasler 22 June 1999
- enlarged some fonts on windows
- fixed security bug - removed []$ characters before parsing sip
packet.
2.6.2 E.Whelan 21 June 1999
- Added pgpdisable and x509disable variables so can build sdr so it
disables all PGP and X509 code for a stable release and can enable
the code for an experimental release
2.6.2 C.Perkins 1999
- Remove qfDES code. We now link with the UCL common multimedia library
instead, which had a debugged version of this. You MUST have the package
"common" from our CVS server (or from our web-site) to build sdr now.
- Add Visual C++ 6.0 project files to allow easy compilation on windows.
- Rename plugins to remove the "*" so that CVS can work with them on
windows.
- Strip trailing CR from domain name on Solaris when reading from
/etc/resolv.conf; this solves the "can't advertise session" problem.
- Revert the rat plugin to that from sdr-2.4a7, which is suitable for
rat-3.0.x. We'll distribute later plugins with rat separately, since
trying to merge them into sdr will only cause confusion for users of
the old rat, who can't access any of the new features the plugin
provides.
2.6.1 K.Hasler@cs.ucl.ac.uk 30 Mar 1999
- solaris/irix/windows release
- fenner@research.att.com
- Tightened up SDP parser to catch more errors
- Handle compressed SAP, either compressed via gzip (as the SAP spec says)
or via zlib (as Real G2 does). This should be clarified in the SAP spec,
as should the combination of compression and authentication. To handle
compressed SAP, you need zlib (http://www.cdrom.com/pub/infozip/zlib/),
-DHAVE_ZLIB in CFLAGS, and -lz in LIBS. See freebsd/Makefile.freebsd
(since FreeBSD ships with zlib).
2.6.0 E.Whelan@cs.ucl.ac.uk 25 Feb 1999
- added test on PGPSTATE environment variable. To use PGP you must set
PGPSTATE = 1
2.6.0 E.Whelan@cs.ucl.ac.uk 22 Jan 1999
- changed a lot of the PGP authentication, PGP encryption and
DES ecryption code
- the X.509 code hasn't been looked at yet and the option of
using it has been temporarily disabled
2.5.9
-
2.5.8 Released 9 October 1998
- Unix version now uses Tcl/Tk from our CVS. This is Tcl/Tk 8.0.3 modified
to remove all the path searching and include the initialisation files in
the binary. Should solve the numerous problems with Tcl which people have
reported (it works for rat and nte, why not sdr too?)
- Fix font sizes in the calendar (was hardcoded pixel sizes, now measures
the font to get the correct value).
- Assorted fixes to authentication code
- Many many changes to remove space leaks and memory corruption problems,
- Add workaround for Irix bug where timezone sometimes contains an
unmatched quote.
- Fix SIP From URL in ACK and BYE requests.
2.5.7 Released 24 September 1998
- Fix compilation on FreeBSD
- Fix session creation in cases where you have a plugin but no tools for
the media
- Remove T/TCP code from sip_common.c (patch from Bill Fenner)
2.5.6 Released 18 September 1998
- Many bug fixes...
- Fixes for Irix 6.3 from Michael Kaschel (M.Kaschel@sf.hs-wismar.de)
- Rewrite of the new session UI (wizard style interface)
- Change order of scope zone initialisation
2.5a5 E.Whelan@cs.ucl.ac.uk 5th August 1998
- changed version number to 2.5a5 in preparation for the release
2.5a4 G.MontasserKohsari@cs.ucl.ac.uk 31st July 1998
- added lots of changes to implement PGP and X.509 authentication
and encryption
2.5a4 E.Whelan@cs.ucl.ac.uk 29th July 1998
- added code so that the media tools can be started encrypted
2.5a4 E.Whelan@cs.ucl.ac.uk
- modified so that a privacy header is used in the case of symmetric
encryption.
- increased version number as old version with no header will not
interoperate.
2.5a3 mjh@isi.edu, 1998/04/21
Fixed SIP bug when inviting to public sessions
Fixed SIP URL syntax
Increased version number as SIP will no longer interoperate with 2.5a2
2.5a2 c.perkins@cs.ucl.ac.uk
mjh, 26th Mar 98
- fix address book
- fix SIP code so that when a SIP announcement arrives followed by a
SAP announcement for the same session, the right thing happens.
- replace sd_addr with sap_addr and sd_port with sap_port to make it
more obvious what these variables do.
2.5a1 c.perkins@cs.ucl.ac.uk
- Fix SIP for encrypting sdr
2.5a0
- Rename 'nt' to 'nte'
2.4a8 E.Whelan 4th Feb 98
- changed code to remove the symmetric encryption keyid
2.4a8 mjh 28th Jan 98
- changed address field in announcements to be FQDN as per new SDP spec.
- added lots of code to try hard to get the FQDN, even when the machine is
not well configured.
- fixed longstanding bug where email and phone fields are switched in
announcements.
2.4a8 January 98 E. Whelan
- Added lots of code for symmetric encryption of the announcements
fenner 20th Jan 98
- I had previously sent you some code to handle duration > interval,
e.g. "active every week for 2 weeks". I noticed today a session that
was "active every 2 days for 2 days", which could use the same fix.
2.4a7 mjh
- fixed calendar bug that caused daily times to be not shown for sessions
during November and December. Also fixed year 2000 bug in calendar code.
2.4a6 mhandley
many changes to start to bring sdr SIP implementation in line with the
soon-to-be-releases spec.
- fenner@parc.xerox.com:
- minor bug fixes
- fixed problem with multiple repeats only showing the first
- some restructuring to clean up record_session
- user hook added for adding debug code or user extensions via sdr.tcl.
2.4a5 mhandley
- new highlighting of sessions caused errors when the session timed
out with the session disply window visible. Now fixed.
2.4a4 mhandley 9 May 1997
- fixed plugin parser so new plugins for an existing tool properly override
old ones.
- disabled middle button paste in sdr main window.
- added scrollbar to tool preferences.
- added bindings to main window icons so they behave the same as the text
2.4a3 mhandley 8 May 1997
- added code to handle SIP redirects from a sip_server
- bug in handling sip failure responses fixed.
- minor structuring to permit some common code between a sip_server and sdr.
- added code so sdr can register its user with a sip_server on startup
using HTTP POST (Content-type: application/x-sip-loc). This will allow
a simple dynamic directory to be maintained, perferably one instance
per site, but other arrangements are also possible.
- first pass at sip_server.
- fixed some minor bugs in the keyboard-beep code that is used when
sdr is being called.
- added a "While you were out" window that lists calls that were unanswered.
- added check on SAP version number so sdr rejects announcements with version
greater than 1 in preparation for potential SAP changes.
- added code to trim URL strings if the won't fit in the status line of the
web browser when you put the pointer over the a hot string instead of
letting tk resize the browser to fit the string.
- added a filter so you can hide Test sessions in the main sdr window.
- re-wrote the main session listing code to use a Tk text widget
rather than a listbox to allow colours, multiple fonts and images in
the listing.
- Added code to display the session type as an icon in the session listing
and to disable this from the preferences if desired.
- Added code to display future sessions as greyed out in the session listing.
- Added code that allows the sessions to be sorted primarily on
session type, or alphabetically depending on user preference.
- Added code to session startup to prevent sdr needing to query the
user whether to use an old rule for a tool or a new plugin that
overrides the old rule.
2.4a2 mhandley 29 Apr 1997
- fixed bugs in SIP code that meant a lost response to a call wasn't
resent properly.
- fixed bug that meant quiting after initiating a SIP session caused an
error when saving the cache.
2.4a1 mhandley 28 Apr 1997
- added code to allow a SIP alias to be used in addition to the username.
fenner@parc.xerox.com 28 Apr 1997
- string compares replace "!=" in new.tcl to avoid problems with numeric
ad ids.
- lappend used in place of simple string concatenation in sdr.tcl to
avoid problems with tcl getting confused with "{" in a string.
- make the calendar keep track of ending year; I saw a session which
ended in 366 days (or something) so the end time on the 2nd day was
displayed incorrectly.
- Keep a 20-page memory cache of web pages
- Add "reload" which ignores memory cache and causes proxy cache to reload too
- Use resources for font names instead of hardcoded values
- Size the window with "prefont" so it's the right width. Unfortunately
this sometimes makes stuff that's supposed to be normal in the prefont.
- Make multiple forms on the same page work by making the widget path
depend on the form number
- Use T/TCP if available for web requests
- Extend knowledge of Solaris bugs in www_fns.c
- Handle reload requests
2.4a0 mhandley 28 Apr 1997
- added a simple address book for SIP calls. Functionality will be
expanded in due course.
- re-wrote SIP code to use SIP v2.0 rather than the old SIP v1.0:
current status:
only UDP implemented
doesn't handle redirection
doesn't handle negotiation
absolutely minimal functionality to be able to make and receive calls
- fixed longstanding bug where saving preferences could fail if ~/.sdr
didn't exist.
2.3a3 mhandley
- complete re-write of session listing display code to make it much
more generic and (hopefully) more robust.
- bug fixed where encryption key variable wasn't being initialised,
so it was possible for sdr to put sessions in the private window
when they should have been public. (thanks to Bill Fenner)
- modifications so that sdr accepts SAP announcements with CRLF
separating lines rather than just LF. Note LF is the standard, CRLF
is acceptable but not advised.
2.3a2 mhandley
- changes made so encryption is removable for export from US.
- memory leak in send_advert fixed (thanks to Bill Fenner).
- fixes added to sd_listen.c to prevent possible core dumps when a
session is received with missing compulsory fields.
2.3a0 8 Oct 1996 mhandley
- encryption added:
new cache directory added
new SAP packet format adopted
new UI code to separate encrypted and plain text sessions
new preferences to specify encryption groups
new code to store encryption group keys and other config data
QFDES code from Saleem Bhatti et al included
many other small changes related to encryption
- bugs in calendar fixed
repeat sessions that repeat more than 3 months were treated incorrectly
- new session interface
can no long create sessions that repeat for time x every y seconds
where x > y/2.
- more label changes as a result of study by Louise Clark.
"Detailed Time" button is no more - details are shown by default.
- sdr now does also attempt to read plugins from /usr/local/etc/sdr/plugins
and a startup file from /usr/local/etc/sdr/sdr.tcl, in addition to
those in ~/.sdr (or ~/sdr on Windows)
2.2a23 25 Sept 1996
- bug in the order of initialisation of Xresources was causing plugins
to be read from the wrong place.
- Two-way call disabled in Quick Call window pending being fixed properly.
2.2a22 9 Sept 96
- dumb state initialisation bug that carried email/phone state forward
from one session to the next fixed.
- extra bindings added to work around tk bug in listbox scrolling in the
sdr main window (was possible to scroll sideways even though there was a
binding to forbid it).
- many label changed as a result of a usage study by Louise Clark, and
extra help labels added to preferences and calendar for beginners.
- string comparisons replace "normal" comparisons in reshow_sessions
to avoid unwanted type conversions which were causing very occasional
errors.
2.2a21 13 August 1996
- code added to store the PID of media tools and to produce a warning
(on UNIX only) if the address or port is changed in a session where
we already have media tools running.
This will not work (but should fail silent) on systems other than
SunOS and Linux which have a BSD "ps" as it will default to doing "ps
-p <id>" unless someone adds them to the relevant switch statement in
media_changed_warning in sdr.tcl
- editing bug fixed: sdr is now smarter about when it really needs to
reallocate multicast addresses when you switch between TTL scope and
Admin scope in the technical interface.
- deleted session popups are now (again) removed when you hit delete.
2.2a20 12 August 1996 mhandley@cs.ucl.ac.uk, fenner@parc.xerox.com,
brezak@apollo.hp.com
- admin scope editing bug on the "normal" interface fixed - default
local scope was incorrectly getting asserted. bug reported by
George Michaelson.
- admin scope scope bug fixed - command bindings were slightly incorrect
due to previously missed tk3.6/tk4 inconsistency, but had til now been
masked by another bug.
- code added to see if we really need to re-allocate addresses when the admin
scope is changed so that pseudo-scopes like site,region,world don't need
to change addresses when we change between them, but really admin scopes
do.
- minor patches to build sdr on NT 4.0b2
- repeat time handling was botched by changing starttime if it was
earlier than today, repeat times were then calculated from right now
as opposed to the original start. Although I can't explain why, this
caused sessions with repeats to show up on every single day of the
calendar.
- if a session had multiple repeats in the same day, the second line
would not highlight or bring up the session window
- if a session had multiple repeats in the same day, there would be
empty space at the bottom of the calendar detail box.
- the list of bookings would not be sorted by name because it got
sorted by aid. removal of the sort by aid allowed it to fall back
to the naturally sorted order of $fullix().
2.2a19 4 August 1996 mhandley@cs.ucl.ac.uk
- Old bug in determining when to allocate new addresses/ports and when
not to because we're editing an exising session fixed yet again.
2.2a18 1 August 1996 mhandley@cs.ucl.ac.uk
- calendar TCL bug fixed - thought I got all these last year, but no...
2.2a17 30 July 96 mhandley@cs.ucl.ac.uk
- plugin mechanism extended to provide prototype support for
audio redundancy and for dynamic payload types.
2.2a16 3 July 96 mhandley@cs.ucl.ac.uk
- Plugin mechanism extended to allow attributes to be specified to be
set by default for particular formats.
- Vat plugin modified to set ptime:40 attribute by default when session
is announced.
- Code to work around pre-tk4.1 text widget line wrap bug removed from
session creation interface (was causing session editing problems).
- Improved the SDP repeat time code:
- improved (but still incomplete) offset handling
- added parser for unit specification characters "d","h","m" and "s".
- Change args to ui_init to cope with changed behaviour of Tk_ParseArgv
which now re-writes the argument list.
- SIP session creation fixed to remove spurious "0" attribute.
- Broken SIP receive code fixed - incorrect parameters were given to bind
when CANT_MCAST_BIND was ommitted.
- Cancel button added to "Start Tool" popup.
- Calendar arrows were incorrect with multiple repeats per day and the
last of them terminating on the next day.
- Modified cache entries to store whether or not an annoucement is
trusted so that spoof announcements claiming you were the originator
don't get re-announced but do get displayed (previous fix just
ignored them).
9 July 96 batie@aahz.jf.intel.com
- added extra checks to exit cleanly if we can't find our own hostname
or address.
9 July 96 van@ee.lbl.gov
- In the process of converting sdr from using the xrand48 routines to
'random()', I introduced a serious bug in the announcement logic. The
symptom is that the first two announcements are made then no more.
The reason is that drand48 returns a double on [0..1) and random
returns a u_int on [0..2^32) so the first randomized interval in
timed_send_advert is huge.
- I noticed that if someone sends an announcement claiming you are the
originator then you quit & restart sdr, you will obligingly originate
the announcement. I changed the receive packet handler so that it
ignores announcements from someone else if we are the original source.
- I also added a 'sdr_delete_session_hook' to sdr.tcl (analogous to
sdr_new_session_hook) so I could make a ~/.sdr/sdr.tcl to log when
sessions are created & deleted (seems like an easier way to debug than
the commented out 'puts' lines in the original).
2.2a15 3 July 96 fenner@parc.xerox.com
- Make a sip error message not look weird by not mixing printf() and
perror() (just change it to fprintf(stderr,)
- Make announce_error() call tkerror with only one argument and
print the actual error to stderr instead of the return from tkerror,
and also use strncpy to not overrun statically sized buffer
- Make sdr automatically move ~/.sdr.tcl and ~/.sdr_prefs to their new
locations, and announce that it has done so
- Get rid of an unneeded catch in sdr.tcl
- Clicking on new media would not assign them port numbers, and
switching back and forth between TTL and Admin scoping would produce
... strange results (the first time you clicked back on Admin scope,
you would still get ttl scoped addresses)
- I also made generate_address default to 224.2.128.0/17 instead of
224.2.0.0/16, so that the "admin scoped ttl" and the raw TTL addresses
agreed.
2.2a14 2 July 96 fenner@parc.xerox.com
- Radically updated the web stuff to fix its history mechanism; Now
there's one entry point to display the current point in history,
and another entry point to add a new page to the history and make it
current and call the other routine, so that you can't display a page
that you don't have history for.
- Modified sd_listen.c to copy stuff into heardfrom and origsrc no
matter what.
- Most of the other changes have to do with the new style of keeping
the fullindex sorted.
2.2a13 5,15 June 96 mhandley
- Fixed bug in 2.2a11 preference applying after a new session arrives
when the preferences window is up.
- Session-type attribute and user interface code added along with icon
to display session type in popup window.
- Makefile and ui_init.c changed to allow separate compilation of tcl
files for ease of development (reversing one of Van's changes).
- General session attribute handing code added.
- Intenal attribute list format changed to be newline separated to cope
with spaces in SDP attributes.
- "tool" session attribute added to session announcements to aid debugging
when other session directory tools become more common.
2.2a12 11 Jun 96 van@ee.lbl.gov
- Several ifdef's & changes to support building under Win95/WinNT.
The Windows implementation is complete & fully functional except:
- sip support is disabled
- the conference bus is disabled (it would be a nop under windows
anyway)
- Moved all config files into ~/.sdr (~/sdr under Windows) directory.
Name of this directory can now be set with Sdr.sdrHome X resource.
Changed filenames are:
~/.sdr_prefs -> ~/.sdr/prefs
~/.sdr.tcl -> ~/.sdr/sdr.tcl
~/.sdr.<lang> -> ~/.sdr/<lang>
- under windows, use the right button (which tk calls `button 3') for
the 'immediate start' funtion since there is no button 2.
- replaced rand48 calls with random calls, using the random.c from
the vic/vat distribution. This is faster, more portable & more
random than rand48.
- converted to release version tcl7.5/tk4.1. Set up makefiles to
generate lib.tcl from installed tcl/tk library files rather than
using handbuilt lib.tcl that might be from incompatible tcl version.
- since winsock i/o works via callbacks rather than 'select', replaced
calls to Tcl_CreateFileHandler() with calls to linksocket() (in new
module iohander.c). linksocket will take care of getting the winsock
callbacks under win95/nt & will call Tcl_CreateFileHandler under unix.
- since you can get socket callbacks at any time (e.g., while other
tcl code is being executed), most Tcl_Eval() calls needed to be
Tcl_GlobalEval() calls to make sure they executed in the correct
context.
- since winsock callbacks can arrive as soon as the handler is declared,
need to create enough of the GUI to deal with callbacks *before*
linking sockets otherwise we'll randomly crash during startup.
- tried to use new tcl7.5 clock facilities rather than localtime/strftime
since the latter may not work on all systems that run tcl/tk
(e.g., the Mac). Changed C routine gettime to tcl routines gettime
and gettimenow. Changed '%e' in time format with %d since Microsoft
(and Posix) don't support %e.
- got rid of 'please wait' popups when running under Windows (popup
windows are *way* to expensive to use under Win95).
- changed the www receive code to use recv() rather than fdopen on
the socket fd. sockets aren't files under windows so this won't
work and, anyway, recv is simpler and faster.
- the directory traversal code used for cache loading was very unix
specific. replaced it with a tcl procedure that uses tcl file
globbing to get cache file names then calls a new C routing
load_cache_entry() to validate & load one cache file.
- replace bcopy/bzero calls with memcpy/memset calls since former isn't
portable to windows or most posix systems.
- added error announcement dialog box with optional traceback to the
startup processing (otherwise you can't tell what went wrong under
windows).
- made the internal help file generation use the same tcl2c scheme
as the internal tcl file generation (since any compiler that can't
handle one can't handle the other, e.g., Microsoft's VC4.x).
- made the output-characters-instead-of-strings mode of tcl2c be a -c
flag rather than a compile time option.
- tried to simplify the makefiles by using suffix rules for the html
to c & tcl to c conversions and by using VPATH to locate the files.
(this required a bit of renaming to rationalize the html vs. ehtml
names and file vs. array tcl names.)
- Bug fixes:
- rearranged several error msg printers that did "fprintf" followed
by 'perror' (the fprintf will wipe out errno).
- got rid of some debugging 'puts' statements in start_media_tool.
- fixed a few of the many gcc -Wall errors (ones that looked like
they'd cause problems under windows or other architectures).
- replace a very creative way of trying to turn a string into an
ip address with a more mundane version that works.
- rearranged the socket/bind/connect/setsockopt calls to follow the
one and only sequence that windows will accept.
- ran all the tcl code through tclCheck & tcl_cruncher to check
brace, paren, quote, etc., matching. This found a few errors
that would have bitten someone under the right circumstances.
(doing this required nuking some commented out, obsolete or debug
code that fooled the checker).
- fixed bug in tcl2c when CANDOBIGSTRINGS isn't defined -- wasn't
adding null byte string terminator.
- got rid of pointless bind to 0.0 in www recv code (it does nothing
and microsoft gives an error when you do it).
- made quit button do a 'write_cache' since doing it only when main
window is destroyed can cause cache to not get written out.
2.2a11 31 May 96 fenner@parc.xerox.com
- Change iconbutton to raise the button before invoking command like the
normal tk button, so that if you click on "more info" and then dismiss
the window you don't get an error when the web page finishes
loading.
- Delete the B2-Motion event to prevent accidental scrolling of the session
windows.
- Attempt (it doesn't work for unknown reason) to bind j and k to scrolling
up and down in the session windows like in sd.
- Make the session redisplay sort case-insensitive
- Attempt to add popups for more buttons in the "new" interface
(but the popups need to learn about iconbuttons)
- Make web status "Parsing" while parsing the page, and "Finished" only
after done parsing
- Make "Invalid Content Type" message reflect the actual content type
instead of the data of the last header that was parsed
- Implement "#xxx" anchors (use catch instead of foreach?)
- Indent <dd> and center <center> (sometimes)
- Partially implement <META HTTP-EQUIV> for "poor man's redirect"
- Parse </br> as <br> since Netscape allows it
- Allow comments with <!--stuff , the old code required a space
- Add "parsestr" function to parse out KEY=value or KEY="va l u e" pairs
- Impement full RFC1866 list of character elements, including nnn;
- Implement non-blocking connect for webto, keyed on #define NBCONNECT
so it can be conditionalized per platform
- Use ~/.RTPdefaults if it exists to guess name and email
- Fix bug in tech_new's decision about configuring name and email
- Fix "Illegal Scope Value, Scope value must be between 0 and 255" error
if you don't click on any scope-related buttons and just create a session.
- New preferences scheme. Each panel of the preferences menu
has its own function, named "pref_XXX", which takes several
possible arguments:
copyin copy from sdr's variables to prefs(XXX_variable)
copyout copy from prefs(XXX_variable) to sdr's variables
defaults set the prefs(XXX_variable) to default values
create window width height
create the user interface using window as your
top level & make sure your widget matches the
width and height
save file output tcl commands to file to set the sdr
variables to their current values, e.g.
puts $file [list set webproxy $webproxy]
One thing to potentially add is "verify", e.g. make sure all values
are within their allowed range (like no empty phone numbers allowed)
- Added listening to the sd address, conditionalized on
LISTEN_FOR_SD
- Fix typo; the ttl for the admin scope "site" is actually 15.
- Set ldata($aid,medianum) to 0 for sessions with no media.
This was previously done in another section of the function
but needs to be done in all cases.
- Add sdr_new_session_hook, which gets called whenever a new session
is heard. It may be in the wrong place.
- Fix confusion about exiting; if the ~/.sdr directory didn't exist then
the cache directory wouldn't get created so the cache wouldn't get written.
- Fix UI weirdness in preferred session selection. Two things:
- The two listboxes could potentially scroll independently of each other.
- Clicking on an entry near the bottom of the list can shorten the list,
causing the listbox to scroll. Fixed by adding the new value before
deleting the old one.
- Change \r\n to \n only, and then change \r to \n to attempt to handle
HTTP servers that return \r-seperated lines. Also fixes the \r's
at the end of <PRE> lines.
- Made anchors use "catch" instead of "foreach" to move to the mark
- Media setup bug in quick-call fixed.
2.2a10 16 May 96 mhandley
Problem with backgrounded sdr writing startup messages fixed.
Session display windows now disappear when the session times out.
Xresources now work again (haven't been since the port to Tk4.0)
pcm2/dvi2 now the default packetisation if a ptime attr is not
specified (suggested by Van Jacobson)
Bug preventing setting of midnight start times fixed.
Bug preventing sdr starting sessions with several streams of the
same media fixed.
Experimental code added to allow sdr to continue running after logout
and X display destruction ("-s" flag" specifies this)
2.2a9 9-12 May 96 mhandley
Preferences user interface completely re-written to reduce
complexity and number of windows required.
Mechanism to specify preferered tools for each format added.
UI Bug in specifying prefered sessions fixed.
Can now copy from session information window into X cut buffer
for phone numbers, addresses, etc.
Cache files now get written on logout (failed X connection) as
well as on hitting "quit" or announcing new sessions.
A first attempt at sorting out keyboard (Tab) traversal of
the user interface (as in Motif Compliance!)
WWW browser patches from Bill Fenner:
- The "display url" code tended to make the status "Finished"
when it shouldn't be, so I started using a global variable to
hold the status.
- Parse and use "<BASE HREF=>" elements; our proxy server depends
on this (e.g. if you ask our proxy server for
ftp://ftp.parc.xerox.com/pub/net-research it puts in
<BASE HREF="ftp://ftp.parc.xerox.com/pub/net-research/"> instead
of sending a redirect.
2.2a8 8 May 96 mhandley
command line option "-d1" added to aid debugging of announcement
problems.
initialisation bug with ttl scoped sessions when new admin scope
zones were defined is now fixed.
initialisation bug in setting ttl for admin scoped sessions fixed.
scrollbar now works again when specifying visible sessions in prefs.
2.2a7 4-6 May 96 mhandley
Some parser checks that were missing added.
- should prevent crashes with broken MCM sd announcements.
Calendar interface redesigned to use pop-up fewer windows.
Calendar now handles repeat times properly.
Incoming invitations now force the popup of the invitation window
on window managers like twm which nornally delay window placement.
Minor changes to prevent sdr exiting in certain error conditions.
long phone numbers bug fixed.
2.2a6 27 Apr 96 mhandley
TkPlatformInit redefined to fix tk4.1b3 stupidity trying to
explicitly load $TK_LIBRARY/tk.tcl
2.2a5 15-26 Apr 96 mhandley
Basic SIP implementation added.
allows users to invite other users to join advertised sessons
Tcl SDP parsers added for SIP messages.
Sensible error message now produced when DISPLAY is incorrect.
better support for monochrome displays added
plugin parser made more robust to odd spaces
new session window made shorter and fatter
moved cache files from .sdr dir to .sdr/cache dir.
youremail variable added to plugin mechanism
bug in plugin attr parser fixed (was preventing wb session launch)
check added so sdr ignores announcements with later versions than 0
repeat times now displayed properly in session display window
window placement code improved - windows should get moved less
added code to parse mailto URLs (but not to handle them yet)
bug displaying sessions with no media fixed.
bugs in recording startup fixed by Bill Fenner
2.2a4 15 Apr 96 mhandley
macro/value pairs added to plugin mechanism
vat protocol id's added back to vat startup script
TCL bug in SunOS4 startup config worked around
2.2a3 15 Apr 96 mhandley
stupid bugs in a2 fixed
2.2a2 12-13 Apr 96 mhandley
plugin attributes now finished
first pass at built-in "plugin" config files
plugin help pages completed
many little changes to WWW browser to improve appearance of help pages
moved all platforms to tk4.1/tcl7.5
some low-priority status messages now appear on sdr main
window rather than annoying little popups.
2.2a1 9-10 Apr 96 mhandley
times with leading zeros bug fixed.
really fixed(!): double clicking in main window produced a tcl error
unknown media types now handled gracefully.
bugs introduced with spec changes fixed.
startup code for tools moved to separate modules and
re-written to use plug-in config files to make configuration
much more flexible and simpler.
.sdr.tcl no longer used to configure session startup
plugins used to configure menus when creating and editing sessions
plugins used for fmt/proto name mapping in session listings
response improved whilst writing cache file
rtp mapping code from 2.2a0 removed
2.2a0 3 Apr 96 mhandley (telnet from California)
Octal problem with changing date fixed but not tested.
protocol fixes to support current SDP spec added.
2.1a12 30 Jan 96 mhandley
fixed: double clicking in main window produced a tcl error
ptime attribute added for audio and code to start up {pcm,dvi}{2,4}
added.
tearoffs removed from pull-right media attribute menus
2.1a11 26 Jan 96 mhandley
Fixed bug in storing addresses for address allocation
25 Jan 96 fenner@parc.xerox.com
FreeBSD port done.
strerror() added to compat.c
Union in a struct in_addr replaced with bit manipulation for
4.4 BSD compatibility
Added the ability to use a proxy server and a preference to go
with it, and made the WWW browser error messages slightly nicer.
Added (not-quite-fully-compliant-but-99%) HTML comment parsing, and
got rid of an infinite loop that occurred on pages with bare &'s (see
http://town.hall.org/).
24 Jan 96 mhandley
Lots of restructuring as a result of work on the sdr_server.
2.1a10 13 Jan 96 mhandley
Simple interface added for session creation by less techincal users
Simple interface added for session display
Stupid timing hole resulting in session duplication while
editing sessions now fixed.
Default audio protocol changed to be RTP rather than VAT protocol
Lots of restructuring in code to create new sessions.
A little restructuring in session display code - now more robust to
sessions being modified.
.sdr_cache is now obsolete, and is replaced by the .sdr directory
- this makes storing encrypted sessions cleaner
- this also prevents incorrect editing of one session's cache entry
corrupting others
old .sdr_cache files get read (once) and then deleted.
Calendar daily entries are now hot (popup the relevant session).
Calendar daily entries now only get an arrowhead if they start or
finish on that day.
Hot entries now get highlighted on entry (in all windows).
Clicking on an already raised session in sdr main window now dismisses
it - this makes it easier to browse sessions.
WWW browser and help system now handle HTML escaped special chars
WWW browser bug displaying HTML after last tag fixed
WWW browser handing of Relative URLs from redirected pages now fixed.
2.1a9 9 Jan 96 mhandley
Session Timeout timer-handler moved to start of session timeout code
to improve robustness
TCL session state time values were not all correctly set up for
infinitely long sessions - now fixed.
Session deletion code made more robust.
Spurious error message with length 0 sdr_cache file fixed.
2.1a8 6 Dec 95 mhandley
Stupid bug dealing with ad id comparisons fixed
2.1a7 2 Dec 95 mhandley
middle-button on empty session window error fixed.
incorrect port bug when starting nv fixed
some spurious debugging messages disabled
tearoffs removed from menus (shouldn't have been there in the first
place)
2.1a6 1 Dec 95 mhandley
tk4.0 porting bug related to editing repeated sessions fixed
spurious incorrect error messages removed.
ballon help initial state was inconsistent with UI - now fixed.
text-wrap problem is session popups fixed.
calendar bug with times before 1am fixed
editing sessions didn't clear previous text media - now fixed.
tk4.0 porting bug in WWW browser image link code fixed.
browser history list is now cleared on dismissing the window
- thanks to Bill Fenner for reporting all these!
BUGS and CHANGES now included in help pages.
2.1a5 30 Nov 95 mhandley
Released sdr with sd compat timestamps rather than NTP timestamps
- now fixed!
sscanf problem in parser on HPUX fixed - thanks to Piers O'Hanlon
session-id and session-versions fields were swapped - now fixed
spurious error message when parsing indefinite sessions removed
2.1a4 28 Nov 95 mhandley
TK_LIBRARY dependency had found its was back in with tk4.0
- removed again
Paste to description box tk4.0 bug fixed
Editing of ttl scoped sessions reset ttl - now fixed
Stupid calendar month wrapping bug fixed
2.1a3 27 Nov 95 mhandley
small changes related to porting to other platforms
2.1a2 25 Nov 95 mhandley
Vat and vic default program names fixed
Media labels in "new" window fixed
Sdr.tcl split in two and cleaned up slightly
Error checking improved in config files
"new" window disabled "protocol" and "fmt" menus fixed
setmediamode re-written
UK scope shouldn't have been in as a default!
Help pages greatly extended
"Bugs" and "Changes" now automatically included in help system
Debugging turned off by default
2.1a1 24 Nov 95 mhandley
Ported to Tk4.0 - loads of stuff changed
Protocol updated to draft-ietf-mmusic-sdp-01 subset
IconButton re-written to work with tk4.0
Horrible workaround added to prevent clash between iconbutton functions
and widgets with same names (used to work in tk3.6)
BalloonHelp modified to work with tk4.0
Some new balloons added - more are needed
WWW browser modified to work with tk4.0
More preferences options added + preferences re-written somewhat
Colour changed
Vat and vic startup scripts totally re-written - now supports
conf control channel for voice switching
Tool to start for nv, ivs, and rtp audio now a preference selection.
Allocates even ports for rtp
Allocates prividged ports according to mrouted 3.6 rate limiter
"new" protocol menu fixed
Loads and loads of little things to do with tk4.0
2.0a10 17 Aug 95 mhandley
stupid tcl bug with dates with leading zeros fixed
2.0a9 13 Jul 95 mhandley
administrative scoping now works on multiple addresses/ports
2.0a8 12 Jul 95 mhandley
administrative scoping added to interface - currently hardwired scopes
but address dependant on scope working
2.0a7 12 Jul 95 mhandley
nt added start_whiteboard procedure
multiple multicast addresses were broken in parser by additional
strlen check in a4 - now fixed
2.0a6 11 Jul 95 mhandley
Bugs fixed:
Now handles main window being slightly offscreen (-ve geometries)
Dhild windows now get moved completely onscreen (I hate TK sometimes!)
Bug in session deletion fixed - sessions weren't getting deleted
permanently.
Bug in www browser fixed - now handles any sized file
Session deletion/selection with empty main window now doesnt
cause an error
2.0a5 10 Jul 95 mhandley
Corrected non-conformance with SDPv2 draft-01
Transport protocol field added to "m=" fields
- not compatible with previous versions!
2.0a4 4 Jul 95 mhandley
First released version conforming to SDPv2 draft-01
2.0a3 20 Jun 95 mhandley
too many changes to list!
Handles most SDPv2 times and repeat times
Handles SDPv2 fmt fields
2.0a2 19 May 95 mhandley
built in WWW browser added to sdr
1.2a11 10 Mar 95 mhandley
Recording functionality added
Bug in day calendar popup fixed
1.2a10 2 Mar 95 mhandley
Language internationalisation completed. Now reads ~/.sdr.${LANG}
file for internationalisation code.
1.2a9 1 Mar 95, mhandley
Fixed bug in calendar - times before 10am didn't work!
Language internationalisation partially added.
1.2a8, 28 Feb 95, mhandley
Calendar label problem with German language labels fixed.
Calendar day numbering problem with month 2 and month 3 fixed
"unknown command .desc?.f.f0.desc" error fixed.