-enum CertificateSource {
- SIGNATURE_AUTHOR = 0,
- SIGNATURE_DISTRIBUTOR = 1,
- SIGNATURE_DISTRIBUTOR2 = 2,
- SIGNATURE_UNKNOWN = 3
-};
-
-struct WidgetLocalizedInfo
-{
- DPL::OptionalString name;
- DPL::OptionalString shortName;
- DPL::OptionalString description;
- DPL::OptionalString license;
- DPL::OptionalString licenseHref;
-};
-
-/**
- * CertificateData
- * A structure to hold certificate fingerprints.
- */
-struct WidgetCertificateData
-{
- enum Owner { AUTHOR, DISTRIBUTOR, DISTRIBUTOR2, UNKNOWN };
- enum Type { ROOT, ENDENTITY };
-
- // type of signature: author/distributor
- Owner owner;
- // indicates whether this is ca certificate
- Type type;
-
- // chain id number: relative BASE, where BASE is signatureBASE.xml
- int chainId;
- // certificate fingerprint digested by md5
- std::string strMD5Fingerprint;
- // certificate fingerprint digestef by sha1
- std::string strSHA1Fingerprint;
- // Common name field in certificate
- DPL::String strCommonName;
-
- bool operator== (const WidgetCertificateData& certData) const
- {
- return certData.chainId == chainId &&
- certData.owner == owner &&
- certData.strCommonName == strCommonName &&
- certData.strMD5Fingerprint == strMD5Fingerprint &&
- certData.strSHA1Fingerprint == strSHA1Fingerprint;
- }
-};
-
-typedef std::list<WidgetCertificateData> WidgetCertificateDataList;
-
-typedef DPL::String Locale;
-typedef std::set<Locale> LocaleSet;
-typedef std::list<std::string> ExternalLocationList;
-
-/**
- * WidgetRegisterInfo
- * A structure to hold widget's information needed to be registered.
- * @see WidgetConfigurationInfo
- */
-struct WidgetRegisterInfo
-{
- struct LocalizedIcon : public ConfigParserData::Icon
- {
- LocalizedIcon(const ConfigParserData::Icon& icon,
- const LocaleSet& _availableLocales) :
- ConfigParserData::Icon(icon),
- availableLocales(_availableLocales)
- {}
-
- LocaleSet availableLocales;
- };
-
- struct StartFileProperties
- {
- DPL::String encoding;
- DPL::String type;
- };
-
- typedef std::map<Locale,
- StartFileProperties> StartFilePropertiesForLocalesMap;
- struct LocalizedStartFile
- {
- DPL::String path;
- StartFilePropertiesForLocalesMap propertiesForLocales;
- };
-
- typedef std::list<LocalizedIcon> LocalizedIconList;
- typedef std::list<LocalizedStartFile> LocalizedStartFileList;
- struct LocalizationData
- {
- LocalizedIconList icons;
- LocalizedStartFileList startFiles;
- };
-
- //Constructor
- WidgetRegisterInfo() :
- webAppType(APP_TYPE_UNKNOWN),
- configInfo(),
- packagingType(PKG_TYPE_UNKNOWN)
- {}
-
- WidgetType webAppType;
- DPL::OptionalString guid;
- DPL::OptionalString version;
- DPL::OptionalString minVersion;
- std::string baseFolder;
- ConfigParserData configInfo;
- LocalizationData localizationData;
-
- TizenPkgId tzPkgid;
- TizenAppId tzAppid;
- TizenAppId tzBackupAppid;
-
- time_t installedTime;
- PackagingType packagingType;
- EncryptedFileList encryptedFiles;
- ExternalLocationList externalLocations;
- DPL::OptionalString widgetInstalledPath;
-};
-
-typedef std::list<std::string> CertificateChainList;
-class IWidgetSecurity
-{
- public:
- virtual ~IWidgetSecurity();
-
- virtual const WidgetCertificateDataList& getCertificateList() const = 0;
-
- virtual bool isRecognized() const = 0;
-
- virtual bool isDistributorSigned() const = 0;
-
- virtual void getCertificateChainList(CertificateChainList& list,
- CertificateSource source) const = 0;
-};
-
-/**
- * WidgetAuthorInfo.
- * Structure to hold the information of widget's author.
- */
-struct WidgetAuthorInfo
-{
- DPL::OptionalString name;
- DPL::OptionalString email;
- DPL::OptionalString href;
-};
-
-typedef std::list <std::string> WidgetCertificateCNList;
-typedef std::list<DPL::String> LanguageTagList;
-typedef std::list<std::string> HostList;
-typedef std::list<std::string> FingerPrintList;