-//\r
-// System.Net.SocketPermissionAttribute.cs\r
-//\r
-// Author:\r
+//
+// System.Net.SocketPermissionAttribute.cs
+//
+// Author:
// Lawrence Pit (loz@cable.a2000.nl)
// Sebastien Pouliot <sebastien@ximian.com>
//
// OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
//
-\r
-using System.Security;\r
-using System.Security.Permissions;\r
-\r
+
+using System.Security;
+using System.Security.Permissions;
+
namespace System.Net {
-\r
- [AttributeUsage (AttributeTargets.Assembly \r
- | AttributeTargets.Class \r
- | AttributeTargets.Struct \r
- | AttributeTargets.Constructor \r
- | AttributeTargets.Method, AllowMultiple = true, Inherited = false)\r
- ] \r
- [Serializable]\r
+
+ [AttributeUsage (AttributeTargets.Assembly
+ | AttributeTargets.Class
+ | AttributeTargets.Struct
+ | AttributeTargets.Constructor
+ | AttributeTargets.Method, AllowMultiple = true, Inherited = false)
+ ]
+ [Serializable]
public sealed class SocketPermissionAttribute : CodeAccessSecurityAttribute {
-\r
- // Fields\r
- string m_access;\r
- string m_host;\r
- string m_port;\r
- string m_transport;\r
- \r
- // Constructors\r
+
+ // Fields
+ string m_access;
+ string m_host;
+ string m_port;
+ string m_transport;
+
+ // Constructors
public SocketPermissionAttribute (SecurityAction action)
- : base (action)\r
- {\r
- }\r
-\r
- // Properties\r
-\r
- public string Access {\r
- get { return m_access; }\r
- set { \r
- if (m_access != null)\r
- AlreadySet ("Access");\r
-
- m_access = value;\r
- }\r
- }\r
-\r
- public string Host {\r
- get { return m_host; }\r
- set { \r
- if (m_host != null)\r
- AlreadySet ("Host");\r
-
- m_host = value;\r
- }\r
- }\r
-\r
- public string Port {\r
- get { return m_port; }\r
- set { \r
- if (m_port != null)\r
- AlreadySet ("Port");\r
-
- m_port = value;\r
- }\r
- }\r
-\r
- public string Transport {\r
- get { return m_transport; }\r
- set { \r
- if (m_transport != null)\r
- AlreadySet ("Transport");\r
-
- m_transport = value;\r
- }\r
- }\r
- \r
- // Methods\r
- \r
+ : base (action)
+ {
+ }
+
+ // Properties
+
+ public string Access {
+ get { return m_access; }
+ set {
+ if (m_access != null)
+ AlreadySet ("Access");
+
+ m_access = value;
+ }
+ }
+
+ public string Host {
+ get { return m_host; }
+ set {
+ if (m_host != null)
+ AlreadySet ("Host");
+
+ m_host = value;
+ }
+ }
+
+ public string Port {
+ get { return m_port; }
+ set {
+ if (m_port != null)
+ AlreadySet ("Port");
+
+ m_port = value;
+ }
+ }
+
+ public string Transport {
+ get { return m_transport; }
+ set {
+ if (m_transport != null)
+ AlreadySet ("Transport");
+
+ m_transport = value;
+ }
+ }
+
+ // Methods
+
public override IPermission CreatePermission ()
- {\r
- if (this.Unrestricted)\r
- return new SocketPermission (PermissionState.Unrestricted);\r
-
- string missing = String.Empty;\r
- if (m_access == null) \r
- missing += "Access, ";\r
- if (m_host == null) \r
- missing += "Host, ";\r
- if (m_port == null) \r
- missing += "Port, ";\r
+ {
+ if (this.Unrestricted)
+ return new SocketPermission (PermissionState.Unrestricted);
+
+ string missing = String.Empty;
+ if (m_access == null)
+ missing += "Access, ";
+ if (m_host == null)
+ missing += "Host, ";
+ if (m_port == null)
+ missing += "Port, ";
if (m_transport == null)
- missing += "Transport, ";\r
+ missing += "Transport, ";
if (missing.Length > 0) {
string msg = Locale.GetText ("The value(s) for {0} must be specified.");
missing = missing.Substring (0, missing.Length - 2); // remove last separator
throw new ArgumentException (String.Format (msg, missing));
- }\r
-\r
- NetworkAccess access;\r
- TransportType transport;\r
- int port = SocketPermission.AllPorts;\r
-\r
- if (String.Compare (m_access, "Connect", true) == 0)\r
- access = NetworkAccess.Connect;\r
- else if (String.Compare (m_access, "Accept", true) == 0)\r
- access = NetworkAccess.Accept;\r
- else {\r
+ }
+
+ NetworkAccess access;
+ TransportType transport;
+ int port = SocketPermission.AllPorts;
+
+ if (String.Compare (m_access, "Connect", true) == 0)
+ access = NetworkAccess.Connect;
+ else if (String.Compare (m_access, "Accept", true) == 0)
+ access = NetworkAccess.Accept;
+ else {
string msg = Locale.GetText ("The parameter value for 'Access', '{1}, is invalid.");
throw new ArgumentException (String.Format (msg, m_access));
- }\r
-\r
- if (String.Compare (m_port, "All", true) != 0) {\r
- try {\r
- port = Int32.Parse (m_port); \r
+ }
+
+ if (String.Compare (m_port, "All", true) != 0) {
+ try {
+ port = Int32.Parse (m_port);
}
- catch {\r
+ catch {
string msg = Locale.GetText ("The parameter value for 'Port', '{1}, is invalid.");
throw new ArgumentException (String.Format (msg, m_port));
- }\r
- // test whether port number is valid..\r
- new IPEndPoint (1, port);\r
- }\r
-\r
- try {\r
- transport = (TransportType) Enum.Parse (typeof (TransportType), m_transport, true);\r
+ }
+ // test whether port number is valid..
+ new IPEndPoint (1, port);
+ }
+
+ try {
+ transport = (TransportType) Enum.Parse (typeof (TransportType), m_transport, true);
}
- catch {\r
+ catch {
string msg = Locale.GetText ("The parameter value for 'Transport', '{1}, is invalid.");
throw new ArgumentException (String.Format (msg, m_transport));
- }\r
- \r
- SocketPermission perm = new SocketPermission (PermissionState.None);\r
- perm.AddPermission (access, transport, m_host, port);\r
- return perm;\r
+ }
+
+ SocketPermission perm = new SocketPermission (PermissionState.None);
+ perm.AddPermission (access, transport, m_host, port);
+ return perm;
}
// helpers
string msg = Locale.GetText ("The parameter '{0}' can be set only once.");
throw new ArgumentException (String.Format (msg, property), property);
}
- }\r
-}\r
+ }
+}