Revision History
|
Program Versions
|
 |
2.2.3 Service Update release 4/24/01
- Increased the limit on automatic host connections
- Increased the limit on incoming host connections
- Changed the URL for Gnutella Web Search
- Fixed Security hole with certain relative paths in web server URLs
- Fixed Range HTTP header specifier now compliant (resumes downloads from non-BearShare servents)
- Fixed Edit boxes no longer beep when ENTER is pressed
|
 |
2.2.2 Service Update released 4/1/01
- Fixed Older BearShare servents are correctly dropped even before the 14th of the month
|
 |
2.2.1 Feature Update released 3/29/01
- Revised FAQ and Help Center
- Fixed Self connection logic aborts stray connections
- Fixed Intermittent crash when returning search results
|
 |
2.2.0 Feature Update released 3/13/01
- New QHD extensions provide an indication if flags are set correctly
- QoS is red if the server is busy
- QoS is gray for servers that have not successfully completed at least one upload
- QoS is green for servers known to have upload slots available
- QoS is hollow for results without extended QHD information
- QoS level is independent of push flag, firewalled addresses, or web server
- QoS level displays at least 4 pixels and has a minimum column width
- Sorts for all search result columns use and prefer extended information in search results
- Sorts for the server speed column prefer averaged throughputs
- Comparison for sorts uses old QoS information if no additional data is present
- Busy servers always return different search results for the same query regardless of settings
- Push flag validity indicator is set and checked in search results
- Searches are not broadcast until no passive results come in for 5 seconds and there were less than 100 matches
- Search results return the fastest average throughput seen in the last ten completed uploads as the speed of the host
- Search Result list shows averaged throughput values in green
- Search results always set the "Push" flag until the servent "proves" its ability to accept incoming connections
- Push download search results are hidden, and Push download logic is disabled, until the servent "proves" its ability to accept incoming connections
- Web Site flag only set after the servent "proves" its ability to accept incoming connections
- Unlimited connections are allowed to and from loopback addresses regardless of settings
- Passive Search defaults to always on, and removed from the setup
- Changed the wording of the version upgrade dialog
- License agreement modified to encourage users
- Fixed Push messages are routed to the destination instead of being sent back to the sender
- Fixed Size of QHD public area is checked to determine private data offset
- Fixed Fixed bug where completed downloads could cause the program to crash later
- Fixed Search results known to belong to the local user are not routed, even if the route expired
|
 |
2.1.1 Service Update released 3/12/01
- Older BearShare host depreferencing
- Outgoing connection limits for firewalled hosts
- Reduced the maximum limit on host connections
- Fixed Less Busy downloads
- Fixed Automatic connection logic ignores the loopback adapter
|
 |
2.1.0 Service Update released 3/8/01
- Pong rate limiting disabled
- Fixed Push requests use a unique message ID for each request
- Fixed Duplicate push messages are correctly filtered
- Fixed Installer no longer waits for child processes
|
 |
2.0.9 Service Update released 3/2/01
- Fixed Port number correctly reported in crawler pongs
|
 |
2.0.8 Service Update released 3/1/01
- Min/Max controls for Hosts Page
- Recommended Settings optimize resources for the entire network (Hosts Min=3)
- Improved support for Clip2 and LimeWire Service Providers
- Crawler pings are responded to with remote IP and ports of neighbors
- Port numbers are cached for neighbors
- Updated Origin icon for the Clip2 Service Provider
|
 |
2.0.7 Service Update released 2/21/01
- Pongs with ttl>1 are not returned unless client needs incoming connections
- Pings with ttl>1 are not sent unless the host cache is low
- Fixed Installer no longer causes Windows NT to complain about an invalid executable
- Fixed Installer no longer fails under certain Windows 2000 configurations
- Fixed Pongs with a zero port number are not stored in the host cache
|
 |
2.0.6 Service Update released 2/7/01
- Fixed Intermittent crash with network resources on auto connect
- Fixed Intermittent crash with certain Reflector and LimeWire queries
- Fixed Auto connection logic respects the maximum host limit
|
 |
