Author: nextgens Date: 2006-04-14 14:06:50 +0000 (Fri, 14 Apr 2006) New Revision: 8552
Added: trunk/freenet/src/freenet/node/fcp/ShutdownMessage.java Modified: trunk/freenet/src/freenet/node/TextModeClientInterface.java trunk/freenet/src/freenet/node/Version.java trunk/freenet/src/freenet/node/fcp/FCPMessage.java Log: 646: resolve https://bugs.freenetproject.org/view.php?id=81 New FCP message : "Shutdown" it returns a ProtocolError(17) if it works Maybe we should password it or add a new config. option to disable it :/ Modified: trunk/freenet/src/freenet/node/TextModeClientInterface.java =================================================================== --- trunk/freenet/src/freenet/node/TextModeClientInterface.java 2006-04-14 13:23:58 UTC (rev 8551) +++ trunk/freenet/src/freenet/node/TextModeClientInterface.java 2006-04-14 14:06:50 UTC (rev 8552) @@ -151,7 +151,8 @@ // sb.append("SUBFILE:<filename> - append all data received from subscriptions to a file, rather than sending it to stdout.\r\n"); // sb.append("SAY:<text> - send text to the last created/pushed stream\r\n"); sb.append("STATUS - display some status information on the node including its reference and connections.\r\n"); - sb.append("QUIT - exit the program\r\n"); + sb.append("SHUTDOWN - exit the program\r\n"); + sb.append("QUIT - close the socket\r\n"); if(n.testnetEnabled) { sb.append("WARNING: TESTNET MODE ENABLED. YOU HAVE NO ANONYMITY.\r\n"); } Modified: trunk/freenet/src/freenet/node/Version.java =================================================================== --- trunk/freenet/src/freenet/node/Version.java 2006-04-14 13:23:58 UTC (rev 8551) +++ trunk/freenet/src/freenet/node/Version.java 2006-04-14 14:06:50 UTC (rev 8552) @@ -20,7 +20,7 @@ public static final String protocolVersion = "1.0"; /** The build number of the current revision */ - private static final int buildNumber = 645; + private static final int buildNumber = 646; /** Oldest build of Fred we will talk to */ private static final int lastGoodBuild = 591; Modified: trunk/freenet/src/freenet/node/fcp/FCPMessage.java =================================================================== --- trunk/freenet/src/freenet/node/fcp/FCPMessage.java 2006-04-14 13:23:58 UTC (rev 8551) +++ trunk/freenet/src/freenet/node/fcp/FCPMessage.java 2006-04-14 14:06:50 UTC (rev 8552) @@ -54,6 +54,8 @@ return new SubscribeUSKMessage(fs); if(name.equals(GetRequestStatusMessage.name)) return new GetRequestStatusMessage(fs); + if(name.equals(ShutdownMessage.name)) + return new ShutdownMessage(); if(name.equals("Void")) return null; throw new MessageInvalidException(ProtocolErrorMessage.INVALID_MESSAGE, "Unknown message name "+name, null); Added: trunk/freenet/src/freenet/node/fcp/ShutdownMessage.java =================================================================== --- trunk/freenet/src/freenet/node/fcp/ShutdownMessage.java 2006-04-14 13:23:58 UTC (rev 8551) +++ trunk/freenet/src/freenet/node/fcp/ShutdownMessage.java 2006-04-14 14:06:50 UTC (rev 8552) @@ -0,0 +1,26 @@ +package freenet.node.fcp; + +import freenet.node.Node; +import freenet.node.fcp.FCPMessage; +import freenet.support.SimpleFieldSet; + +public class ShutdownMessage extends FCPMessage{ + public final static String name = "Shutdown"; + + public ShutdownMessage() throws MessageInvalidException { + } + + public SimpleFieldSet getFieldSet() { + return new SimpleFieldSet(false); + } + + public String getName() { + return name; + } + + public void run(FCPConnectionHandler handler, Node node) { + FCPMessage msg = new ProtocolErrorMessage(17,true,"The node is shutting down","Node"); + handler.outputHandler.queue(msg); + node.exit(); + } +} \ No newline at end of file
