Changeset 51c5da3


Ignore:
Timestamp:
Nov 12, 2015 6:49:13 PM (5 years ago)
Author:
zzz <zzz@…>
Branches:
master
Children:
c609781
Parents:
37a4fcb
Message:

lint: don't catch Exception, catch RuntimeException? or checked exception.
omits SAM, BOB, reflection, commented-out code, and a few other places

Files:
78 edited

Legend:

Unmodified
Added
Removed
  • apps/i2psnark/java/src/org/klomp/snark/SnarkManager.java

    r37a4fcb r51c5da3  
    20522052                        ok = monitorTorrents(dir);
    20532053                    }
    2054                 } catch (Exception e) {
     2054                } catch (RuntimeException e) {
    20552055                    _log.error("Error in the DirectoryMonitor", e);
    20562056                    ok = false;
     
    20612061                        addMagnets();
    20622062                        doMagnets = false;
    2063                     } catch (Exception e) {
     2063                    } catch (RuntimeException e) {
    20642064                        _log.error("Error in the DirectoryMonitor", e);
    20652065                    }
     
    22672267                    // don't let one bad torrent kill the whole loop
    22682268                    addTorrent(name, null, !shouldAutoStart());
    2269                 } catch (Exception e) {
     2269                } catch (RuntimeException e) {
    22702270                    addMessage(_t("Error: Could not add the torrent {0}", name) + ": " + e);
    22712271                    _log.error("Unable to add the torrent " + name, e);
     
    22862286                    // don't let one bad torrent kill the whole loop
    22872287                    stopTorrent(name, true);
    2288                 } catch (Exception e) {
     2288                } catch (RuntimeException e) {
    22892289                    // don't bother with message
    22902290                }
     
    24682468            try {
    24692469                run2();
    2470             } catch (Exception e) {
     2470            } catch (RuntimeException e) {
    24712471                _log.error("Error starting", e);
    24722472            }
     
    25962596                    addMessageNoEscape(_t("Finished recheck of torrent {0}, unchanged", link));
    25972597                }
    2598             } catch (Exception e) {
     2598            } catch (IOException e) {
    25992599                _log.error("Error rechecking " + snark.getBaseName(), e);
    26002600                addMessage(_t("Error checking the torrent {0}", snark.getBaseName()) + ": " + e);
  • apps/i2psnark/java/src/org/klomp/snark/Storage.java

    r37a4fcb r51c5da3  
    749749                    rv = repl;
    750750                }
    751             } catch (Exception ex) {
     751            } catch (RuntimeException ex) {
    752752                ex.printStackTrace();
    753753            }
     
    14841484            }  // switch
    14851485          } // while
    1486       } catch (Exception e) {
     1486      } catch (RuntimeException e) {
    14871487          e.printStackTrace();
    14881488          error = true;
  • apps/i2psnark/java/src/org/klomp/snark/dht/NodeInfo.java

    r37a4fcb r51c5da3  
    226226            // assume dest matches, ignore it
    227227            return this.hash.equals(ni.hash) && nID.equals(ni.nID) && port == ni.port;
    228         } catch (Exception e) {
     228        } catch (RuntimeException e) {
    229229            return false;
    230230        }
  • apps/i2ptunnel/java/src/net/i2p/i2ptunnel/GunzipOutputStream.java

    r37a4fcb r51c5da3  
    106106        try {
    107107            return inf.getBytesRead();
    108         } catch (Exception e) {
     108        } catch (RuntimeException e) {
    109109            return 0;
    110110        }
     
    117117        try {
    118118            return inf.getBytesWritten();
    119         } catch (Exception e) {
     119        } catch (RuntimeException e) {
    120120            // possible NPE in some implementations
    121121            return 0;
     
    129129        try {
    130130            return inf.getRemaining();
    131         } catch (Exception e) {
     131        } catch (RuntimeException e) {
    132132            // possible NPE in some implementations
    133133            return 0;
     
    141141        try {
    142142            return inf.finished();
    143         } catch (Exception e) {
     143        } catch (RuntimeException e) {
    144144            // possible NPE in some implementations
    145145            return true;
  • apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnel.java

    r37a4fcb r51c5da3  
    18741874                result.fromByteArray(content);
    18751875                return result;
    1876             } catch (Exception ex) {
     1876            } catch (RuntimeException ex) {
    18771877                if (log.shouldLog(Log.INFO))
    18781878                    log.info("File is not a binary destination - trying base64");
  • apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnelClient.java

    r37a4fcb r51c5da3  
    44package net.i2p.i2ptunnel;
    55
     6import java.io.IOException;
    67import java.net.Socket;
    78import java.net.UnknownHostException;
     
    1112import java.util.StringTokenizer;
    1213
     14import net.i2p.I2PException;
    1315import net.i2p.client.streaming.I2PSocket;
    1416import net.i2p.client.streaming.I2PSocketAddress;
     
    123125            //t.start();
    124126            t.run();
    125         } catch (Exception ex) {
     127        } catch (IOException ex) {
     128            if (_log.shouldLog(Log.INFO))
     129                _log.info("Error connecting", ex);
     130            //l.log("Error connecting: " + ex.getMessage());
     131            closeSocket(s);
     132            if (i2ps != null) {
     133                synchronized (sockLock) {
     134                    mySockets.remove(sockLock);
     135                }
     136            }
     137        } catch (I2PException ex) {
    126138            if (_log.shouldLog(Log.INFO))
    127139                _log.info("Error connecting", ex);
  • apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnelHTTPServer.java

    r37a4fcb r51c5da3  
    743743            try {
    744744                return def.getTotalIn();
    745             } catch (Exception e) {
     745            } catch (RuntimeException e) {
    746746                // j2se 1.4.2_08 on linux is sometimes throwing an NPE in the getTotalIn() implementation
    747747                return 0;
     
    751751            try {
    752752                return def.getTotalOut();
    753             } catch (Exception e) {
     753            } catch (RuntimeException e) {
    754754                // j2se 1.4.2_08 on linux is sometimes throwing an NPE in the getTotalOut() implementation
    755755                return 0;
  • apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnelIRCClient.java

    r37a4fcb r51c5da3  
    99import java.util.StringTokenizer;
    1010
     11import net.i2p.I2PException;
    1112import net.i2p.client.streaming.I2PSocket;
    1213import net.i2p.client.streaming.I2PSocketAddress;
     
    143144            //out.start();
    144145            out.run();
    145         } catch (Exception ex) {
     146        } catch (IOException ex) {
    146147            // generally NoRouteToHostException
    147148            if (_log.shouldLog(Log.WARN))
     
    161162                }
    162163            }
     164        } catch (I2PException ex) {
     165            if (_log.shouldLog(Log.WARN))
     166                _log.warn("Error connecting", ex);
     167            //l.log("Error connecting: " + ex.getMessage());
     168            try {
     169                // Send a response so the user doesn't just see a disconnect
     170                // and blame his router or the network.
     171                String name = addr != null ? addr.getHostName() : "undefined";
     172                String msg = ":" + name + " 499 you :" + ex + "\r\n";
     173                s.getOutputStream().write(DataHelper.getUTF8(msg));
     174            } catch (IOException ioe) {}
     175            closeSocket(s);
     176            if (i2ps != null) {
     177                synchronized (sockLock) {
     178                    mySockets.remove(sockLock);
     179                }
     180            }
    163181        }
    164182
  • apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnelOutproxyRunner.java

    r37a4fcb r51c5da3  
    183183            if (_log.shouldLog(Log.WARN))
    184184                _log.warn("gnu?", ise);
    185         } catch (Exception e) {
     185        } catch (RuntimeException e) {
    186186            if (_log.shouldLog(Log.ERROR))
    187187                _log.error("Internal error", e);
  • apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnelRunner.java

    r37a4fcb r51c5da3  
    327327            if (_log.shouldLog(Log.WARN))
    328328                _log.warn("gnu?", ise);
    329         } catch (Exception e) {
     329        } catch (RuntimeException e) {
    330330            if (_log.shouldLog(Log.ERROR))
    331331                _log.error("Internal error", e);
  • apps/i2ptunnel/java/src/net/i2p/i2ptunnel/I2PTunnelServer.java

    r37a4fcb r51c5da3  
    518518            } catch(SocketTimeoutException ste) {
    519519                // ignored, we never set the timeout
    520             } catch (Exception e) {
     520            } catch (RuntimeException e) {
    521521                // streaming borkage
    522522                if (_log.shouldLog(Log.ERROR))
  • apps/i2ptunnel/java/src/net/i2p/i2ptunnel/TunnelController.java

    r37a4fcb r51c5da3  
    231231        try {
    232232            doStartTunnel();
    233         } catch (Exception e) {
     233        } catch (RuntimeException e) {
    234234            _log.error("Error starting the tunnel " + getName(), e);
    235235            log("Error starting the tunnel " + getName() + ": " + e.getMessage());
  • apps/i2ptunnel/java/src/net/i2p/i2ptunnel/irc/I2PTunnelDCCClient.java

    r37a4fcb r51c5da3  
    77import java.io.IOException;
    88
     9import net.i2p.I2PException;
    910import net.i2p.client.streaming.I2PSocket;
    1011import net.i2p.client.streaming.I2PSocketManager;
     
    8182            //t.start();
    8283            t.run();
    83         } catch (Exception ex) {
     84        } catch (IOException ex) {
     85            _log.error("Could not make DCC connection to " + _dest + ':' + _remotePort, ex);
     86            closeSocket(s);
     87            if (i2ps != null) {
     88                try { i2ps.close(); } catch (IOException ioe) {}
     89            }
     90            notifyEvent(CONNECT_STOP_EVENT, Integer.valueOf(getLocalPort()));
     91        } catch (I2PException ex) {
    8492            _log.error("Could not make DCC connection to " + _dest + ':' + _remotePort, ex);
    8593            closeSocket(s);
  • apps/i2ptunnel/java/src/net/i2p/i2ptunnel/ui/GeneralHelper.java

    r37a4fcb r51c5da3  
    1010
    1111import net.i2p.I2PAppContext;
     12import net.i2p.I2PException;
    1213import net.i2p.client.I2PClient;
    1314import net.i2p.crypto.SigType;
     
    342343                    if (rv != null)
    343344                        return rv;
    344                 } catch (Exception e) {}
     345                } catch (I2PException e) {
     346                } catch (IOException e) {}
    345347            }
    346348        }
  • apps/i2ptunnel/java/src/net/i2p/i2ptunnel/web/EditBean.java

    r37a4fcb r51c5da3  
    99 */
    1010
     11import java.io.IOException;
    1112import java.util.List;
    1213import java.util.Set;
     14
     15import net.i2p.I2PException;
    1316import net.i2p.crypto.SigType;
    1417import net.i2p.data.Base64;
     
    8891                Signature sig = _context.dsa().sign(spoof.getBytes("UTF-8"), privKey);
    8992                return Base64.encode(sig.getData());
    90             } catch (Exception e) {}
     93            } catch (I2PException e) {
     94            } catch (IOException e) {}
    9195        }
    9296        return "";
  • apps/i2ptunnel/java/src/net/i2p/i2ptunnel/web/IndexBean.java

    r37a4fcb r51c5da3  
    1010
    1111import java.io.File;
     12import java.io.IOException;
    1213import java.util.ArrayList;
    1314import java.util.List;
     
    1617
    1718import net.i2p.I2PAppContext;
     19import net.i2p.I2PException;
    1820import net.i2p.app.ClientAppManager;
    1921import net.i2p.app.Outproxy;
     
    267269            try {
    268270                buf.append(processAction()).append('\n');
    269             } catch (Exception e) {
     271            } catch (RuntimeException e) {
    270272                _log.log(Log.CRIT, "Error processing " + _action, e);
    271273                buf.append("Error: ").append(e.toString()).append('\n');
     
    973975        try {
    974976            pkf.createIfAbsent();
    975         } catch (Exception e) {
     977        } catch (I2PException e) {
     978            return "Create private key file failed: " + e;
     979        } catch (IOException e) {
    976980            return "Create private key file failed: " + e;
    977981        }
     
    10121016            pkf.write();
    10131017            newdest = pkf.getDestination();
    1014         } catch (Exception e) {
     1018        } catch (I2PException e) {
     1019            return "Modification failed: " + e;
     1020        } catch (IOException e) {
    10151021            return "Modification failed: " + e;
    10161022        }
  • apps/ministreaming/java/src/net/i2p/client/streaming/I2PSocketEepGet.java

    r37a4fcb r51c5da3  
    275275                }
    276276            }
    277         } catch (Exception e) {
     277        } catch (RuntimeException e) {
    278278            e.printStackTrace();
    279279            usage();
  • apps/ministreaming/java/src/net/i2p/client/streaming/I2PSocketManagerFactory.java

    r37a4fcb r51c5da3  
    196196            try {
    197197                client.createDestination(keyStream, getSigType(opts));
    198             } catch (Exception e) {
     198            } catch (I2PException e) {
     199                throw new I2PSessionException("Error creating keys", e);
     200            } catch (IOException e) {
    199201                throw new I2PSessionException("Error creating keys", e);
    200202            }
  • apps/routerconsole/java/src/net/i2p/router/web/CSSHelper.java

    r37a4fcb r51c5da3  
    108108                r = "" + MIN_REFRESH;
    109109            _context.router().saveConfig(PROP_REFRESH, r);
    110         } catch (Exception e) {
     110        } catch (RuntimeException e) {
    111111        }
    112112    }
     
    118118            if (Integer.parseInt(r) < MIN_REFRESH)
    119119                r = "" + MIN_REFRESH;
    120         } catch (Exception e) {
     120        } catch (RuntimeException e) {
    121121            r = "" + MIN_REFRESH;
    122122        }
  • apps/routerconsole/java/src/net/i2p/router/web/PluginStarter.java

    r37a4fcb r51c5da3  
    424424                            log.error("INFO: Adding translation plugin to classpath: " + f);
    425425                            added = true;
    426                         } catch (Exception e) {
     426                        } catch (RuntimeException e) {
    427427                            log.error("Plugin " + appName + " bad classpath element: " + f, e);
    428428                        }
     
    962962                if (log.shouldLog(Log.WARN))
    963963                    log.warn("INFO: Adding plugin to classpath: " + f);
    964             } catch (Exception e) {
     964            } catch (IOException e) {
    965965                log.error("Plugin client " + clientName + " bad classpath element: " + f, e);
    966966            }
  • apps/streaming/java/src/net/i2p/client/streaming/impl/I2PSocketManagerFull.java

    r37a4fcb r51c5da3  
    1010import java.net.Socket;
    1111import java.net.SocketTimeoutException;
     12import java.security.GeneralSecurityException;
    1213import java.util.HashSet;
    1314import java.util.List;
     
    260261                priv.writeBytes(keyStream);
    261262                keys[1].writeBytes(keyStream); // signing priv
    262             } catch (Exception e) {
     263            } catch (GeneralSecurityException e) {
     264                throw new I2PSessionException("Error creating keys", e);
     265            } catch (I2PException e) {
     266                throw new I2PSessionException("Error creating keys", e);
     267            } catch (IOException e) {
     268                throw new I2PSessionException("Error creating keys", e);
     269            } catch (RuntimeException e) {
    263270                throw new I2PSessionException("Error creating keys", e);
    264271            }
  • apps/susidns/src/java/src/i2p/susi/dns/AddressbookBean.java

    r37a4fcb r51c5da3  
    165165                        message = generateLoadMessage();
    166166                }
    167                 catch (Exception e) {
     167                catch (IOException e) {
    168168                        warn(e);
    169169                } finally {
     
    317317                                                save();
    318318                                                message += "<br>" + _t("Address book saved.");
    319                                         } catch (Exception e) {
     319                                        } catch (IOException e) {
    320320                                                warn(e);
    321321                                                message += "<br>" + _t("ERROR: Could not write addressbook file.");
  • apps/susidns/src/java/src/i2p/susi/dns/NamingServiceBean.java

    r37a4fcb r51c5da3  
    206206                        message = generateLoadMessage();
    207207                }
    208                 catch (Exception e) {
     208                catch (RuntimeException e) {
    209209                        warn(e);
    210210                }
  • apps/susimail/src/src/i2p/susi/util/Config.java

    r37a4fcb r51c5da3  
    9999                        iv = Config.class.getResourceAsStream("/susimail.properties");
    100100                        properties.load(iv);
    101                 } catch (Exception e) {
     101                } catch (IOException e) {
    102102                        Debug.debug(Debug.ERROR, "Could not open WEB-INF/classes/susimail.properties (possibly in jar), reason: " + e);
    103103                } finally {
     
    110110                                DataHelper.loadProps(config, cfg);
    111111                        }
    112                 } catch (Exception e) {
     112                } catch (IOException e) {
    113113                        Debug.debug(Debug.ERROR, "Could not open susimail.config, reason: " + e);
    114114                }
  • apps/susimail/src/src/i2p/susi/webmail/Mail.java

    r37a4fcb r51c5da3  
    128128                } catch (DecodingException de) {
    129129                        Debug.debug(Debug.ERROR, "Decode error: " + de);
    130                 } catch (Exception e) {
     130                } catch (RuntimeException e) {
    131131                        Debug.debug(Debug.ERROR, "Parse error: " + e);
    132132                }
  • apps/susimail/src/src/i2p/susi/webmail/WebMail.java

    r37a4fcb r51c5da3  
    615615                                                reason = _t("Charset \\''{0}\\'' not supported.", quoteHTML( mailPart.charset )) + br;
    616616                                        }
    617                                         catch (Exception e1) {
     617                                        catch (IOException e1) {
    618618                                                showBody = false;
    619619                                                reason += _t("Part ({0}) not shown, because of {1}", ident, e1.toString()) + br;
  • apps/susimail/src/src/i2p/susi/webmail/encoding/DecodingException.java

    r37a4fcb r51c5da3  
    2424package i2p.susi.webmail.encoding;
    2525
     26import java.io.IOException;
     27
    2628/**
    2729 * @author susi
    2830 */
    29 public class DecodingException extends Exception {
     31public class DecodingException extends IOException {
    3032        private static final long serialVersionUID = 1L;
    3133
  • apps/susimail/src/src/i2p/susi/webmail/encoding/HeaderLine.java

    r37a4fcb r51c5da3  
    234234                                                                                                lastCharWasQuoted = true;
    235235                                                                                                continue;
    236                                                                                         } catch (Exception e1) {
     236                                                                                        } catch (IOException e1) {
     237                                                                                                Debug.debug(Debug.ERROR, e1.toString());
     238                                                                                        } catch (RuntimeException e1) {
    237239                                                                                                Debug.debug(Debug.ERROR, e1.toString());
    238240                                                                                        }
  • apps/susimail/src/src/i2p/susi/webmail/smtp/SMTPClient.java

    r37a4fcb r51c5da3  
    211211                try {
    212212                        socket = new Socket( host, port );
    213                 } catch (Exception e) {
     213                } catch (IOException e) {
    214214                        error += _t("Cannot connect") + ": " + e.getMessage() + '\n';
    215215                        ok = false;
  • apps/systray/java/src/net/i2p/apps/systray/ConfigFile.java

    r37a4fcb r51c5da3  
    6363            fileInputStream = new FileInputStream(_configFile);
    6464            _properties.load(fileInputStream);
    65         } catch (Exception e) {
     65        } catch (IOException e) {
    6666            rv = false;
    6767        } finally {
     
    8080            fileOutputStream = new FileOutputStream(_configFile);
    8181            _properties.store(fileOutputStream, null);
    82         } catch (Exception e) {
     82        } catch (IOException e) {
    8383            rv = false;
    8484        } finally {
  • apps/systray/java/src/net/i2p/apps/systray/SysTray.java

    r37a4fcb r51c5da3  
    8989                if (urlLauncher.openUrl(url))
    9090                    return;
    91             } catch (Exception ex) {
     91            } catch (RuntimeException ex) {
    9292                // Fall through.
    9393            }
     
    9696                if (urlLauncher.openUrl(url, _browserString))
    9797                    return;
    98             } catch (Exception ex) {
     98            } catch (RuntimeException ex) {
    9999                // Fall through.
    100100            }
  • apps/systray/java/src/net/i2p/apps/systray/UrlLauncher.java

    r37a4fcb r51c5da3  
    150150                } catch (InterruptedException ie) {}
    151151                return true;
    152             } catch (Exception e) {}
     152            } catch (IOException e) {}
    153153            if (System.currentTimeMillis() > done)
    154154                break;
     
    172172     *             <code>false</code>.
    173173     *
    174      * @throws Exception
     174     * @throws IOException
    175175     */
    176     public boolean openUrl(String url) throws Exception {
     176    public boolean openUrl(String url) throws IOException {
    177177        waitForServer(url);
    178178        if (validateUrlFormat(url)) {
     
    218218                    }
    219219                    foo.delete();
    220                 } catch (Exception e) {
     220                } catch (IOException e) {
    221221                    // Defaults to IE.
    222222                } finally {
     
    247247     *                 otherwise <code>false</code>.
    248248     *
    249      * @throws Exception
    250      */
    251     public boolean openUrl(String url, String browser) throws Exception {
     249     * @throws IOException
     250     */
     251    public boolean openUrl(String url, String browser) throws IOException {
    252252        waitForServer(url);
    253253        if (validateUrlFormat(url)) {
     
    290290                openUrl(url);
    291291                changeState(STOPPED);
    292             } catch (Exception e) {
     292            } catch (IOException e) {
    293293                changeState(CRASHED, e);
    294294            }
     
    355355            else
    356356                launcher.openUrl("http://127.0.0.1:7657/index.jsp");
    357          } catch (Exception e) {}
     357         } catch (IOException e) {}
    358358    }
    359359}
  • core/java/src/net/i2p/client/impl/I2PSessionImpl.java

    r37a4fcb r51c5da3  
    863863                                _log.info("Message availability notification for " + msgId.intValue() + " took "
    864864                                           + duration + " to " + _sessionListener);
    865                         } catch (Exception e) {
     865                        } catch (RuntimeException e) {
    866866                            _log.log(Log.CRIT, "Error notifying app of message availability", e);
    867867                        }
  • core/java/src/net/i2p/client/impl/I2PSessionMuxedImpl.java

    r37a4fcb r51c5da3  
    400400                    _demultiplexer.messageAvailable(I2PSessionMuxedImpl.this,
    401401                        msg.id, msg.size, msg.proto, msg.fromPort, msg.toPort);
    402                 } catch (Exception e) {
     402                } catch (RuntimeException e) {
    403403                    _log.error("Error notifying app of message availability", e);
    404404                }
  • core/java/src/net/i2p/client/naming/SingleFileNamingService.java

    r37a4fcb r51c5da3  
    9292            if (key != null)
    9393                return lookupBase64(key);
    94         } catch (Exception ioe) {
     94        } catch (IOException ioe) {
    9595            if (_file.exists())
    9696                _log.error("Error loading hosts file " + _file, ioe);
     
    124124            }
    125125            return null;
    126         } catch (Exception ioe) {
     126        } catch (IOException ioe) {
    127127            if (_file.exists())
    128128                _log.error("Error loading hosts file " + _file, ioe);
  • core/java/src/net/i2p/crypto/DSAEngine.java

    r37a4fcb r51c5da3  
    258258            }
    259259            return ok;
    260         } catch (Exception e) {
     260        } catch (RuntimeException e) {
    261261            _log.log(Log.CRIT, "Error verifying the signature", e);
    262262            return false;
  • core/java/src/net/i2p/crypto/ECConstants.java

    r37a4fcb r51c5da3  
    44import java.math.BigInteger;
    55import java.security.AlgorithmParameters;
     6import java.security.GeneralSecurityException;
    67import java.security.Provider;
    78import java.security.Security;
     
    279280            try {
    280281                ap = AlgorithmParameters.getInstance("EC");
    281             } catch (Exception e) {
     282            } catch (GeneralSecurityException e) {
    282283                if (BC_AVAILABLE) {
    283284                    log("Named curve " + name + " is not available, trying BC", e);
     
    293294            log("Named curve " + name + " loaded");
    294295            return rv;
    295         } catch (Exception e) {
     296        } catch (GeneralSecurityException e) {
    296297            log("Named curve " + name + " is not available", e);
    297298            return null;
  • core/java/src/net/i2p/crypto/ElGamalAESEngine.java

    r37a4fcb r51c5da3  
    328328            int cur = 0;
    329329            long numTags = DataHelper.fromLong(decrypted, cur, 2);
    330             if ((numTags < 0) || (numTags > MAX_TAGS_RECEIVED)) throw new Exception("Invalid number of session tags");
     330            if ((numTags < 0) || (numTags > MAX_TAGS_RECEIVED)) throw new IllegalArgumentException("Invalid number of session tags");
    331331            if (numTags > 0) tags = new ArrayList<SessionTag>((int)numTags);
    332332            cur += 2;
    333333            //_log.debug("# tags: " + numTags);
    334334            if (numTags * SessionTag.BYTE_LENGTH > decrypted.length - 2) {
    335                 throw new Exception("# tags: " + numTags + " is too many for " + (decrypted.length - 2));
     335                throw new IllegalArgumentException("# tags: " + numTags + " is too many for " + (decrypted.length - 2));
    336336            }
    337337            for (int i = 0; i < numTags; i++) {
     
    345345            //_log.debug("len: " + len);
    346346            if ((len < 0) || (len > decrypted.length - cur - Hash.HASH_LENGTH - 1))
    347                 throw new Exception("Invalid size of payload (" + len + ", remaining " + (decrypted.length-cur) +")");
     347                throw new IllegalArgumentException("Invalid size of payload (" + len + ", remaining " + (decrypted.length-cur) +")");
    348348            //byte hashval[] = new byte[Hash.HASH_LENGTH];
    349349            //System.arraycopy(decrypted, cur, hashval, 0, Hash.HASH_LENGTH);
     
    380380            }
    381381
    382             throw new Exception("Hash does not match");
    383         } catch (Exception e) {
     382            throw new RuntimeException("Hash does not match");
     383        } catch (RuntimeException e) {
    384384            if (_log.shouldLog(Log.WARN)) _log.warn("Unable to decrypt AES block", e);
    385385            return null;
  • core/java/src/net/i2p/crypto/EncType.java

    r37a4fcb r51c5da3  
    109109        try {
    110110            getParams();
    111         } catch (Exception e) {
     111        } catch (InvalidParameterSpecException e) {
    112112            return false;
    113113        }
  • core/java/src/net/i2p/crypto/KeyGenerator.java

    r37a4fcb r51c5da3  
    344344        try {
    345345             main2(args);
    346         } catch (Exception e) {
     346        } catch (RuntimeException e) {
    347347             e.printStackTrace();
    348348        }
     
    382382                    System.out.println("Testing " + type);
    383383                    testSig(type, runs);
    384                 } catch (Exception e) {
     384                } catch (GeneralSecurityException e) {
    385385                    System.out.println("error testing " + type);
    386386                    e.printStackTrace();
  • core/java/src/net/i2p/crypto/KeyStoreUtil.java

    r37a4fcb r51c5da3  
    9999                        ks.load(null, DEFAULT_KEYSTORE_PASSWORD.toCharArray());
    100100                        success = addCerts(new File(System.getProperty("java.home"), "etc/security/cacerts"), ks) > 0;
    101                     } catch (Exception e) {}
     101                    } catch (IOException e) {
     102                    } catch (GeneralSecurityException e) {}
    102103                } else {
    103104                    success = loadCerts(new File(System.getProperty("java.home"), "etc/security/cacerts.bks"), ks);
     
    114115                // must be initted
    115116                ks.load(null, DEFAULT_KEYSTORE_PASSWORD.toCharArray());
    116             } catch (Exception e) {}
     117            } catch (IOException e) {
     118            } catch (GeneralSecurityException e) {}
    117119            error("All key store loads failed, will only load local certificates", null);
    118120        }
     
    141143                // not clear if null is allowed for password
    142144                ks.load(null, DEFAULT_KEYSTORE_PASSWORD.toCharArray());
    143             } catch (Exception foo) {}
     145            } catch (IOException foo) {
     146            } catch (GeneralSecurityException e) {}
    144147            return false;
    145148        } catch (IOException ioe) {
     
    147150            try {
    148151                ks.load(null, DEFAULT_KEYSTORE_PASSWORD.toCharArray());
    149             } catch (Exception foo) {}
     152            } catch (IOException foo) {
     153            } catch (GeneralSecurityException e) {}
    150154            return false;
    151155        } finally {
     
    172176                }
    173177            }
    174         } catch (Exception foo) {}
     178        } catch (GeneralSecurityException e) {}
    175179        return count;
    176180    }
     
    317321                    return false;
    318322                }
    319             } catch (Exception e) {
     323            } catch (IOException e) {
     324                error("Not overwriting key \"" + alias + "\", already exists in " + ks, e);
     325                return false;
     326            } catch (GeneralSecurityException e) {
    320327                error("Not overwriting key \"" + alias + "\", already exists in " + ks, e);
    321328                return false;
     
    355362                    if (!success)
    356363                        error("Key gen failed to get private key", null);
    357                 } catch (Exception e) {
     364                } catch (IOException e) {
     365                    error("Key gen failed to get private key", e);
     366                    success = false;
     367                } catch (GeneralSecurityException e) {
    358368                    error("Key gen failed to get private key", e);
    359369                    success = false;
  • core/java/src/net/i2p/crypto/SigType.java

    r37a4fcb r51c5da3  
    11package net.i2p.crypto;
    22
     3import java.security.GeneralSecurityException;
    34import java.security.MessageDigest;
    45import java.security.NoSuchAlgorithmException;
     
    216217            getDigestInstance();
    217218            getHashInstance();
    218         } catch (Exception e) {
     219        } catch (GeneralSecurityException e) {
     220            return false;
     221        } catch (RuntimeException e) {
    219222            return false;
    220223        }
  • core/java/src/net/i2p/crypto/TrustedUpdate.java

    r37a4fcb r51c5da3  
    345345            System.out.println("Public key written to: " + publicKeyFile);
    346346            System.out.println("\r\nPublic key: " + signingPublicKey.toBase64() + "\r\n");
    347         } catch (Exception e) {
     347        } catch (IOException e) {
     348            System.err.println("Error writing keys:");
     349            e.printStackTrace();
     350            return false;
     351        } catch (DataFormatException e) {
    348352            System.err.println("Error writing keys:");
    349353            e.printStackTrace();
     
    759763            signature = _context.dsa().sign(bytesToSignInputStream, signingPrivateKey);
    760764
    761         } catch (Exception e) {
     765        } catch (IOException e) {
    762766            if (_log.shouldLog(Log.ERROR))
    763767                _log.error("Error signing", e);
  • core/java/src/net/i2p/crypto/eddsa/math/GroupElement.java

    r37a4fcb r51c5da3  
    723723            try {
    724724                ge = ge.toRep(this.repr);
    725             } catch (Exception e) {
     725            } catch (RuntimeException e) {
    726726                return false;
    727727            }
  • core/java/src/net/i2p/data/PrivateKeyFile.java

    r37a4fcb r51c5da3  
    1010import java.io.OutputStream;
    1111import java.security.GeneralSecurityException;
     12import java.security.NoSuchAlgorithmException;
    1213import java.util.Locale;
    1314import java.util.Map;
     
    175176                verifySignature(pkf.getDestination());
    176177            }
    177         } catch (Exception e) {
     178        } catch (I2PException e) {
     179            e.printStackTrace();
     180            System.exit(1);
     181        } catch (IOException e) {
    178182            e.printStackTrace();
    179183            System.exit(1);
     
    359363        try {
    360364            hc = HashCash.mintCash(resource, effort);
    361         } catch (Exception e) {
     365        } catch (NoSuchAlgorithmException e) {
    362366            return null;
    363367        }
     
    392396        try {
    393397            d2 = pkf2.getDestination();
    394         } catch (Exception e) {
     398        } catch (I2PException e) {
     399            return null;
     400        } catch (IOException e) {
    395401            return null;
    396402        }
     
    501507        try {
    502508            low = HashCash.estimateTime(hashEffort);
    503         } catch (Exception e) {}
     509        } catch (NoSuchAlgorithmException e) {}
    504510        // takes a lot longer than the estimate usually...
    505511        // maybe because the resource string is much longer than used in the estimate?
  • core/java/src/net/i2p/data/i2cp/I2CPMessageReader.java

    r37a4fcb r51c5da3  
    161161            try {
    162162                run2();
    163             } catch (Exception e) {
     163            } catch (RuntimeException e) {
    164164                _log.log(Log.CRIT, "Uncaught I2CP error", e);
    165165                _listener.readError(I2CPMessageReader.this, e);
     
    194194                        // ooms seen here... maybe log and keep going?
    195195                        throw oom;
    196                     } catch (Exception e) {
     196                    } catch (RuntimeException e) {
    197197                        _log.log(Log.CRIT, "Unhandled error reading I2CP stream", e);
    198198                        _listener.disconnected(I2CPMessageReader.this);
  • core/java/src/net/i2p/stat/BufferedStatLog.java

    r37a4fcb r51c5da3  
    146146                                _log.debug("writing " + writeStart +"->"+ writeEnd);
    147147                            writeEvents(writeStart, writeEnd);
    148                         } catch (Exception e) {
     148                        } catch (RuntimeException e) {
    149149                            _log.error("error writing " + writeStart +"->"+ writeEnd, e);
    150150                        }
  • core/java/src/net/i2p/util/EepGet.java

    r37a4fcb r51c5da3  
    274274              }  // switch
    275275            } // while
    276         } catch (Exception e) {
     276        } catch (RuntimeException e) {
    277277            e.printStackTrace();
    278278            error = true;
  • core/java/src/net/i2p/util/EepHead.java

    r37a4fcb r51c5da3  
    110110              }  // switch
    111111            } // while
    112         } catch (Exception e) {
     112        } catch (RuntimeException e) {
    113113            e.printStackTrace();
    114114            error = true;
  • core/java/src/net/i2p/util/FortunaRandomSource.java

    r37a4fcb r51c5da3  
    1212import gnu.crypto.prng.AsyncFortunaStandalone;
    1313
     14import java.io.IOException;
    1415import java.security.SecureRandom;
    1516
     
    267268                _fortuna.addRandomBytes(data, offset, len);
    268269            }
    269         } catch (Exception e) {
     270        } catch (RuntimeException e) {
    270271            // AIOOBE seen, root cause unknown, ticket #1576
    271272            Log log = _context.logManager().getLog(FortunaRandomSource.class);
     
    291292                System.out.write(buf);
    292293            }
    293         } catch (Exception e) { e.printStackTrace(); }
     294        } catch (IOException e) { e.printStackTrace(); }
    294295    }
    295296}
  • core/java/src/net/i2p/util/LogWriterBase.java

    r37a4fcb r51c5da3  
    7676                    rereadConfig();
    7777            }
    78         } catch (Exception e) {
     78        } catch (RuntimeException e) {
    7979            System.err.println("Error writing the log: " + e);
    8080            e.printStackTrace();
  • core/java/src/net/i2p/util/PartialEepGet.java

    r37a4fcb r51c5da3  
    108108              }  // switch
    109109            } // while
    110         } catch (Exception e) {
     110        } catch (RuntimeException e) {
    111111            e.printStackTrace();
    112112            error = true;
  • core/java/src/net/i2p/util/ResettableGZIPInputStream.java

    r37a4fcb r51c5da3  
    125125        try {
    126126            return inf.getBytesRead();
    127         } catch (Exception e) {
     127        } catch (RuntimeException e) {
    128128            return 0;
    129129        }
     
    137137        try {
    138138            return inf.getBytesWritten();
    139         } catch (Exception e) {
     139        } catch (RuntimeException e) {
    140140            // possible NPE in some implementations
    141141            return 0;
     
    150150        try {
    151151            return inf.getRemaining();
    152         } catch (Exception e) {
     152        } catch (RuntimeException e) {
    153153            // possible NPE in some implementations
    154154            return 0;
     
    163163        try {
    164164            return inf.finished();
    165         } catch (Exception e) {
     165        } catch (RuntimeException e) {
    166166            // possible NPE in some implementations
    167167            return true;
  • core/java/src/net/i2p/util/SSLEepGet.java

    r37a4fcb r51c5da3  
    181181              }  // switch
    182182            } // while
    183         } catch (Exception e) {
     183        } catch (RuntimeException e) {
    184184            e.printStackTrace();
    185185            error = true;
     
    371371            try {
    372372                cert.checkValidity();
    373             } catch (Exception e) {
     373            } catch (GeneralSecurityException e) {
    374374                System.out.println("      WARNING: Certificate is not currently valid, it cannot be used");
    375375            }
  • core/java/src/net/i2p/util/ShellCommand.java

    r37a4fcb r51c5da3  
    440440                try {
    441441                    process.waitFor();
    442                 } catch (Exception e) {
     442                } catch (InterruptedException e) {
    443443                    if (DEBUG) {
    444444                        System.out.println("ShellCommand exception waiting for \"" + name + '\"');
     
    458458                    return false;
    459459            }
    460         } catch (Exception e) {
     460        } catch (IOException e) {
    461461            // probably IOException, file not found from exec()
    462462            if (DEBUG) {
  • core/java/src/net/metanotion/io/block/BlockFile.java

    r37a4fcb r51c5da3  
    148148                        bf.close();
    149149                        raif.close();
    150                 } catch (Exception e) {
     150                } catch (IOException e) {
    151151                        e.printStackTrace();
    152152                }
  • installer/java/src/net/i2p/installer/Exec.java

    r37a4fcb r51c5da3  
    2222            Runtime.getRuntime().halt(0);
    2323
    24         } catch (Exception e) {
     24        } catch (RuntimeException e) {
    2525            e.printStackTrace();
    2626        }
  • installer/tools/java/src/net/i2p/router/networkdb/kademlia/BundleRouterInfos.java

    r37a4fcb r51c5da3  
    110110            ri.readBytes(fis, true);  // true = verify sig on read
    111111            me = ri.getIdentity().getHash();
    112         } catch (Exception e) {
     112        } catch (RuntimeException e) {
    113113            //System.out.println("Can't determine our identity");
    114114        } finally {
     
    210210                else
    211211                    System.out.println("Failed copy of " + file + " to " + toDir);
    212             } catch (Exception e) {
     212            } catch (RuntimeException e) {
    213213                System.out.println("Skipping bad " + file);
    214214            } finally {
  • router/java/src/net/i2p/data/i2np/GarlicClove.java

    r37a4fcb r51c5da3  
    159159                throw new RuntimeException("foo, returned 0 length");
    160160            out.write(m);
    161         } catch (Exception e) {
     161        } catch (RuntimeException e) {
    162162            throw new DataFormatException("Unable to write the clove: " + _msg + " to " + out, e);
    163163        }
     
    188188            System.arraycopy(m, 0, rv, offset, m.length);
    189189            offset += m.length;
    190         } catch (Exception e) { throw new RuntimeException("Unable to write: " + _msg + ": " + e.getMessage()); }
     190        } catch (RuntimeException e) { throw new RuntimeException("Unable to write: " + _msg + ": " + e.getMessage()); }
    191191        DataHelper.toLong(rv, offset, 4, _cloveId);
    192192        offset += 4;
  • router/java/src/net/i2p/data/i2np/I2NPMessageHandler.java

    r37a4fcb r51c5da3  
    6060            } catch (I2NPMessageException ime) {
    6161                throw ime;
    62             } catch (Exception e) {
     62            } catch (RuntimeException e) {
    6363                if (_log.shouldLog(Log.WARN))
    6464                    _log.warn("Error reading the stream", e);
     
    132132        } catch (I2NPMessageException ime) {
    133133            throw ime;
    134         } catch (Exception e) {
     134        } catch (RuntimeException e) {
    135135            if (_log.shouldLog(Log.WARN))
    136136                _log.warn("Error reading the stream", e);
  • router/java/src/net/i2p/data/i2np/I2NPMessageReader.java

    r37a4fcb r51c5da3  
    164164                        _listener.disconnected(I2NPMessageReader.this);
    165165                        cancelRunner();
    166                     } catch (Exception e) {
     166                    } catch (RuntimeException e) {
    167167                        _log.log(Log.CRIT, "error reading msg!", e);
    168168                        _listener.readError(I2NPMessageReader.this, e);
  • router/java/src/net/i2p/data/router/RouterInfo.java

    r37a4fcb r51c5da3  
    725725                     fail = true;
    726726                  }
    727              } catch (Exception e) {
     727             } catch (IOException e) {
     728                 System.err.println("Error reading " + args[i] + ": " + e);
     729                 fail = true;
     730             } catch (DataFormatException e) {
    728731                 System.err.println("Error reading " + args[i] + ": " + e);
    729732                 fail = true;
  • router/java/src/net/i2p/router/InNetMessagePool.java

    r37a4fcb r51c5da3  
    435435                } catch (OutOfMemoryError oome) {
    436436                    throw oome;
    437                 } catch (Exception e) {
     437                } catch (RuntimeException e) {
    438438                    if (_log.shouldLog(Log.CRIT))
    439439                        _log.log(Log.CRIT, "Error in the tunnel gateway dispatcher", e);
     
    468468                } catch (OutOfMemoryError oome) {
    469469                    throw oome;
    470                 } catch (Exception e) {
     470                } catch (RuntimeException e) {
    471471                    if (_log.shouldLog(Log.CRIT))
    472472                        _log.log(Log.CRIT, "Error in the tunnel data dispatcher", e);
  • router/java/src/net/i2p/router/Router.java

    r37a4fcb r51c5da3  
    1010
    1111import java.io.File;
     12import java.io.IOException;
    1213import java.util.Collection;
    1314import java.util.Collections;
     
    649650                //    System.err.println("WARNING: Configuration file " + filename + " does not exist");
    650651            }
    651         } catch (Exception ioe) {
     652        } catch (IOException ioe) {
    652653            if (log != null)
    653654                log.error("Error loading the router configuration from " + filename, ioe);
     
    13521353                DataHelper.storeProps(ordered, new File(_configFilename));
    13531354            }
    1354         } catch (Exception ioe) {
     1355        } catch (IOException ioe) {
    13551356                // warning, _log will be null when called from constructor
    13561357                if (_log != null)
  • router/java/src/net/i2p/router/dummy/VMCommSystem.java

    r37a4fcb r51c5da3  
    99import net.i2p.data.Hash;
    1010import net.i2p.data.i2np.I2NPMessage;
     11import net.i2p.data.i2np.I2NPMessageException;
    1112import net.i2p.data.i2np.I2NPMessageHandler;
    1213import net.i2p.router.CommSystemFacade;
     
    122123
    123124                _ctx.inNetMessagePool().add(msg, null, _from);
    124             } catch (Exception e) {
     125            } catch (I2NPMessageException e) {
    125126                _log.error("Error reading/formatting a VM message? Something is not right...", e);
    126127            }
  • router/java/src/net/i2p/router/networkdb/kademlia/PersistentDataStore.java

    r37a4fcb r51c5da3  
    544544                        _log.info("Unable to read the router reference in " + _routerFile.getName(), ioe);
    545545                    corrupt = true;
    546                 } catch (Exception e) {
     546                } catch (RuntimeException e) {
    547547                    // key certificate problems, etc., don't let one bad RI kill the whole thing
    548548                    if (_log.shouldLog(Log.INFO))
     
    667667            Hash h = Hash.create(b);
    668668            return h;
    669         } catch (Exception e) {
     669        } catch (RuntimeException e) {
    670670            // static
    671671            //_log.warn("Unable to fetch the key from [" + filename + "]", e);
  • router/java/src/net/i2p/router/networkdb/reseed/Reseeder.java

    r37a4fcb r51c5da3  
    627627                                System.out.println();
    628628                        }
    629                     } catch (Exception e) {
     629                    } catch (RuntimeException e) {
    630630                        if (_log.shouldLog(Log.INFO))
    631631                            _log.info("Failed fetch", e);
  • router/java/src/net/i2p/router/peermanager/ProfilePersistenceHelper.java

    r37a4fcb r51c5da3  
    302302           
    303303            return profile;
    304         } catch (Exception e) {
     304        } catch (IOException e) {
    305305            if (_log.shouldLog(Log.WARN))
    306306                _log.warn("Error loading properties from " + file.getAbsolutePath(), e);
     
    370370            Hash h = Hash.create(b);
    371371            return h;
    372         } catch (Exception dfe) {
     372        } catch (RuntimeException dfe) {
    373373            _log.warn("Invalid base64 [" + key + "]", dfe);
    374374            return null;
  • router/java/src/net/i2p/router/startup/RebuildRouterInfoJob.java

    r37a4fcb r51c5da3  
    9999                    info = new RouterInfo();
    100100                    info.setIdentity(kd.routerIdentity);
    101                 } catch (Exception e) {
     101                } catch (DataFormatException e) {
     102                    _log.log(Log.CRIT, "Error reading in the key data from " + keyFile.getAbsolutePath(), e);
     103                    keyFile.delete();
     104                    keyFile2.delete();
     105                    rebuildRouterInfo(alreadyRunning);
     106                    return;
     107                } catch (IOException e) {
    102108                    _log.log(Log.CRIT, "Error reading in the key data from " + keyFile.getAbsolutePath(), e);
    103109                    keyFile.delete();
  • router/java/src/net/i2p/router/transport/UPnP.java

    r37a4fcb r51c5da3  
    477477                try {
    478478                        table = serv.getServiceStateTable();
    479                 } catch (Exception e) {
     479                } catch (RuntimeException e) {
    480480                        // getSCPDNode() returns null,
    481481                        // NPE at org.cybergarage.upnp.Service.getServiceStateTable(Service.java:526)
  • router/java/src/net/i2p/router/transport/UPnPManager.java

    r37a4fcb r51c5da3  
    8989                if (_log.shouldLog(Log.INFO))
    9090                    _log.info("UPnP runPlugin took " + (_context.clock().now() - b));
    91             } catch (Exception e) {
     91            } catch (RuntimeException e) {
    9292                // NPE in UPnP (ticket #728), can't let it bring us down
    9393                if (!_errorLogged) {
  • router/java/src/net/i2p/router/transport/ntcp/EventPumper.java

    r37a4fcb r51c5da3  
    336336                            key.cancel();
    337337                        }
    338                     } catch (Exception ke) {
     338                    } catch (IOException ke) {
    339339                        _log.error("Error closing key " + key + " on pumper shutdown", ke);
    340340                    }
     
    345345                    _log.debug("Closing down the event pumper with no selection keys remaining");
    346346            }
    347         } catch (Exception e) {
     347        } catch (IOException e) {
    348348            _log.error("Error closing keys on pumper shutdown", e);
    349349        }
  • router/java/src/net/i2p/router/transport/ntcp/NTCPConnection.java

    r37a4fcb r51c5da3  
    464464            if (_consecutiveBacklog > 10) { // waaay too backlogged
    465465                boolean wantsWrite = false;
    466                 try { wantsWrite = ( (_conKey.interestOps() & SelectionKey.OP_WRITE) != 0); } catch (Exception e) {}
     466                try { wantsWrite = ( (_conKey.interestOps() & SelectionKey.OP_WRITE) != 0); } catch (RuntimeException e) {}
    467467                if (_log.shouldLog(Log.WARN)) {
    468468                    int blocks = _writeBufs.size();
     
    522522                          + ", currentOut set? " + currentOutboundSet
    523523                          + ", writeBufs: " + writeBufs + " on " + toString());
    524                 } catch (Exception e) {}  // java.nio.channels.CancelledKeyException
     524                } catch (RuntimeException e) {}  // java.nio.channels.CancelledKeyException
    525525            }
    526526            //_context.statManager().addRateData("ntcp.sendBacklogTime", queueTime);
  • router/java/src/net/i2p/router/transport/udp/ACKSender.java

    r37a4fcb r51c5da3  
    149149                            // bulk operations may throw an exception
    150150                            _peersToACK.addAll(notYet);
    151                         } catch (Exception e) {}
     151                        } catch (RuntimeException e) {}
    152152                        if (_log.shouldLog(Log.DEBUG))
    153153                            _log.debug("sleeping, pending size = " + notYet.size());
  • router/java/src/net/i2p/router/transport/udp/MessageReceiver.java

    r37a4fcb r51c5da3  
    244244            _context.messageHistory().droppedInboundMessage(state.getMessageId(), state.getFrom(), "error: " + ime.toString() + ": " + state.toString());
    245245            return null;
    246         } catch (Exception e) {
     246        } catch (RuntimeException e) {
    247247            // e.g. AIOOBE
    248248            if (_log.shouldLog(Log.WARN))
  • router/java/src/net/i2p/router/transport/udp/PacketHandler.java

    r37a4fcb r51c5da3  
    216216                    handlePacket(_reader, packet);
    217217                    _state = 6;
    218                 } catch (Exception e) {
     218                } catch (RuntimeException e) {
    219219                    _state = 7;
    220220                    if (_log.shouldLog(Log.ERROR))
  • router/java/src/net/i2p/router/transport/udp/PacketPusher.java

    r37a4fcb r51c5da3  
    4444                    }
    4545                }
    46             } catch (Exception e) {
     46            } catch (RuntimeException e) {
    4747                _log.error("SSU Output Queue Error", e);
    4848            }
  • router/java/src/net/i2p/router/tunnel/pool/BuildHandler.java

    r37a4fcb r51c5da3  
    214214            try {
    215215                handleInboundRequest();
    216             } catch (Exception e) {
     216            } catch (RuntimeException e) {
    217217                _log.log(Log.CRIT, "B0rked in the tunnel handler", e);
    218218            }
Note: See TracChangeset for help on using the changeset viewer.