2.0.5 Service Update released 1/29/01
- Gnucleus search results are identified
- Files are written to disk per completed megabyte while downloading
- Binary queries exceeding the agent TTL are not forwarded
- Horizon update no longer refreshes the FreePeers horizon
- Added Movie, QuickTime, RealAudio, RealMedia, and WAV files to the default user website and shared extensions
- Digital code signing for new installs and updates
- Installation creates Start Menu group for BearShare
- Installation creates documentation and Upload Report shortcuts
- Fixed Program no longer crashes on exit in certain cases
- Fixed Connection logic respects the specified host count
- Fixed Pings broadcasts further reduced to current hosts per second
|
 |
2.0.4 Service Update released 1/23/01
- Mactella search results are identified
- Ping, pong throttle actively rate-limits network traffic
- Bandwidth barrier throttle actively reduces broadcast query traffic
- Bandwidth barrier timeout reduced to 10 seconds
- Reduced probabilities of sending outgoing binary queries
- Decreased default number of host connections per connection type
- Decreased size of the ping routing tables
- Increased size for query and push routing tables
- Relaxed TTL rules on query hits, pong, and push messages
- Default outgoing TTL reduced to 5
- Incoming LimeWire Service Provider connections are correctly identified and always accepted
|
 |
2.0.3 Service Update released 1/22/01
- Fixed Downloads no longer corrupt the file in certain cases
- Fixed HTTP response is correctly parsed in all cases
|
 |
2.0.2 Service Update released 1/21/01
- Drag and drop links from a browser to the Download List
- Clear menu option from the Upload Menu
- Revised interface for auto clear options in Uploads and Downloads
- GUID generator encodes new protocol client information
- Extended Ping messages from one hop are not dropped
- Added Shockwave Flash formats to the default shared extensions
- Fixed Browse Web Site works from any browser
- Fixed Filter search setting is loaded on launch
- Fixed Not Found errors do not retry in Downloads
- Fixed Browse Web Site works through proxies
- Fixed Push requests respect the forced IP address
- Fixed Tab control labels respect the desktop color scheme
|
 |
2.0.1 Service Update released 1/16/01
- Fixed Connection logic uses less network resources
|
 |
2.0.0 Major Update released 1/14/01
- Serve Web Site
- Browse Web Site from search results
- Integration with Gnutella Web Search
- Block IP addresses
- Upload bandwidth limit controls
- Search results show Quality of Service
- Always Retry download enhancement
- Send to tray from system menu
- Enhanced connection management
- Enhanced default settings
- Shared files spoofing
- Filtered search results for firewalled users
- Refresh horizon
- Streamlined connection interface
- Fixed Downloads count correctly when manually starting a Busy
- Fixed Forced IP setting is remembered properly in the Setup
|
 |
1.3.2 Feature Update released 1/3/01
- Fixed BearShare exits from the tray correctly
- Search column in Search Results shows original search text, allows sorting
- Type column in Search Results shows file type, allows sorting
- Uptime column in Search Results, hidden by default, shows minutes of uptime
- Version column in Search Results, hidden by default, shows the software and version
- All matching keywords are hilited in the Search Results
- Push flag in the Gnutella Open Protocol Extensions is set and checked
|
 |
1.3.1 Feature Update released 12/29/00
- Fixed Forced IP address is reported in Pongs
- Browser download hindrance educates web-based freeloaders
|
 |
1.3.0 Feature Update released 12/27/00
- Fixed Search results from BearShare 1.2.6 servents are no longer dropped
- Fixed Horizon entries age correctly so the hosts, FreePeers count go down and up
- Fixed Download logic uses Push requests for IP address=0.0.0.0
- Common Weblog Format generation option for uploads (see Webstats in docs)
- Generates HTML reports for upload activity using bundled Webalizer product (see Webstats in docs)
|
 |
1.2.6 Service Update released 12/26/00
- Fixed localhost IP addresses (127.0.0.1) coming from pongs are no longer used when connecting automatically
- Built-in support for the BearShare.Net service
- About box with FreePeers Agent version number is more easily accessed
|
 |
1.2.5 Service Update released 12/22/00
- Fixed Yet another crashing defect related to large search results fixed
- Fixed Program no longer crashes with Reflector 1.2 Beta
- Fixed Agent no longer drops messages compliant with the
Gnutella Open Protocol Extensions
|
 |
1.2.4 Service Update released 12/20/00
- Fixed Program no longer crashes intermittently when
returning search results near the 64KB message length limit.
- Fixed Program no longer crashes when connecting
to a Reflector.
|
 |
