Little cleanup of the default stylesheet
[WebKit-https.git] / Source / WebCore / crypto / gnutls / CryptoKeyRSAGnuTLS.cpp
1 /*
2  * Copyright (C) 2014 Igalia S.L. All rights reserved.
3  *
4  * Redistribution and use in source and binary forms, with or without
5  * modification, are permitted provided that the following conditions
6  * are met:
7  * 1. Redistributions of source code must retain the above copyright
8  *    notice, this list of conditions and the following disclaimer.
9  * 2. Redistributions in binary form must reproduce the above copyright
10  *    notice, this list of conditions and the following disclaimer in the
11  *    documentation and/or other materials provided with the distribution.
12  *
13  * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
14  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
15  * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
16  * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
17  * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
18  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
19  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
20  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
21  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
22  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
23  * THE POSSIBILITY OF SUCH DAMAGE.
24  */
25
26 #include "config.h"
27 #include "CryptoKeyRSA.h"
28
29 #if ENABLE(SUBTLE_CRYPTO)
30
31 #include "CryptoAlgorithmDescriptionBuilder.h"
32 #include "CryptoAlgorithmRegistry.h"
33 #include "CryptoKeyDataRSAComponents.h"
34 #include "CryptoKeyPair.h"
35 #include "NotImplemented.h"
36
37 namespace WebCore {
38
39 struct _PlatformRSAKeyGnuTLS {
40 };
41
42 CryptoKeyRSA::CryptoKeyRSA(CryptoAlgorithmIdentifier identifier, CryptoKeyType type, PlatformRSAKey platformKey, bool extractable, CryptoKeyUsage usage)
43     : CryptoKey(identifier, type, extractable, usage)
44     , m_platformKey(platformKey)
45     , m_restrictedToSpecificHash(false)
46 {
47     notImplemented();
48 }
49
50 PassRefPtr<CryptoKeyRSA> CryptoKeyRSA::create(CryptoAlgorithmIdentifier identifier, const CryptoKeyDataRSAComponents& keyData, bool extractable, CryptoKeyUsage usage)
51 {
52     notImplemented();
53     UNUSED_PARAM(identifier);
54     UNUSED_PARAM(keyData);
55     UNUSED_PARAM(extractable);
56     UNUSED_PARAM(usage);
57
58     return nullptr;
59 }
60
61 CryptoKeyRSA::~CryptoKeyRSA()
62 {
63     notImplemented();
64 }
65
66 void CryptoKeyRSA::restrictToHash(CryptoAlgorithmIdentifier identifier)
67 {
68     m_restrictedToSpecificHash = true;
69     m_hash = identifier;
70 }
71
72 bool CryptoKeyRSA::isRestrictedToHash(CryptoAlgorithmIdentifier& identifier) const
73 {
74     if (!m_restrictedToSpecificHash)
75         return false;
76
77     identifier = m_hash;
78     return true;
79 }
80
81 size_t CryptoKeyRSA::keySizeInBits() const
82 {
83     notImplemented();
84     return 0;
85 }
86
87 void CryptoKeyRSA::buildAlgorithmDescription(CryptoAlgorithmDescriptionBuilder& builder) const
88 {
89     notImplemented();
90     UNUSED_PARAM(builder);
91 }
92
93 std::unique_ptr<CryptoKeyData> CryptoKeyRSA::exportData() const
94 {
95     ASSERT(extractable());
96
97     notImplemented();
98     return nullptr;
99 }
100
101 void CryptoKeyRSA::generatePair(CryptoAlgorithmIdentifier algorithm, unsigned modulusLength, const Vector<uint8_t>& publicExponent, bool extractable, CryptoKeyUsage usage, KeyPairCallback callback, VoidCallback failureCallback)
102 {
103     notImplemented();
104     failureCallback();
105
106     UNUSED_PARAM(algorithm);
107     UNUSED_PARAM(modulusLength);
108     UNUSED_PARAM(publicExponent);
109     UNUSED_PARAM(extractable);
110     UNUSED_PARAM(usage);
111     UNUSED_PARAM(callback);
112 }
113
114 } // namespace WebCore
115
116 #endif // ENABLE(SUBTLE_CRYPTO)