Vidalia  0.2.15
TorSignal.h
Go to the documentation of this file.
00001 /*
00002 **  This file is part of Vidalia, and is subject to the license terms in the
00003 **  LICENSE file, found in the top level directory of this distribution. If 
00004 **  you did not receive the LICENSE file with this file, you may obtain it
00005 **  from the Vidalia source package distributed by the Vidalia Project at
00006 **  http://www.torproject.org/projects/vidalia.html. No part of Vidalia, 
00007 **  including this file, may be copied, modified, propagated, or distributed 
00008 **  except according to the terms described in the LICENSE file.
00009 */
00010 
00011 /*
00012 ** \file TorSignal.h
00013 ** \brief Sends a signal to Tor's control interface
00014 */
00015 
00016 #ifndef _TORSIGNAL_H
00017 #define _TORSGINAL_H
00018 
00019 #include <QString>
00020 
00021 
00022 class TorSignal
00023 {
00024 public:
00025   /** Signals that can be sent by the controller */
00026   enum Signal {
00027     Reload,   /**< SIGHUP: Reloads config items and refetch directory */
00028     Shutdown, /**< SIGINT: Controlled shutdown */
00029     Dump,     /**< SIGUSR1: Log information about current circuits */
00030     Debug,    /**< SIGUSR2: Switch all open logs to loglevel debug */
00031     Halt,     /**< SIGTERM: Immediate shutdown */
00032     NewNym    /**< NEWNYM: Switch to all new clean circuits */
00033   };
00034   
00035   /** Returns a string representation of a signal that Tor understands. */
00036   static QString toString(Signal signal);
00037 };
00038 
00039 #endif
00040