1.2.3 Service Update
- Fixed Program doesn't sit in the tray forever after
at least one push download gets a response and the user later exits
|
 |
1.2.2 Service Update
- Fixed Agent queries use TTL=2 instead of TTL=7 to avoid creating
a traffic problem on the public Gnutella segments
- Fixed Ping and Agent queries use TTL=1 on incoming connections
to reduce the number of broadcast messages
|
 |
1.2.1 Service Update
- Fixed Timer service doesn't crash on program startup
under Windows 95, or operating systems that don't support CreateWaitableTimer
- Fixed Timer service operates correctly as a replacement for Windows
versions that don't support CreateWaitableTimer
- Fixed Server no longer crashes on dispose before reporting
initialization errors to the user
- Fixed Resizing the window no longer crashes
- Fixed The server starts after the Setup Wizard completes, instead
of immediately when the program is launched
- Fixed Hosts don't show a '?' for the state under certain abort
sequence scenarios
- Fixed An empty text file is no longer being created on the E: drive
- Fixed The host list is the same width as the other lists
- Fixed Leds disable properly if server is shut down using the menu
- IP Blocker is more strict with download requests from Gnutella web search engines
- Download logic detects when remote host blocks you due to repeated requests
- Setup Wizard adds Napster shared directories if present
- Incoming service connections are detected before becoming temp
- Upload logic decodes file name, user agent before anything else, for display
- Sorts on Version put empty fields at the bottom
- Earthlink/Mindspring icon has a white background
- Earthlink/Mindspring DSL users have a slightly different icon
|
 |
