https://bugs.webkit.org/show_bug.cgi?id=138612
Reviewed by Csaba Osztrogonác.
.:
* Source/cmake/OptionsEfl.cmake:
Source/WebCore:
It is obvious to make Efl use GnuTLS as well,
and since there seems no reason why to separate
Efl and Gtk implementations from each other, I
also propose renaming the gtk directory and file
suffixes to gnutls.
No new tests needed.
* PlatformEfl.cmake:
* PlatformGTK.cmake:
* crypto/gnutls/CryptoAlgorithmAES_CBCGnuTLS.cpp: Renamed from Source/WebCore/crypto/gtk/CryptoAlgorithmAES_CBCGtk.cpp.
(WebCore::CryptoAlgorithmAES_CBC::platformEncrypt):
(WebCore::CryptoAlgorithmAES_CBC::platformDecrypt):
* crypto/gnutls/CryptoAlgorithmAES_KWGnuTLS.cpp: Renamed from Source/WebCore/crypto/gtk/CryptoAlgorithmAES_KWGtk.cpp.
(WebCore::CryptoAlgorithmAES_KW::platformEncrypt):
(WebCore::CryptoAlgorithmAES_KW::platformDecrypt):
* crypto/gnutls/CryptoAlgorithmHMACGnuTLS.cpp: Renamed from Source/WebCore/crypto/gtk/CryptoAlgorithmHMACGtk.cpp.
(WebCore::getGnutlsDigestAlgorithm):
(WebCore::calculateSignature):
(WebCore::CryptoAlgorithmHMAC::platformSign):
(WebCore::CryptoAlgorithmHMAC::platformVerify):
* crypto/gnutls/CryptoAlgorithmRSAES_PKCS1_v1_5GnuTLS.cpp: Renamed from Source/WebCore/crypto/gtk/CryptoAlgorithmRSAES_PKCS1_v1_5Gtk.cpp.
(WebCore::CryptoAlgorithmRSAES_PKCS1_v1_5::platformEncrypt):
(WebCore::CryptoAlgorithmRSAES_PKCS1_v1_5::platformDecrypt):
* crypto/gnutls/CryptoAlgorithmRSASSA_PKCS1_v1_5GnuTLS.cpp: Renamed from Source/WebCore/crypto/gtk/CryptoAlgorithmRSASSA_PKCS1_v1_5Gtk.cpp.
(WebCore::CryptoAlgorithmRSASSA_PKCS1_v1_5::platformSign):
(WebCore::CryptoAlgorithmRSASSA_PKCS1_v1_5::platformVerify):
* crypto/gnutls/CryptoAlgorithmRSA_OAEPGnuTLS.cpp: Renamed from Source/WebCore/crypto/gtk/CryptoAlgorithmRSA_OAEPGtk.cpp.
(WebCore::CryptoAlgorithmRSA_OAEP::platformEncrypt):
(WebCore::CryptoAlgorithmRSA_OAEP::platformDecrypt):
* crypto/gnutls/CryptoAlgorithmRegistryGnuTLS.cpp: Renamed from Source/WebCore/crypto/gtk/CryptoAlgorithmRegistryGtk.cpp.
(WebCore::CryptoAlgorithmRegistry::platformRegisterAlgorithms):
* crypto/gnutls/CryptoDigestGnuTLS.cpp: Renamed from Source/WebCore/crypto/gtk/CryptoDigestGtk.cpp.
(WebCore::CryptoDigest::CryptoDigest):
(WebCore::CryptoDigest::~CryptoDigest):
(WebCore::CryptoDigest::create):
(WebCore::CryptoDigest::addBytes):
(WebCore::CryptoDigest::computeHash):
* crypto/gnutls/CryptoKeyRSAGnuTLS.cpp: Renamed from Source/WebCore/crypto/gtk/CryptoKeyRSAGtk.cpp.
(WebCore::CryptoKeyRSA::CryptoKeyRSA):
(WebCore::CryptoKeyRSA::create):
(WebCore::CryptoKeyRSA::~CryptoKeyRSA):
(WebCore::CryptoKeyRSA::restrictToHash):
(WebCore::CryptoKeyRSA::isRestrictedToHash):
(WebCore::CryptoKeyRSA::keySizeInBits):
(WebCore::CryptoKeyRSA::buildAlgorithmDescription):
(WebCore::CryptoKeyRSA::exportData):
(WebCore::CryptoKeyRSA::generatePair):
* crypto/gnutls/SerializedCryptoKeyWrapGnuTLS.cpp: Renamed from Source/WebCore/crypto/gtk/SerializedCryptoKeyWrapGtk.cpp.
(WebCore::getDefaultWebCryptoMasterKey):
(WebCore::wrapSerializedCryptoKey):
(WebCore::unwrapSerializedCryptoKey):
* crypto/keys/CryptoKeyRSA.h:
Tools:
* Scripts/webkitperl/FeatureList.pm:
LayoutTests:
* platform/efl/TestExpectations:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@176712
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
+2014-12-03 Eva Balazsfalvi <evab.u-szeged@partner.samsung.com>
+
+ [EFL] Add subtle crypto to the build system
+ https://bugs.webkit.org/show_bug.cgi?id=138612
+
+ Reviewed by Csaba Osztrogonác.
+
+ * Source/cmake/OptionsEfl.cmake:
+
2014-12-01 Gyuyoung Kim <gyuyoung.kim@samsung.com>
[EFL] Add a ENABLE_CSS_SCROLL_SNAP macro to CMake build system
+2014-12-03 Eva Balazsfalvi <evab.u-szeged@partner.samsung.com>
+
+ [EFL] Add subtle crypto to the build system
+ https://bugs.webkit.org/show_bug.cgi?id=138612
+
+ Reviewed by Csaba Osztrogonác.
+
+ * platform/efl/TestExpectations:
+
2014-12-02 Benjamin Poulain <benjamin@webkit.org>
Little cleanup of the default stylesheet
webkit.org/b/123561 printing/single-line-must-not-be-split-into-two-pages.html [ Missing ]
webkit.org/b/123561 printing/width-overflow.html [ Missing ]
-# crypto.subtle is not yet enabled
-crypto/subtle [ Skip ]
+# crypto.subtle is not yet enabled, but digest algorithms are already implemented
+# and their tests are whitelisted
+webkit.org/b/133122 crypto/subtle [ Skip ]
+webkit.org/b/133319 crypto/subtle/sha-1.html [ Pass ]
+webkit.org/b/133319 crypto/subtle/sha-224.html [ Pass ]
+webkit.org/b/133319 crypto/subtle/sha-256.html [ Pass ]
+webkit.org/b/133319 crypto/subtle/sha-384.html [ Pass ]
+webkit.org/b/133319 crypto/subtle/sha-512.html [ Pass ]
+webkit.org/b/133320 crypto/subtle/hmac-check-algorithm.html [ Pass ]
+webkit.org/b/133320 crypto/subtle/hmac-export-key.html [ Pass ]
+webkit.org/b/133320 crypto/subtle/hmac-generate-key.html [ Pass ]
+webkit.org/b/133320 crypto/subtle/hmac-import-jwk.html [ Pass ]
+webkit.org/b/133320 crypto/subtle/hmac-sign-verify-empty-key.html [ Pass ]
+webkit.org/b/133320 crypto/subtle/hmac-sign-verify.html [ Pass ]
# Known WebGL conformance test failures, fails on Intel and AMD hardware
webgl/1.0.1/conformance/glsl/misc/shader-with-conditional-scoping.html [ Failure ]
+2014-12-03 Eva Balazsfalvi <evab.u-szeged@partner.samsung.com>
+
+ [EFL] Add subtle crypto to the build system
+ https://bugs.webkit.org/show_bug.cgi?id=138612
+
+ Reviewed by Csaba Osztrogonác.
+
+ It is obvious to make Efl use GnuTLS as well,
+ and since there seems no reason why to separate
+ Efl and Gtk implementations from each other, I
+ also propose renaming the gtk directory and file
+ suffixes to gnutls.
+
+ No new tests needed.
+
+ * PlatformEfl.cmake:
+ * PlatformGTK.cmake:
+ * crypto/gnutls/CryptoAlgorithmAES_CBCGnuTLS.cpp: Renamed from Source/WebCore/crypto/gtk/CryptoAlgorithmAES_CBCGtk.cpp.
+ (WebCore::CryptoAlgorithmAES_CBC::platformEncrypt):
+ (WebCore::CryptoAlgorithmAES_CBC::platformDecrypt):
+ * crypto/gnutls/CryptoAlgorithmAES_KWGnuTLS.cpp: Renamed from Source/WebCore/crypto/gtk/CryptoAlgorithmAES_KWGtk.cpp.
+ (WebCore::CryptoAlgorithmAES_KW::platformEncrypt):
+ (WebCore::CryptoAlgorithmAES_KW::platformDecrypt):
+ * crypto/gnutls/CryptoAlgorithmHMACGnuTLS.cpp: Renamed from Source/WebCore/crypto/gtk/CryptoAlgorithmHMACGtk.cpp.
+ (WebCore::getGnutlsDigestAlgorithm):
+ (WebCore::calculateSignature):
+ (WebCore::CryptoAlgorithmHMAC::platformSign):
+ (WebCore::CryptoAlgorithmHMAC::platformVerify):
+ * crypto/gnutls/CryptoAlgorithmRSAES_PKCS1_v1_5GnuTLS.cpp: Renamed from Source/WebCore/crypto/gtk/CryptoAlgorithmRSAES_PKCS1_v1_5Gtk.cpp.
+ (WebCore::CryptoAlgorithmRSAES_PKCS1_v1_5::platformEncrypt):
+ (WebCore::CryptoAlgorithmRSAES_PKCS1_v1_5::platformDecrypt):
+ * crypto/gnutls/CryptoAlgorithmRSASSA_PKCS1_v1_5GnuTLS.cpp: Renamed from Source/WebCore/crypto/gtk/CryptoAlgorithmRSASSA_PKCS1_v1_5Gtk.cpp.
+ (WebCore::CryptoAlgorithmRSASSA_PKCS1_v1_5::platformSign):
+ (WebCore::CryptoAlgorithmRSASSA_PKCS1_v1_5::platformVerify):
+ * crypto/gnutls/CryptoAlgorithmRSA_OAEPGnuTLS.cpp: Renamed from Source/WebCore/crypto/gtk/CryptoAlgorithmRSA_OAEPGtk.cpp.
+ (WebCore::CryptoAlgorithmRSA_OAEP::platformEncrypt):
+ (WebCore::CryptoAlgorithmRSA_OAEP::platformDecrypt):
+ * crypto/gnutls/CryptoAlgorithmRegistryGnuTLS.cpp: Renamed from Source/WebCore/crypto/gtk/CryptoAlgorithmRegistryGtk.cpp.
+ (WebCore::CryptoAlgorithmRegistry::platformRegisterAlgorithms):
+ * crypto/gnutls/CryptoDigestGnuTLS.cpp: Renamed from Source/WebCore/crypto/gtk/CryptoDigestGtk.cpp.
+ (WebCore::CryptoDigest::CryptoDigest):
+ (WebCore::CryptoDigest::~CryptoDigest):
+ (WebCore::CryptoDigest::create):
+ (WebCore::CryptoDigest::addBytes):
+ (WebCore::CryptoDigest::computeHash):
+ * crypto/gnutls/CryptoKeyRSAGnuTLS.cpp: Renamed from Source/WebCore/crypto/gtk/CryptoKeyRSAGtk.cpp.
+ (WebCore::CryptoKeyRSA::CryptoKeyRSA):
+ (WebCore::CryptoKeyRSA::create):
+ (WebCore::CryptoKeyRSA::~CryptoKeyRSA):
+ (WebCore::CryptoKeyRSA::restrictToHash):
+ (WebCore::CryptoKeyRSA::isRestrictedToHash):
+ (WebCore::CryptoKeyRSA::keySizeInBits):
+ (WebCore::CryptoKeyRSA::buildAlgorithmDescription):
+ (WebCore::CryptoKeyRSA::exportData):
+ (WebCore::CryptoKeyRSA::generatePair):
+ * crypto/gnutls/SerializedCryptoKeyWrapGnuTLS.cpp: Renamed from Source/WebCore/crypto/gtk/SerializedCryptoKeyWrapGtk.cpp.
+ (WebCore::getDefaultWebCryptoMasterKey):
+ (WebCore::wrapSerializedCryptoKey):
+ (WebCore::unwrapSerializedCryptoKey):
+ * crypto/keys/CryptoKeyRSA.h:
+
2014-12-02 Benjamin Poulain <benjamin@webkit.org>
Little cleanup of the default stylesheet
platform/efl/PlatformSpeechSynthesisProviderEfl.cpp
)
endif ()
+
+if (ENABLE_SUBTLE_CRYPTO)
+ list(APPEND WebCore_SOURCES
+ crypto/CryptoAlgorithm.cpp
+ crypto/CryptoAlgorithmDescriptionBuilder.cpp
+ crypto/CryptoAlgorithmRegistry.cpp
+ crypto/CryptoKey.cpp
+ crypto/CryptoKeyPair.cpp
+ crypto/SubtleCrypto.cpp
+ crypto/algorithms/CryptoAlgorithmAES_CBC.cpp
+ crypto/algorithms/CryptoAlgorithmAES_KW.cpp
+ crypto/algorithms/CryptoAlgorithmHMAC.cpp
+ crypto/algorithms/CryptoAlgorithmRSAES_PKCS1_v1_5.cpp
+ crypto/algorithms/CryptoAlgorithmRSA_OAEP.cpp
+ crypto/algorithms/CryptoAlgorithmRSASSA_PKCS1_v1_5.cpp
+ crypto/algorithms/CryptoAlgorithmSHA1.cpp
+ crypto/algorithms/CryptoAlgorithmSHA224.cpp
+ crypto/algorithms/CryptoAlgorithmSHA256.cpp
+ crypto/algorithms/CryptoAlgorithmSHA384.cpp
+ crypto/algorithms/CryptoAlgorithmSHA512.cpp
+
+ crypto/gnutls/CryptoAlgorithmRegistryGnuTLS.cpp
+ crypto/gnutls/CryptoAlgorithmAES_CBCGnuTLS.cpp
+ crypto/gnutls/CryptoAlgorithmAES_KWGnuTLS.cpp
+ crypto/gnutls/CryptoAlgorithmHMACGnuTLS.cpp
+ crypto/gnutls/CryptoAlgorithmRSAES_PKCS1_v1_5GnuTLS.cpp
+ crypto/gnutls/CryptoAlgorithmRSA_OAEPGnuTLS.cpp
+ crypto/gnutls/CryptoAlgorithmRSASSA_PKCS1_v1_5GnuTLS.cpp
+ crypto/gnutls/CryptoDigestGnuTLS.cpp
+ crypto/gnutls/CryptoKeyRSAGnuTLS.cpp
+ crypto/gnutls/SerializedCryptoKeyWrapGnuTLS.cpp
+
+ crypto/keys/CryptoKeyAES.cpp
+ crypto/keys/CryptoKeyDataOctetSequence.cpp
+ crypto/keys/CryptoKeyDataRSAComponents.cpp
+ crypto/keys/CryptoKeyHMAC.cpp
+ crypto/keys/CryptoKeySerializationRaw.cpp
+ )
+
+ list(APPEND WebCore_INCLUDE_DIRECTORIES
+ ${GNUTLS_INCLUDE_DIRS}
+ )
+ list(APPEND WebCore_LIBRARIES
+ ${GNUTLS_LIBRARIES}
+ )
+endif ()
crypto/algorithms/CryptoAlgorithmSHA256.cpp
crypto/algorithms/CryptoAlgorithmSHA384.cpp
crypto/algorithms/CryptoAlgorithmSHA512.cpp
+
+ crypto/gnutls/CryptoAlgorithmRegistryGnuTLS.cpp
+ crypto/gnutls/CryptoAlgorithmAES_CBCGnuTLS.cpp
+ crypto/gnutls/CryptoAlgorithmAES_KWGnuTLS.cpp
+ crypto/gnutls/CryptoAlgorithmHMACGnuTLS.cpp
+ crypto/gnutls/CryptoAlgorithmRSAES_PKCS1_v1_5GnuTLS.cpp
+ crypto/gnutls/CryptoAlgorithmRSA_OAEPGnuTLS.cpp
+ crypto/gnutls/CryptoAlgorithmRSASSA_PKCS1_v1_5GnuTLS.cpp
+ crypto/gnutls/CryptoDigestGnuTLS.cpp
+ crypto/gnutls/CryptoKeyRSAGnuTLS.cpp
+ crypto/gnutls/SerializedCryptoKeyWrapGnuTLS.cpp
+
crypto/keys/CryptoKeyAES.cpp
crypto/keys/CryptoKeyDataOctetSequence.cpp
crypto/keys/CryptoKeyDataRSAComponents.cpp
crypto/keys/CryptoKeyHMAC.cpp
crypto/keys/CryptoKeySerializationRaw.cpp
-
- crypto/gtk/CryptoAlgorithmRegistryGtk.cpp
- crypto/gtk/CryptoAlgorithmAES_CBCGtk.cpp
- crypto/gtk/CryptoAlgorithmAES_KWGtk.cpp
- crypto/gtk/CryptoAlgorithmHMACGtk.cpp
- crypto/gtk/CryptoAlgorithmRSAES_PKCS1_v1_5Gtk.cpp
- crypto/gtk/CryptoAlgorithmRSA_OAEPGtk.cpp
- crypto/gtk/CryptoAlgorithmRSASSA_PKCS1_v1_5Gtk.cpp
- crypto/gtk/CryptoDigestGtk.cpp
- crypto/gtk/CryptoKeyRSAGtk.cpp
- crypto/gtk/SerializedCryptoKeyWrapGtk.cpp
)
list(APPEND WebCore_INCLUDE_DIRECTORIES
namespace WebCore {
-struct _PlatformRSAKeyGtk {
+struct _PlatformRSAKeyGnuTLS {
};
CryptoKeyRSA::CryptoKeyRSA(CryptoAlgorithmIdentifier identifier, CryptoKeyType type, PlatformRSAKey platformKey, bool extractable, CryptoKeyUsage usage)
typedef CCRSACryptorRef PlatformRSAKey;
#endif
-#if PLATFORM(GTK)
-typedef struct _PlatformRSAKeyGtk PlatformRSAKeyGtk;
-typedef PlatformRSAKeyGtk *PlatformRSAKey;
+#if PLATFORM(GTK) || PLATFORM(EFL)
+typedef struct _PlatformRSAKeyGnuTLS PlatformRSAKeyGnuTLS;
+typedef PlatformRSAKeyGnuTLS *PlatformRSAKey;
#endif
namespace WebCore {
WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_SHARED_WORKERS ON)
WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_SPEECH_SYNTHESIS ON)
WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_SPELLCHECK ON)
+WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_SUBTLE_CRYPTO OFF)
WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_TEMPLATE_ELEMENT ON)
WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_TOUCH_EVENTS ON)
WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABLE_TOUCH_SLIDER ON)
# [E]WebKit2 tests need a hint to find out where processes such as WebProcess are located at.
add_definitions(-DWEBKIT_EXEC_PATH=\"${CMAKE_RUNTIME_OUTPUT_DIRECTORY}\")
+
+if (ENABLE_SUBTLE_CRYPTO)
+ find_package(GnuTLS 3.0.0 REQUIRED)
+endif ()
+2014-12-03 Eva Balazsfalvi <evab.u-szeged@partner.samsung.com>
+
+ [EFL] Add subtle crypto to the build system
+ https://bugs.webkit.org/show_bug.cgi?id=138612
+
+ Reviewed by Csaba Osztrogonác.
+
+ * Scripts/webkitperl/FeatureList.pm:
+
2014-12-02 Joanmarie Diggs <jdiggs@igalia.com>
AX: [ATK] Table captions and table rows are missing from the accessible hierarchy
define => "ENABLE_SQL_DATABASE", default => 1, value => \$sqlDatabaseSupport },
{ option => "subtle-crypto", desc => "Toggle WebCrypto Subtle-Crypto support",
- define => "ENABLE_SUBTLE_CRYPTO", default => (isGtk() || isAppleMacWebKit() || isIOSWebKit()), value => \$subtleCrypto },
+ define => "ENABLE_SUBTLE_CRYPTO", default => (isGtk() || isEfl() || isAppleMacWebKit() || isIOSWebKit()), value => \$subtleCrypto },
{ option => "suid-linux-sandbox", desc => "Toggle suid sandbox for linux",
define => "ENABLE_SUID_SANDBOX_LINUX", default => 0, value => \$suidLinuxSandbox },