Commit Graph

  • 64bcfd23bd expose the way to specify context env properties remove unused lazy load code (we actively load components in the RouterContext) jrandom 2004-04-24 22:32:10 +00:00
  • d659447879 allow overriding the env props jrandom 2004-04-24 22:29:01 +00:00
  • e73eb55d75 don't create two contexts just for this I2PTunnel (one implicit from the static new Log(I2PTunnel.class) and one explicit) jrandom 2004-04-24 12:51:15 +00:00
  • a52cea29f4 Class.getConstructor pulls the public ones... jrandom 2004-04-24 12:49:13 +00:00
  • 3d91e59386 la la la jrandom 2004-04-24 12:38:21 +00:00
  • 393b1d7674 big ol' update to strip out the singletons, replacing them with a rooted app context. The core itself has its own I2PAppContext (see its javadoc for, uh, docs), and the router extends that to expose the router's singletons. The main point of this is to make it so that we can run multiple routers in the same JVM, even to allow different apps in the same JVM to switch singleton implementations (e.g. run some routers with one set of profile calculators, and other routers with a different one). There is still some work to be done regarding the actual boot up of multiple routers in a JVM, as well as their configuration, though the plan is to have the RouterContext override the I2PAppContext's getProperty/getPropertyNames methods to read from a config file (seperate ones per context) instead of using the System.getProperty that the base I2PAppContext uses. Once the multi-router is working, i'll shim in a VMCommSystem that doesn't depend upon sockets or threads to read/write (and that uses configurable message send delays / disconnects / etc, perhaps using data from the routerContext.getProperty to drive it). I could hold off until the sim is all working, but there's a truckload of changes in here and I hate dealing with conflicts ;) Everything works - I've been running 'er for a while and kicked the tires a bit, but if you see something amiss, please let me know. jrandom 2004-04-24 11:54:35 +00:00
  • c29a6b95ae Increased logging priority for connection timeouts (human) human 2004-04-23 14:18:48 +00:00
  • 567a4e8361 so this is why we're not harvesting the dropped jobs/messages (d'oh) if you update your harvester.config and rerun the router, it'll start paying attention to it (no, unfortunately the NetMonitor doesn't periodically read this file) jrandom 2004-04-22 03:17:41 +00:00
  • 4d3e4c1a15 d'oh jrandom 2004-04-22 03:11:12 +00:00
  • afeecdf4af logging, formatting jrandom 2004-04-22 03:09:03 +00:00
  • 4fe7105e2f Implemented timeout handling to I2PTunnelServer human 2004-04-21 17:58:26 +00:00
  • d7c3a53f2d Initial implementation of read() timeout on I2PSocket. Let's see whether it could solve duck's problems with dangling threads... (human) human 2004-04-21 17:56:16 +00:00
  • 58e7574a6a pull from the right field for netDb lookups sent i2p_0_3_0_4 jrandom 2004-04-20 20:58:07 +00:00
  • 94ab703c7c added prepareGUI, buildGUI,. distGUI targets jrandom 2004-04-20 20:56:55 +00:00
  • 90350786e6 s/InterruptedException/InterruptedIOException/ (human) human 2004-04-20 15:43:04 +00:00
  • 8038e1ee7d I2PSocketManager.connect() should have thrown InterruptedIOException, and *not* InterruptedException (oops!) (human) human 2004-04-20 15:38:55 +00:00
  • 65f1a5fed6 write out the public dest every time we connect, /including/ the first time. (thanks duck) jrandom 2004-04-20 13:30:09 +00:00
  • 64b94ab124 0.3.0.4 (backwards compatible, release info / docs / etc coming later today [is today tuesday already?] jrandom 2004-04-20 09:18:53 +00:00
  • c03cb1de5e revised GUI fetch/build/dist process - at the top level, run 'ant prepGUI' to fetch and prepare the jfreechart code 'ant buildGUI' to build the jars necessary 'ant distGUI' to build a gui.zip that contains the jars and a license notice related to the LGPL and APL software linked within it. ("installing" the GUI == unzip gui.zip into the I2P install dir) jrandom 2004-04-20 09:13:07 +00:00
  • f0004290b4 oops, pulled the wrong entry jrandom 2004-04-20 07:55:37 +00:00
  • 7e1b49a742 fixed up some of the cleanup code to handle out of order responses minor refactoring, formatting jrandom 2004-04-20 07:42:53 +00:00
  • d26c56e467 verbose4life jrandom 2004-04-20 07:39:47 +00:00
  • a51e0c26e5 added the eepProxy and harvester as part of the default clientApps run on startup (with a commented out set of lines for a heartbeat client/server) updated -cp lines accordingly use javaw for windows users (so they can close the damn dos boxes) toss the default logger logs into logs/ (say that three times fast) formatting jrandom 2004-04-20 07:32:21 +00:00
  • 180d39534c include the harvester & heartbeat monitor (but not their GUIs) jrandom 2004-04-20 07:27:41 +00:00
  • 203d0e870a allow the user to override the I2CP options (exposed on the command line, ala SAMBridge [[listenHost ]listenPort[ name=val]*] where listenHost defaults to localhost, listenPort defaults to 7656, and name=val can be the I2CP options to override (e.g. i2cp.tcp.host=localhost i2cp.tcp.port=4001) jrandom 2004-04-20 07:26:34 +00:00
  • bed7d09764 delete that stupid 'interactive' mode where we dump things to stdout on command (hello, we have an admin console now, duh) formatting touchups. jrandom 2004-04-20 07:06:39 +00:00
  • 3c762c9a02 short circuit some handling when building custom length tunnels if a client only wants 0 hop tunnels, give them 0 hop tunnels (rather than wasting a 2+ hop on it) make inNetPool.dropped and inNetPool.duplicate rate stats, not frequency stats formatting, minor refactoring jrandom 2004-04-20 02:42:56 +00:00
  • ba5f0fb70b correctly differentiate between handled & matched requests logging and some minor refactoring jrandom 2004-04-20 02:18:20 +00:00
  • ebc3e05f23 * Made the SAM bridge aware of the new exceptions thrown by I2PSocketManager.connect(), with better error reporting to SAM clients; * made SAMStreamSession destroy the associated I2PSocketManager when being closed. (human) human 2004-04-19 21:52:52 +00:00
  • 674ad899f9 Made HTTPTunnel aware of the new exceptions thrown by I2PSocketManager.connect() (human) human 2004-04-19 21:48:14 +00:00
  • d945eb6fcf Made all the ministreaming-based apps aware of the new exceptions thrown by I2PSocketManager.connect() (human) human 2004-04-19 21:47:06 +00:00
  • fb170e3c42 * Made I2PSocketManager.connect() throw several kinds of exceptions, for better error reporting; * Added an I2PSocketManager.destroySocketManager() method, that closes all the managed sockets and destroys the associated I2PSession. (human) human 2004-04-19 21:45:04 +00:00
  • 3658cca3e5 Further simplified I2P repliable datagram format: they now contain senderPubDest + S(H(payload)) + payload (human) human 2004-04-19 21:43:06 +00:00
  • 5e78a41b75 remove unnecessary scrolls and packs jrandom 2004-04-18 22:53:07 +00:00
  • c23d8efe08 publish the new data points (crypto.garlic.decryptFail, tunnel.unknownTunnelTimeLeft) jrandom 2004-04-18 03:40:42 +00:00
  • 0d3d4b60ce added stat - crypto.garlic.decryptFail formatting / logging jrandom 2004-04-18 03:36:12 +00:00
  • 38091c3c25 added stat - tunnel.unknownTunnelTimeLeft which gathers the time until expiration of tunnel messages we're dropping because we dont know about the tunnel Id. formatting / logging jrandom 2004-04-18 03:33:53 +00:00
  • f0cd04ebc3 increased the delay to 2 minutes after startup before running client apps tabs/spaces jrandom 2004-04-18 02:50:54 +00:00
  • 3295c18829 * Added DATAGRAM supprt; * refactoring of SAMRawSession.java, to make it derive from SAMMessageSession.java (parent class for SAMDatagramSession.java, too); * removed unuseful cruft; * some fixes; * M-x untabify. (human) human 2004-04-17 23:19:20 +00:00
  • ccb309fd92 I2P repliable datagrams human 2004-04-17 23:16:28 +00:00
  • 8206a26267 sample harvester.config (defining what stats we want to harvest from the netDb) jrandom 2004-04-17 03:33:19 +00:00
  • 8c7b91bd79 load what stats we want to monitor from a config file (harvester.config) jrandom 2004-04-17 03:32:51 +00:00
  • 061460f978 insane error handling jrandom 2004-04-17 00:43:03 +00:00
  • a47c7b8f27 always send as a guaranteed message (but block as before) - this lets udp-esque users get transparent sessionKey/sessionTag management. we'll probably refactor mode=guaranteed/best_effort into two concepts later, dealing with blocking and encryption seperately. logging and formatting fixes jrandom 2004-04-17 00:13:28 +00:00
  • a859908e83 handle repeated attempts to close() gracefully logging, formatting jrandom 2004-04-17 00:04:38 +00:00
  • 86759d2f9c DatabaseLookupMessageHandler: added stat - netDb.lookupsReceived fixed formatting HandleDatabaseLookupMessage: added stat - netDb.lookupsHandled added stat - netDb.lookupsMatched fixed formatting HandleDatabaseStoreMessage: added stat - netDb.storeHandled fixed formatting StoreJob: added stat - netDb.storeSent fixed formatting removed old unused code (we do dbStore through tunnels, not garlics) logging SearchJob: fixed formatting logging HandleTunnelCreateMessageJob: fixed formatting logging PoolingTunnelManagerFacade: added stat - tunnel.participatingTunnels fixed formatting logging TunnelPool: added getParticipatingTunnelCount() fixed formatting logging StatisticsManager: revamped whats published fixed formatting logging fixed formatting jrandom 2004-04-16 23:52:11 +00:00
  • 58c145ba08 Oops! Added missing file... (human) human 2004-04-16 03:44:35 +00:00
  • c0bb3da22f * Added support for SESSION CREATE STYLE=STREAM DIRECTION={CREATE|RECEIVE|BOTH} * M-x untabify (human) human 2004-04-16 03:42:05 +00:00
  • 031338d84d First step for the "connection refused" concept: incoming connections won't be accepted until the server app actually requires an I2PServerSocket from the I2PSocketManager. It allows both to add a little bit of functionality, and to fix a nasty bug: it was possible to hang an app that connects through the I2PSocketManager but actually doesn't accept() connections (if 2 connection requests were sent to the app, the I2PSocketManager got stuck waiting forever on I2PServerSocketImpl.getNewSocket()). human 2004-04-16 03:31:13 +00:00
  • 2a619f3fba Slightly updated specs (human) human 2004-04-16 03:22:37 +00:00
  • 1c145cbc09 handle corruption / race during update of the peer's routerInfo data jrandom 2004-04-16 03:21:20 +00:00
  • 5d71fde51b allow a third parameter - # seconds between fetch this lets you periodically refetch the seeds (I'm using this to fetch the live netDb & run the netmonitor/viewer) jrandom 2004-04-16 03:09:48 +00:00
  • eec29f5c68 include the netmonitor (but not the GUI) delete **/*.class and **/*.java~ (my IDE builds in place and backs up there) jrandom 2004-04-16 03:08:01 +00:00
  • 8fbd7acf2a initial impl (public domain, yadda yadda yadda) jrandom 2004-04-16 02:16:55 +00:00
  • 7b824e6178 kill long lines mihi 2004-04-14 23:27:50 +00:00
  • 24c69a26ea untabify mihi 2004-04-14 23:26:59 +00:00
  • 7b03c95cfd * Added STREAMing support; * added NAMING LOOKUP NAME=ME support; * various cleanups & fixes; * what else? (human) human 2004-04-14 16:59:47 +00:00
  • d2b09ecfda * Fixed race that (maybe) caused the problems reported by aum on <http://dev.i2p.net/pipermail/i2p/2004-April/000214.html>; * slightly revised locking; * made accept() throw a ConnectException when the I2PServerSocket is closed. (human) human 2004-04-14 15:28:02 +00:00
  • 4cdd42f391 Fixed build.xml to detect os, and launch 'jythonc' or 'jythonc.bat' according to whether we're running on *nix or windoze. build.xml should now work on your platform, as long as you have jython installed and jython is on your execution path. aum 2004-04-13 17:40:07 +00:00
  • 4d0b3b287f SAM bridge integration in the I2P build & packaging system (human) human 2004-04-13 04:41:14 +00:00
  • 0d7f784773 Pure-java implementation of the SAM bridge. It actually supports the HELLO, DEST and NAMING commands, plus SESSIONs with STYLE=RAW. It works with aum's client-side Python library (modulo a small change in the HELLO command, required to allow protocol versioning, not yet implemented in the client lib). (human) human 2004-04-13 04:38:52 +00:00
  • 66ad54fbf0 Made logs actually go through I2P logging system (human) human 2004-04-13 04:15:46 +00:00
  • 33782859b8 the heartbeat engine and gui are good 'nuff for now (while i want to spend another few days on it, there are more pressing things and this will meet my needs for testnet). the engine works as before, and the gui now actually plots out and follows the chart over time. The gui does have a lot of things left to be done before it can be adopted by joe sixpack - * load/store the URLs being monitored so you don't have to reenter them on each startup * clear out the x axis on refetch (now it just keeps growing, which is good and bad) * adjustable refresh rate * implement snapshots (saving all the current state files to a dir, and allowing that dir to be loaded all at once) * beautification (override the colors, etc) the net.i2p.heartbeat.** code is all public domain, BUT net.i2p.heartbeat.gui.JFreeChart* classes depend on the LGPL'ed jfreechart code, which in turn depends on apache licensed code (log4j). for the time being, this code doesn't include the jfreechart code (and dependencies), but the ant task in apps/heartbeat/java 'fetchJfreechart' downloads it and places it under apps/heartbeat/java/lib, after which you can build the GUI by running the ant task 'buildGUI' (buildGUI / etc are NOT in the standard build process). once we figure out all the details to comply with the requirements of log4j's license we'll do so. but for now, the above works. jrandom 2004-04-13 03:24:04 +00:00
  • 3d294d5771 fix javadoc warning: no @return on void functions (shendaras) shendaras 2004-04-12 10:26:42 +00:00
  • c889a83707 More update ant tidy-up aum 2004-04-12 08:53:26 +00:00
  • 6a55af1950 Fixed paths aum 2004-04-12 08:43:32 +00:00
  • a85cf2c2af Makefile and build.bat removed since we've switched to ant README moved up to parent aum 2004-04-12 08:41:43 +00:00
  • 4c0e3f92d3 Created build.xml for SAM Moved README out of build dir aum 2004-04-12 08:32:32 +00:00
  • e3354a805e javadoc, imports (shendaras) shendaras 2004-04-12 08:14:07 +00:00
  • ceb9a935de import stuff (alphabetizing, etc.) (shendaras) shendaras 2004-04-12 08:13:48 +00:00
  • d3ad111b85 change - now goes to root build dir and does 'ant build' to ensure the required jars are present aum 2004-04-12 06:41:24 +00:00
  • de740b1d9d started adding STREAM support aum 2004-04-12 05:46:05 +00:00
  • 7c155545ae partial impl of the gui, still a few things left to do: - implement some validation on the state files loaded - reenable delete and updates to refresh - integrate the real chart code (currently just plain text instead of the graphs) - gui updates i wont spend more than another day on this during the testnet, but i want to get it plotting before continuing. jrandom 2004-04-12 02:44:18 +00:00
  • a7597b2a6d Tested build process on windows. Updated README, and fixed build.bat, so windows build of i2psam.jar works. aum 2004-04-11 10:31:41 +00:00
  • 22916c1904 Corrected Makefile: - removed relative path for jython.jar, replaced with a def which developer must edit aum 2004-04-11 07:21:28 +00:00
  • a72e479e50 scoping so the test classes are reachable outside the current package jrandom 2004-04-10 13:37:29 +00:00
  • 60c1776994 fix up packages jrandom 2004-04-10 13:35:56 +00:00
  • fbddb24728 license incompatible with i2p license policy - section 2 requires application developers to use the software in a particular way (to have the software display "Copyright \xa91996-1999 Corporation for National Research Initiatives; All Rights Reserved") section 3 has a similar problem. jrandom 2004-04-10 12:56:02 +00:00
  • e716f9e63a format (shendaras) shendaras 2004-04-10 11:55:25 +00:00
  • 51c49d7c1b format (shendaras) shendaras 2004-04-10 11:50:11 +00:00
  • 17a1b11f66 beginning of format, updated imports. (shendaras) shendaras 2004-04-10 11:45:02 +00:00
  • 8a8e68146f beginning of format, updated imports. (shendaras) shendaras 2004-04-10 11:39:00 +00:00
  • dbe5dea525 120 code, 160 comments (shendaras) shendaras 2004-04-10 11:01:42 +00:00
  • 604af822aa see how that looks (shendaras) shendaras 2004-04-10 10:58:11 +00:00
  • 435759c21c indent on column, update javadoc (shendaras) shendaras 2004-04-10 10:31:03 +00:00
  • 847f094975 @seeRoutine -> @see (shendaras) shendaras 2004-04-10 10:26:19 +00:00
  • b939d86975 once more to fix newline after @param (shendaras) shendaras 2004-04-10 10:20:37 +00:00
  • 3e5f56b19b final? (shendaras) shendaras 2004-04-10 10:17:32 +00:00
  • d81f42e3e9 again? Longer wrapping (shendaras) shendaras 2004-04-10 10:08:33 +00:00
  • 4fb3d34786 see how that looks (shendaras) shendaras 2004-04-10 10:01:17 +00:00
  • 9a0a527b2b try with different settings... jrandom 2004-04-10 09:55:11 +00:00
  • ba8fb23b9d editor testing (ignore for now) jrandom 2004-04-10 09:43:29 +00:00
  • 99790695a2 Javadoc, imports, and (potentially) some indentation. Maybe it won't do anything.... who knows? (shendaras) shendaras 2004-04-10 09:12:59 +00:00
  • e3a86bb150 code.leo is an xml-format file that holds the I2P SAM server and client sources in a dissected XML form. aum 2004-04-10 08:21:01 +00:00
  • 0ac1e885bd Description of what lives here and how to build it aum 2004-04-10 08:18:42 +00:00
  • 36aca1d39b i2psamclient.py is a Python API allowing Python apps to access I2P via SAM. File contains a demo function, which both tests the library, and shows simple examples of how to use the API. Run epydoc on this file to get good doco. aum 2004-04-10 08:16:18 +00:00
  • d0192b4cab Implements the I2P SAM server, in Jython (www.jython.org) aum 2004-04-10 08:12:22 +00:00
  • a3a7a585d7 Added Makefile for building i2p SAM server jarfile aum 2004-04-10 08:11:24 +00:00
  • b437d858f0 Added Jython license document, copied verbatim from website aum 2004-04-10 07:00:54 +00:00
  • 06f78178da removed jython.jar from this dir, should have gone into lib (which I've already done) aum 2004-04-10 06:57:32 +00:00