1.2.0 First public release
- Smooth, flicker free drawing in all lists
- Sortable columns in all lists with context sensitivity
- Rubberband column headers
- Tri state status indicators
- Feedback for service connections
- Host status indicator shows unstable connections
- Uploads and downloads show amount of data sent and received
- Search Page provides animation during searches
- Hosts that reach a bandwidth barrier have the bandwidth drawn in red
- Host message percentages show idle, bandwidth barriers in color
- Removal of hosts that hit a bandwidth barrier by default, and configurable
- Private IP addresses in search results are drawn in red
- Port number display for incoming connections is supressed, since it is randomly assigned
- Error reporting verbosity is configurable through the setup and the settings file
- Bandwidth and count statistics on hosts, uploads, downloads, and monitor pages
- Agent permits Temp connections as a courtesy to other hosts
- Agent waits for Temp connections to get their pongs
- Timeouts for host connect, handshake, disconnect, and message completion
- Temp connections get dropped they don't send a ping within the timeout
- Agent responds with all files for Reflector or LimeWire browse queries
that are one hop away, overriding the max query hits setting
- Incoming service connections are allowed even if the limit on hosts is reached. This
can be turned off in the settings file.
- Passive searching mode examines all query responses for matches
- Agressive filtering of search results, off by default
- Filtering of searches by minimum speed and minimum size
- Can handle and return more than 255 query hits for searches
- Automatic detection of other FreePeers Agents on the network
- Proper response to HTTP HEAD requests
- Timeouts for connect, request, and disconnect on uploads
- Proper TCP/IP shutdown sequence for all connections
- Shared files are scanned in a separate thread
- Shared files are immediately usable for query responses as they are scanned, even if the list is large
- File watchdog monitors shared files for changes
- Optimized using a profiler, all critical sections removed and replaced with atomic variables and spin locks
- Filenames are stored in canonical format when scanned, to speed local searches
- Incoming queries are canonicalized before matching
- Upload List shows all connections, even if they are simple requests or the server is busy
- Search results from hosts that are disconnecting are examined
- Search results from expired messages are still examined, but not forwarded
- URL encoded upload requests are decoded before being displayed
- Communications layer works with 500 sockets and more
- Agent responds to pings only if client accepts incoming, and not firewalled, else IP address 0.0.0.0 is returned.
- Agent responds to queries only if client allows uploads.
- Server status indicator flashes red if the listening socket failed
- Completed uploads and downloads show the total time in the Time column
- Host, upload, and downloads lists show time remaining if there is a timeout.
- Host list shows all connections at least temporarily (if it was an upload request)
- Cue text for empty edit boxes in the Hosts and Search pages
- Elapsed time indicators show seconds if the minutes is less than 5
- Agent will retry busy servers on downloads using configurable settings
- Agent correctly responds to all upload requests with well formed headers, even if the server is busy
- Agent handles legacy HTTP requests from older Gnutella clients
- Rescanning the shared folder still permits access to the file list through atomic variables
- UI thread gets a small priority boost during high load in the Agent
- Search results store coalesces duplicate host information to reduce memory consumption
- Search results filtered for duplicates
- Incoming Push requests contact the remote host if the upload limit is reached
- Splitter bars move in increments of the font height
- Reorder of pane drawing depending on splitter movement to reduce jiggle
- Replacements that take buffer sizes for C runtime routines to prevent buffer overrun attacks
- Checking on all buffers and incoming data to prevent buffer overrun attacks
- Completed uploads and downloads show the total time and average throughput
- Installer prompts the user to launch the program after installation
- Setup Wizard hides the more advanced controls on certain pages
- File indices are preserved if the file is the same when the shared folder is rescanned
- Rates use interval analysis when events occur less than once per second
- Downloading files are opened in shared read mode
- Transfer progress graphics
- Download menu provides option to open the file using the file association
- Search, upload, and download lists provide option to connect to host
- Setup and server errors are routed to the host errors display
- Search results are URL decoded
- Directory components are stripped from incoming search results
- Added more cases for identifying businesses and foreign ISPs for Origins
- Added state, and sometimes city, identifications for the major ISPs
- Added more university and college identifiers
- Added U.S. and some foreign military identifiers
- Origin is displayed for uploads and downloads
- Search result list provides feedback for files the user already selected
- User agent and server types are applied to the host list if the IP matches
- Entropy collection munges incoming socket data as well as operating system variables
- Random number generator changes the key after each output from the block cipher
- Server fingerprint distinguishes duplicate IP addresses from firewalled hosts on Agent queries
- Baselines for all UI text line up
- Blue indicator during service connections
- Query monitor turns off after 10 minutes to conserve CPU when unattended
- Legend for the indicator panel
- Push requests for invalid files still contact the client to send the HTTP status
- Search logic requires that all words match
- Search monitor canonicalizes the search before display
- Empty socket buffers go on the deleted list for speed
- Each socket threads handles up to 61 connections now
- Memory measurement classes track every byte
- Service connection indicator works even if the user types the name or IP address manually
- Routing table stats only display a capacity if the table fills
- Hosts page displays a level 1 warning if the routing tables fill before 10 minutes
- Temp hosts don't get routing tables allocated
- Routing table sizes can be adjusted while the program is running
- Explore opens the Windows explorer for any local file
- Connect Host switches to the Hosts page
- Double clicking for open/play/download depending on context
- Installer preserves the settings file
- Ping/Pong throttling when hosts reach the bandwidth barrier
- Idle connection monitor sends a ping before disconnecting an idle host
- UI provides feedback for idling, bandwidth barrier, and high duplicates in the message column
- Message column right justifies each item
- Minimizing to the tray area on exit also removes the taskbar tab
- Program icon uses a transparent background
- Search results checks the shared file list for matches
- Custom draw list items look and work the same in all video modes
- More aliases on LimeWire domains to detect service connections
- Window respects the color scheme and font size of the desktop
- Zoomed view can also display the statistics panel, permitting back-tabbing
- Download logic parses some extended error information that exists past the HTTP response header on some servers.
- Downloader automatically reconnects on a download if it is interrupted
- IP blocker denies connections if the remote host connects too many times, or requests the same file over and over again,
in a given time period.
- IP profile database maintains the host name, server type, user agent, and connectivity history for every address.
- Download logic uses the IP profile database to determine when to give up
- Download logic puts failed downloads on 'hold' pending anlaysis of other downloads from the same host,
before giving up.
- Download logic starts downloads from the least utilized server when there are multiple downloads from different hosts queued.
- Dragging with the right mouse button on the column dividers performs a mirror-image resize operation
- Added more repairing of malformed Content-Range responses from non-compliant servers
- Added FreePeers Agent count to the hosts horizon
- Consolidated the memory displays to Server, Network, and Total in statistics
- Added a configurable delay to host, download, and upload lists for displaying failed items
- Version update flag added to Agent queries so development can use new versions without triggering the dialog
|
 |