Commit Graph

80 Commits

Author SHA1 Message Date
dg2-new 5bcfe025d5 fix build 2013-11-20 15:40:21 +00:00
dg2-new eabcc96a99 remove useless string 2013-11-20 14:52:44 +00:00
dg2-new 28b6675979 findbugs BOB/SAM. more to do. 2013-11-20 12:02:44 +00:00
zab2 9d52ef5fbe Explicit check for empty values 2013-06-11 13:21:49 +00:00
zzz 5ea2832ae0 * AppManager: Register jetty, console, and SAM with manager 2013-04-19 11:41:35 +00:00
zzz c61f2af8b3 * SAM: Implement ClientApp interface (ticket #347) 2013-04-16 21:07:00 +00:00
zzz 832c0ff683 * SAM: Force i2cp.messageReliability=None (ticket #819) 2013-01-12 18:13:59 +00:00
zzz 452d1d01b8 * SAM: Synchronize dissector 2013-01-02 13:21:45 +00:00
zzz fb5d0cd760 Boolean.valueOf(x).booleanValue() -> Boolean.parseBoolean(x) 2012-09-28 17:50:41 +00:00
zzz 39d9d3f5b6 * SAM: Don't use direct byte buffers for streams (ticket #679)
DatagramServer one stays as it is a singleton.
2012-08-09 15:12:17 +00:00
zzz d8dd76c6e0 * SAM: Volatiles and finals 2012-08-08 17:01:59 +00:00
zzz 1ab8200c7f * Clone System properties before iterating to avoid
ConcurrentModificationException (ticket #680)
2012-08-06 14:45:37 +00:00
zzz 764a7f2e13 remove unused private items (eclipse) 2012-03-26 00:52:06 +00:00
zzz 1db58dee89 remove unused local variables (eclipse) 2012-03-25 22:16:03 +00:00
zzz f13956d380 remove unused imports (eclipse) 2012-03-25 21:45:18 +00:00
zzz 3e889d2747 remove unnecessary casts (eclipse) 2012-03-25 20:42:41 +00:00
zzz c902d4c219 remove SAM client classes from sam.jar 2012-01-27 13:33:41 +00:00
zzz 2baee7413c * Replace size() <= 0 with isEmpty() everywhere, ditto > 0 -> !isEmpty() 2010-05-05 16:51:54 +00:00
BlubMail 5eccc01de6 merge of '1d77e0a89198e422acfb66d9310fad7b0b290e38'
and '5271eb82ac21ebc1a96dd31c462a14e2aaa0c89e'
2009-09-13 16:33:32 +00:00
mkvore-commit 1850e893e9 removes a bug in SAM v1 and v2 (introduced when merging with v3) 2009-09-07 17:33:29 +00:00
BlubMail 2341793546 writeString(String str): synchronize using socket write lock to prevent split SAM messages 2009-09-06 00:43:45 +00:00
zzz abc23e9a49 * Move almost all uses of StringBuffer to StringBuilder,
for efficiency (thanks Arsene for the suggestion)
2009-07-01 16:00:43 +00:00
mkvore-commit e86e42818a SAMv1 and SAMv3 : logging some exception at INFO level 2009-05-24 16:04:57 +00:00
mkvore-commit 965b183d9e fix: warnings when generating javadoc 2009-05-12 10:46:34 +00:00
mkvore-commit bc7a963f5c correct a null pointer exception check before it gets caught and logged as an error 2009-05-10 20:23:08 +00:00
mkvore-commit ef737415c5 SAMv3: bug corrected: sending datagrams through the datagram session socket works (like in v1 and v2) 2009-05-08 14:33:03 +00:00
mkvore-commit 30b73ffe6d changed samv3 because of reverted streaming and mstreaming libs 2009-05-05 12:39:14 +00:00
mkvore-commit 4ffa2450c2 * SAMv3 : doc/sam.3.0-protocol.txt updated
* SAMv3 : SAMv3StreamSession.java: thread naming for debugging purpose
2009-04-26 10:14:23 +00:00
mkvore-commit 0c738e2c6f SAMv3: stream session stop listening when the forwarding session closes. Doc has to be changed to reflect this. 2009-04-23 00:55:12 +00:00
mkvore-commit eae4362181 SAMv3: NAMING ME request now work on stream sessions 2009-04-21 04:14:53 +00:00
mkvore-commit bc831d3c35 Changelog: SAM : big bug in SAMv1Handler corrected 2009-04-06 09:53:01 +00:00
mkvore-commit fcbfd7554f SAMv3: alternate form of calling SAMBridge.main. Usage message updated. 2009-04-06 06:39:30 +00:00
mkvore-commit 6b825fbe25 SAMv3 : protocol better specified, and small changes in the code reflecting the new protocol 2009-04-05 21:32:43 +00:00
mkvore-commit de6edc6a99 2009-04-04 10:28:31 +00:00
mkvore-commit a4d16af95d SAM version 3 :
- Raw and Datagram sessions implemented
      - option "SILENT=true" added to the stream protocol
      - java 6 warnings removed
   ministreaming :
      - java 6 warnings removed
   ministreaming and streaming :
      -  added functions : 
      	I2PServerSocket.waitIncoming(long timeout)
      	I2PServerSocket.accept(boolean block)
2009-04-02 08:22:31 +00:00
zzz bad4c4a133 SAM: Convert from I2PThread to I2PAppThread so it won't
shutdown the whole router when ooming.
2008-11-20 14:59:55 +00:00
sponge 1c6b78a8da SAM davadoc cleanups
JDK5 compliance
2008-10-12 16:07:23 +00:00
Oldaris 5782c42d25 Cleaned up all 'imports' in all applications, core and router. 2008-07-16 13:42:54 +00:00
complication 17b719f3f7 2007-12-02 Complication
* Commit SAM v2 patch from mkvore (thank you!)
    * Minor reformatting to preserve consistent whitespace
      in old SAM classes (new classes unaltered)
2007-12-03 04:19:25 +00:00
connelly 28978e3680 Fixed Bug #99: Data pending to be sent is still sent even if STREAM CLOSE is issued. 2005-03-24 01:49:00 +00:00
smeghead 2d15a42137 big code cleanup to reduce number of compiler warnings 2005-03-01 23:25:15 +00:00
jrandom 10ed058c2e 2005-02-22 jrandom
* Reworked the tunnel (re)building process to remove the tokens and
      provide cleaner controls on the tunnels built.
    * Fixed situations where the timestamper wanted to test more servers than
      were provided (thanks Tracker!)
    * Get rid of the dead SAM sessions by using the streaming lib's callbacks
      (thanks Tracker!)
2005-02-23 04:20:28 +00:00
duck 7b58d0fa0f Allow an unneeded newline in the SAM client protocol without disconnecting. 2005-02-09 19:28:29 +00:00
jrandom b2f183fc17 2004-12-14 jrandom
* Reenable the probabalistic drop on the TCP queues to deal with good old
      fashioned bandwidth limiting.  However, by default the probability is
      rigged to reserve 0% of the queue free - meaning we just aggressively
      fail messages in the queue if we're transferring too slowly.  That
      reservation factor can be increased with 'tcp.queueFreeFactor=0.25'
      (or whatever) and the drop code can be disabled with the parameter
      'tcp.dropProbabalistically=false'.
    * Still penalize a peer on tunnel failure, but don't immediately drop
      their capacity to 0.
    * More aggressively ACK duplicates
    * Randomize the timestamper period
    * Display the clock skew on the connection logs when a peer sends it.
    * Allow the timestamper to fix skews of up to 10 minutes
    * Logging
2004-12-14 11:54:39 +00:00
jrandom d88396c1e2 2004-12-08 jrandom
* Revised the buffering when reading from the SAM client and writing
      to the stream.  Also added a thread (sigh) so we don't block the
      SAM client from giving us more messages for abnormally long periods
      of time.
    * Display the router version in the logs on startup (oft requested)
    * Fix a race during the closing of a messageOutputStream
2004-12-08 17:16:16 +00:00
jrandom e52d637092 2004-12-06 jrandom
* Don't propogate streaming connection failures out to the SAM bridge as
      fatal errors.
    * Dont barf on repeated I2CP closure.
2004-12-06 05:03:57 +00:00
jrandom 88bb176f3b 2004-12-05 jrandom
* Default the I2CP listener to localhost only, unless overridden by
      i2cp.tcp.bindAllInterfaces=true (thanks dm!)
    * More SAM fixes for things recently broken (whee)
2004-12-06 00:54:07 +00:00
jrandom 61a8d679bb 2004-12-05 jrandom
* Fix the recently broken SAM bridge (duh)
    * Add a new pair of SAM apps - net.i2p.sam.client.SAMStreamSink and
      net.i2p.sam.client.SAMStreamSend, mirroring the streaming lib's
      StreamSink and StreamSend apps for transferring files.
    * Make the passive flush timer fire more frequently.
2004-12-05 15:32:32 +00:00
jrandom 2d9d8f32dc 2004-12-03 jrandom
* Toss in a small pool of threads (3) to execute the events queued up with
      the SimpleTimer, as we do currently see the occational event
      notification spiking up to a second or so.
    * Implement a SAM client API in java, useful for event based streaming (or
      for testing the SAM bridge)
    * Added support to shut down the SAM bridge on OOM (useful if the SAM
      bridge is being run outside of the router).
    * Include the SAM test code in the sam.jar
    * Remove an irrelevent warning message from SAM, which was caused by
      perfectly normal operation due to a session being closed.
    * Removed some unnecessary synchronization in the streaming lib's
      PacketQueue
    * More quickly clean up the memory used by the streaming lib by
      immediately killing each packet's resend job as soon as it is ACKed (or
      cancelled), so that there are no longer any valid pointers to the
      (potentially 32KB) packet.
    * Fixed the timestamps dumped to stdout when debugging the PacketHandler.
    * Drop packets that would expand our inbound window beyond our maximum
      buffer size (default 32 messages)
    * Always read the ACK/NACK data from the verified packets received, even
      if we are going to drop them
    * Always adjust the window when there are messages ACKed, though do not
      change its size except as before.
    * Streamlined some synchronization in the router's I2CP handling
    * Streamlined some memory allocation in the SAM bridge
    * Default the streaming lib to disconnect on inactivity, rather than send
      an empty message.
2004-12-04 23:43:07 +00:00
jrandom 1a30cd5f4a 2004-12-03 jrandom
* Toss in a small pool of threads (3) to execute the events queued up with
      the SimpleTimer, as we do currently see the occational event
      notification spiking up to a second or so.
    * Implement a SAM client API in java, useful for event based streaming (or
      for testing the SAM bridge)
    * Added support to shut down the SAM bridge on OOM (useful if the SAM
      bridge is being run outside of the router).
    * Include the SAM test code in the sam.jar
    * Remove an irrelevent warning message from SAM, which was caused by
      perfectly normal operation due to a session being closed.
    * Removed some unnecessary synchronization in the streaming lib's
      PacketQueue
    * More quickly clean up the memory used by the streaming lib by
      immediately killing each packet's resend job as soon as it is ACKed (or
      cancelled), so that there are no longer any valid pointers to the
      (potentially 32KB) packet.
    * Fixed the timestamps dumped to stdout when debugging the PacketHandler.
    * Drop packets that would expand our inbound window beyond our maximum
      buffer size (default 32 messages)
    * Always read the ACK/NACK data from the verified packets received, even
      if we are going to drop them
    * Always adjust the window when there are messages ACKed, though do not
      change its size except as before.
    * Streamlined some synchronization in the router's I2CP handling
    * Streamlined some memory allocation in the SAM bridge
    * Default the streaming lib to disconnect on inactivity, rather than send
      an empty message.
this still doesnt get the BT to where it needs to be, or fix the timeout problem,
but i dont like having so many commits outstanding and these updates are sound
2004-12-04 23:40:50 +00:00