using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.ComponentModel;
namespace Tor
{
///
/// An enumerator containing different flags which may be associated with a router.
///
[Flags]
public enum RouterFlags : int
{
///
/// No flags were associated with the router.
///
[Description(null)]
None = 0x0000,
///
/// The router is a directory authority.
///
[Description("Authority")]
Authority = 0x0001,
///
/// The router is considered useless as an exit node.
///
[Description("BadExit")]
BadExit = 0x0002,
///
/// The router is more useful for building general-purpose exit circuits, rather than router circuits.
///
[Description("Exit")]
Exit = 0x0004,
///
/// The router is suitable for high-bandwidth circuits.
///
[Description("Fast")]
Fast = 0x0008,
///
/// The router is suitable for use as an entry guard.
///
[Description("Guard")]
Guard = 0x0010,
///
/// The router is considered a v2 hidden-service directory.
///
[Description("HSDir")]
HSDir = 0x0020,
///
/// The router's identity-nickname mapping is canonical, and this authority binds names.
///
[Description("Named")]
Named = 0x0040,
///
/// The router is suitable for long-lived circuits.
///
[Description("Stable")]
Stable = 0x0080,
///
/// The router is currently usable.
///
[Description("Running")]
Running = 0x0100,
///
/// The router's name has been bound by another router, and this authority binds names.
///
[Description("Unnamed")]
Unnamed = 0x0200,
///
/// The router has been validated.
///
[Description("Valid")]
Valid = 0x0400,
///
/// The router implements the v2 directory protocol, or higher.
///
[Description("V2Dir")]
V2Dir = 0x0800,
}
}