Mercurial > 510Connectbot
view src/net/sourceforge/jsocks/SocksException.java @ 290:9ae4ed7bb523 ganymed
start conversion from trilead to ganymed
author | Carl Byington <carl@five-ten-sg.com> |
---|---|
date | Fri, 18 Jul 2014 20:34:21 -0700 |
parents | 0ce5cc452d02 |
children | 205ee2873330 |
line wrap: on
line source
package net.sourceforge.jsocks; /** Exception thrown by various socks classes to indicate errors with protocol or unsuccessful server responses. */ public class SocksException extends java.io.IOException { private static final long serialVersionUID = 6141184566248512277L; /** Construct a SocksException with given error code. <p> Tries to look up message which corresponds to this error code. @param errCode Error code for this exception. */ public SocksException(int errCode) { this.errCode = errCode; if ((errCode >> 16) == 0) { //Server reply error message errString = errCode <= serverReplyMessage.length ? serverReplyMessage[errCode] : UNASSIGNED_ERROR_MESSAGE; } else { //Local error errCode = (errCode >> 16) - 1; errString = errCode <= localErrorMessage.length ? localErrorMessage[errCode] : UNASSIGNED_ERROR_MESSAGE; } } /** Constructs a SocksException with given error code and message. @param errCode Error code. @param errString Error Message. */ public SocksException(int errCode, String errString) { this.errCode = errCode; this.errString = errString; } /** Get the error code associated with this exception. @return Error code associated with this exception. */ public int getErrorCode() { return errCode; } /** Get human readable representation of this exception. @return String represntation of this exception. */ public String toString() { return errString; } static final String UNASSIGNED_ERROR_MESSAGE = "Unknown error message"; static final String serverReplyMessage[] = { "Succeeded", "General SOCKS server failure", "Connection not allowed by ruleset", "Network unreachable", "Host unreachable", "Connection refused", "TTL expired", "Command not supported", "Address type not supported" }; static final String localErrorMessage[] = { "SOCKS server not specified", "Unable to contact SOCKS server", "IO error", "None of Authentication methods are supported", "Authentication failed", "General SOCKS fault" }; String errString; public int errCode; }//End of SocksException class