231 lines
6.8 KiB
C
231 lines
6.8 KiB
C
|
/*
|
||
|
* DO NOT EDIT. THIS FILE IS GENERATED FROM c:/mozilla/security/manager/ssl/public/nsIASN1Object.idl
|
||
|
*/
|
||
|
|
||
|
#ifndef __gen_nsIASN1Object_h__
|
||
|
#define __gen_nsIASN1Object_h__
|
||
|
|
||
|
|
||
|
#ifndef __gen_nsISupports_h__
|
||
|
#include "nsISupports.h"
|
||
|
#endif
|
||
|
|
||
|
/* For IDL files that don't want to include root IDL files. */
|
||
|
#ifndef NS_NO_VTABLE
|
||
|
#define NS_NO_VTABLE
|
||
|
#endif
|
||
|
|
||
|
/* starting interface: nsIASN1Object */
|
||
|
#define NS_IASN1OBJECT_IID_STR "ba8bf582-1dd1-11b2-898c-f40246bc9a63"
|
||
|
|
||
|
#define NS_IASN1OBJECT_IID \
|
||
|
{0xba8bf582, 0x1dd1, 0x11b2, \
|
||
|
{ 0x89, 0x8c, 0xf4, 0x02, 0x46, 0xbc, 0x9a, 0x63 }}
|
||
|
|
||
|
/**
|
||
|
* This represents an ASN.1 object,
|
||
|
* where ASN.1 is "Abstract Syntax Notation number One".
|
||
|
*
|
||
|
* The additional state information carried in this interface
|
||
|
* makes it fit for being used as the data structure
|
||
|
* when working with visual reprenstation of ASN.1 objects
|
||
|
* in a human user interface, like in a tree widget
|
||
|
* where open/close state of nodes must be remembered.
|
||
|
*
|
||
|
* @status FROZEN
|
||
|
*/
|
||
|
class NS_NO_VTABLE nsIASN1Object : public nsISupports {
|
||
|
public:
|
||
|
|
||
|
NS_DEFINE_STATIC_IID_ACCESSOR(NS_IASN1OBJECT_IID)
|
||
|
|
||
|
/**
|
||
|
* Identifiers for the possible types of object.
|
||
|
*/
|
||
|
enum { ASN1_END_CONTENTS = 0U };
|
||
|
|
||
|
enum { ASN1_BOOLEAN = 1U };
|
||
|
|
||
|
enum { ASN1_INTEGER = 2U };
|
||
|
|
||
|
enum { ASN1_BIT_STRING = 3U };
|
||
|
|
||
|
enum { ASN1_OCTET_STRING = 4U };
|
||
|
|
||
|
enum { ASN1_NULL = 5U };
|
||
|
|
||
|
enum { ASN1_OBJECT_ID = 6U };
|
||
|
|
||
|
enum { ASN1_ENUMERATED = 10U };
|
||
|
|
||
|
enum { ASN1_UTF8_STRING = 12U };
|
||
|
|
||
|
enum { ASN1_SEQUENCE = 16U };
|
||
|
|
||
|
enum { ASN1_SET = 17U };
|
||
|
|
||
|
enum { ASN1_PRINTABLE_STRING = 19U };
|
||
|
|
||
|
enum { ASN1_T61_STRING = 20U };
|
||
|
|
||
|
enum { ASN1_IA5_STRING = 22U };
|
||
|
|
||
|
enum { ASN1_UTC_TIME = 23U };
|
||
|
|
||
|
enum { ASN1_GEN_TIME = 24U };
|
||
|
|
||
|
enum { ASN1_VISIBLE_STRING = 26U };
|
||
|
|
||
|
enum { ASN1_UNIVERSAL_STRING = 28U };
|
||
|
|
||
|
enum { ASN1_BMP_STRING = 30U };
|
||
|
|
||
|
enum { ASN1_HIGH_TAG_NUMBER = 31U };
|
||
|
|
||
|
enum { ASN1_CONTEXT_SPECIFIC = 32U };
|
||
|
|
||
|
enum { ASN1_APPLICATION = 33U };
|
||
|
|
||
|
enum { ASN1_PRIVATE = 34U };
|
||
|
|
||
|
/**
|
||
|
* "type" will be equal to one of the defined object identifiers.
|
||
|
*/
|
||
|
/* attribute unsigned long type; */
|
||
|
NS_IMETHOD GetType(PRUint32 *aType) = 0;
|
||
|
NS_IMETHOD SetType(PRUint32 aType) = 0;
|
||
|
|
||
|
/**
|
||
|
* This contains a tag as explained in ASN.1 standards documents.
|
||
|
*/
|
||
|
/* attribute unsigned long tag; */
|
||
|
NS_IMETHOD GetTag(PRUint32 *aTag) = 0;
|
||
|
NS_IMETHOD SetTag(PRUint32 aTag) = 0;
|
||
|
|
||
|
/**
|
||
|
* "displayName" contains a human readable explanatory label.
|
||
|
*/
|
||
|
/* attribute AString displayName; */
|
||
|
NS_IMETHOD GetDisplayName(nsAString & aDisplayName) = 0;
|
||
|
NS_IMETHOD SetDisplayName(const nsAString & aDisplayName) = 0;
|
||
|
|
||
|
/**
|
||
|
* "displayValue" contains the human readable value.
|
||
|
*/
|
||
|
/* attribute AString displayValue; */
|
||
|
NS_IMETHOD GetDisplayValue(nsAString & aDisplayValue) = 0;
|
||
|
NS_IMETHOD SetDisplayValue(const nsAString & aDisplayValue) = 0;
|
||
|
|
||
|
};
|
||
|
|
||
|
/* Use this macro when declaring classes that implement this interface. */
|
||
|
#define NS_DECL_NSIASN1OBJECT \
|
||
|
NS_IMETHOD GetType(PRUint32 *aType); \
|
||
|
NS_IMETHOD SetType(PRUint32 aType); \
|
||
|
NS_IMETHOD GetTag(PRUint32 *aTag); \
|
||
|
NS_IMETHOD SetTag(PRUint32 aTag); \
|
||
|
NS_IMETHOD GetDisplayName(nsAString & aDisplayName); \
|
||
|
NS_IMETHOD SetDisplayName(const nsAString & aDisplayName); \
|
||
|
NS_IMETHOD GetDisplayValue(nsAString & aDisplayValue); \
|
||
|
NS_IMETHOD SetDisplayValue(const nsAString & aDisplayValue);
|
||
|
|
||
|
/* Use this macro to declare functions that forward the behavior of this interface to another object. */
|
||
|
#define NS_FORWARD_NSIASN1OBJECT(_to) \
|
||
|
NS_IMETHOD GetType(PRUint32 *aType) { return _to GetType(aType); } \
|
||
|
NS_IMETHOD SetType(PRUint32 aType) { return _to SetType(aType); } \
|
||
|
NS_IMETHOD GetTag(PRUint32 *aTag) { return _to GetTag(aTag); } \
|
||
|
NS_IMETHOD SetTag(PRUint32 aTag) { return _to SetTag(aTag); } \
|
||
|
NS_IMETHOD GetDisplayName(nsAString & aDisplayName) { return _to GetDisplayName(aDisplayName); } \
|
||
|
NS_IMETHOD SetDisplayName(const nsAString & aDisplayName) { return _to SetDisplayName(aDisplayName); } \
|
||
|
NS_IMETHOD GetDisplayValue(nsAString & aDisplayValue) { return _to GetDisplayValue(aDisplayValue); } \
|
||
|
NS_IMETHOD SetDisplayValue(const nsAString & aDisplayValue) { return _to SetDisplayValue(aDisplayValue); }
|
||
|
|
||
|
/* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
|
||
|
#define NS_FORWARD_SAFE_NSIASN1OBJECT(_to) \
|
||
|
NS_IMETHOD GetType(PRUint32 *aType) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetType(aType); } \
|
||
|
NS_IMETHOD SetType(PRUint32 aType) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetType(aType); } \
|
||
|
NS_IMETHOD GetTag(PRUint32 *aTag) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetTag(aTag); } \
|
||
|
NS_IMETHOD SetTag(PRUint32 aTag) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetTag(aTag); } \
|
||
|
NS_IMETHOD GetDisplayName(nsAString & aDisplayName) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetDisplayName(aDisplayName); } \
|
||
|
NS_IMETHOD SetDisplayName(const nsAString & aDisplayName) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetDisplayName(aDisplayName); } \
|
||
|
NS_IMETHOD GetDisplayValue(nsAString & aDisplayValue) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetDisplayValue(aDisplayValue); } \
|
||
|
NS_IMETHOD SetDisplayValue(const nsAString & aDisplayValue) { return !_to ? NS_ERROR_NULL_POINTER : _to->SetDisplayValue(aDisplayValue); }
|
||
|
|
||
|
#if 0
|
||
|
/* Use the code below as a template for the implementation class for this interface. */
|
||
|
|
||
|
/* Header file */
|
||
|
class nsASN1Object : public nsIASN1Object
|
||
|
{
|
||
|
public:
|
||
|
NS_DECL_ISUPPORTS
|
||
|
NS_DECL_NSIASN1OBJECT
|
||
|
|
||
|
nsASN1Object();
|
||
|
|
||
|
private:
|
||
|
~nsASN1Object();
|
||
|
|
||
|
protected:
|
||
|
/* additional members */
|
||
|
};
|
||
|
|
||
|
/* Implementation file */
|
||
|
NS_IMPL_ISUPPORTS1(nsASN1Object, nsIASN1Object)
|
||
|
|
||
|
nsASN1Object::nsASN1Object()
|
||
|
{
|
||
|
/* member initializers and constructor code */
|
||
|
}
|
||
|
|
||
|
nsASN1Object::~nsASN1Object()
|
||
|
{
|
||
|
/* destructor code */
|
||
|
}
|
||
|
|
||
|
/* attribute unsigned long type; */
|
||
|
NS_IMETHODIMP nsASN1Object::GetType(PRUint32 *aType)
|
||
|
{
|
||
|
return NS_ERROR_NOT_IMPLEMENTED;
|
||
|
}
|
||
|
NS_IMETHODIMP nsASN1Object::SetType(PRUint32 aType)
|
||
|
{
|
||
|
return NS_ERROR_NOT_IMPLEMENTED;
|
||
|
}
|
||
|
|
||
|
/* attribute unsigned long tag; */
|
||
|
NS_IMETHODIMP nsASN1Object::GetTag(PRUint32 *aTag)
|
||
|
{
|
||
|
return NS_ERROR_NOT_IMPLEMENTED;
|
||
|
}
|
||
|
NS_IMETHODIMP nsASN1Object::SetTag(PRUint32 aTag)
|
||
|
{
|
||
|
return NS_ERROR_NOT_IMPLEMENTED;
|
||
|
}
|
||
|
|
||
|
/* attribute AString displayName; */
|
||
|
NS_IMETHODIMP nsASN1Object::GetDisplayName(nsAString & aDisplayName)
|
||
|
{
|
||
|
return NS_ERROR_NOT_IMPLEMENTED;
|
||
|
}
|
||
|
NS_IMETHODIMP nsASN1Object::SetDisplayName(const nsAString & aDisplayName)
|
||
|
{
|
||
|
return NS_ERROR_NOT_IMPLEMENTED;
|
||
|
}
|
||
|
|
||
|
/* attribute AString displayValue; */
|
||
|
NS_IMETHODIMP nsASN1Object::GetDisplayValue(nsAString & aDisplayValue)
|
||
|
{
|
||
|
return NS_ERROR_NOT_IMPLEMENTED;
|
||
|
}
|
||
|
NS_IMETHODIMP nsASN1Object::SetDisplayValue(const nsAString & aDisplayValue)
|
||
|
{
|
||
|
return NS_ERROR_NOT_IMPLEMENTED;
|
||
|
}
|
||
|
|
||
|
/* End of implementation class template. */
|
||
|
#endif
|
||
|
|
||
|
|
||
|
#endif /* __gen_nsIASN1Object_h__ */
|