Merge branch 'master' into master-ghc8107
This commit is contained in:
commit
4782cab507
@ -287,7 +287,7 @@
|
|||||||
extra-modules = [{
|
extra-modules = [{
|
||||||
packages.simplexmq.flags.swift = true;
|
packages.simplexmq.flags.swift = true;
|
||||||
packages.direct-sqlcipher.flags.commoncrypto = true;
|
packages.direct-sqlcipher.flags.commoncrypto = true;
|
||||||
packages.entropy.patches = [ ./scripts/nix/entropy.patch ];
|
packages.entropy.flags.DoNotGetEntropy = true;
|
||||||
}];
|
}];
|
||||||
}).simplex-chat.components.library.override (
|
}).simplex-chat.components.library.override (
|
||||||
iosOverrides "pkg-ios-aarch64-swift-json"
|
iosOverrides "pkg-ios-aarch64-swift-json"
|
||||||
@ -297,7 +297,7 @@
|
|||||||
pkgs' = pkgs;
|
pkgs' = pkgs;
|
||||||
extra-modules = [{
|
extra-modules = [{
|
||||||
packages.direct-sqlcipher.flags.commoncrypto = true;
|
packages.direct-sqlcipher.flags.commoncrypto = true;
|
||||||
packages.entropy.patches = [ ./scripts/nix/entropy.patch ];
|
packages.entropy.flags.DoNotGetEntropy = true;
|
||||||
}];
|
}];
|
||||||
}).simplex-chat.components.library.override (
|
}).simplex-chat.components.library.override (
|
||||||
iosOverrides "pkg-ios-aarch64-tagged-json"
|
iosOverrides "pkg-ios-aarch64-tagged-json"
|
||||||
@ -310,7 +310,7 @@
|
|||||||
extra-modules = [{
|
extra-modules = [{
|
||||||
packages.simplexmq.flags.swift = true;
|
packages.simplexmq.flags.swift = true;
|
||||||
packages.direct-sqlcipher.flags.commoncrypto = true;
|
packages.direct-sqlcipher.flags.commoncrypto = true;
|
||||||
packages.entropy.patches = [ ./scripts/nix/entropy.patch ];
|
packages.entropy.flags.DoNotGetEntropy = true;
|
||||||
}];
|
}];
|
||||||
}).simplex-chat.components.library.override (
|
}).simplex-chat.components.library.override (
|
||||||
iosOverrides "pkg-ios-x86_64-swift-json"
|
iosOverrides "pkg-ios-x86_64-swift-json"
|
||||||
@ -320,7 +320,7 @@
|
|||||||
pkgs' = pkgs;
|
pkgs' = pkgs;
|
||||||
extra-modules = [{
|
extra-modules = [{
|
||||||
packages.direct-sqlcipher.flags.commoncrypto = true;
|
packages.direct-sqlcipher.flags.commoncrypto = true;
|
||||||
packages.entropy.patches = [ ./scripts/nix/entropy.patch ];
|
packages.entropy.flags.DoNotGetEntropy = true;
|
||||||
}];
|
}];
|
||||||
}).simplex-chat.components.library.override (
|
}).simplex-chat.components.library.override (
|
||||||
iosOverrides "pkg-ios-x86_64-tagged-json"
|
iosOverrides "pkg-ios-x86_64-tagged-json"
|
||||||
|
@ -1,30 +0,0 @@
|
|||||||
diff --git a/cbits/random_initialized.c b/cbits/random_initialized.c
|
|
||||||
index 36ac968..ab708b0 100644
|
|
||||||
--- a/cbits/random_initialized.c
|
|
||||||
+++ b/cbits/random_initialized.c
|
|
||||||
@@ -5,14 +5,6 @@
|
|
||||||
#include <sys/stat.h>
|
|
||||||
#include <unistd.h>
|
|
||||||
|
|
||||||
-#ifdef HAVE_GETENTROPY
|
|
||||||
-static int ensure_pool_initialized_getentropy()
|
|
||||||
-{
|
|
||||||
- char tmp;
|
|
||||||
- return getentropy(&tmp, sizeof(tmp));
|
|
||||||
-}
|
|
||||||
-#endif
|
|
||||||
-
|
|
||||||
// Poll /dev/random to wait for randomness. This is a proxy for the /dev/urandom
|
|
||||||
// pool being initialized.
|
|
||||||
static int ensure_pool_initialized_poll()
|
|
||||||
@@ -45,10 +37,5 @@ static int ensure_pool_initialized_poll()
|
|
||||||
// Returns 0 on success, non-zero on failure.
|
|
||||||
int ensure_pool_initialized()
|
|
||||||
{
|
|
||||||
-#ifdef HAVE_GETENTROPY
|
|
||||||
- if (ensure_pool_initialized_getentropy() == 0)
|
|
||||||
- return 0;
|
|
||||||
-#endif
|
|
||||||
-
|
|
||||||
return ensure_pool_initialized_poll();
|
|
||||||
}
|
|
@ -65,71 +65,134 @@ mobileTests = do
|
|||||||
it "should convert invalid name to a valid name" testValidNameCApi
|
it "should convert invalid name to a valid name" testValidNameCApi
|
||||||
|
|
||||||
noActiveUser :: LB.ByteString
|
noActiveUser :: LB.ByteString
|
||||||
|
noActiveUser =
|
||||||
#if defined(darwin_HOST_OS) && defined(swiftJSON)
|
#if defined(darwin_HOST_OS) && defined(swiftJSON)
|
||||||
noActiveUser = "{\"resp\":{\"chatCmdError\":{\"chatError\":{\"error\":{\"errorType\":{\"noActiveUser\":{}}}}}}}"
|
noActiveUserSwift
|
||||||
#else
|
#else
|
||||||
noActiveUser = "{\"resp\":{\"type\":\"chatCmdError\",\"chatError\":{\"type\":\"error\",\"errorType\":{\"type\":\"noActiveUser\"}}}}"
|
noActiveUserTagged
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
noActiveUserSwift :: LB.ByteString
|
||||||
|
noActiveUserSwift = "{\"resp\":{\"_owsf\":true,\"chatCmdError\":{\"chatError\":{\"_owsf\":true,\"error\":{\"errorType\":{\"_owsf\":true,\"noActiveUser\":{}}}}}}}"
|
||||||
|
|
||||||
|
noActiveUserTagged :: LB.ByteString
|
||||||
|
noActiveUserTagged = "{\"resp\":{\"type\":\"chatCmdError\",\"chatError\":{\"type\":\"error\",\"errorType\":{\"type\":\"noActiveUser\"}}}}"
|
||||||
|
|
||||||
activeUserExists :: LB.ByteString
|
activeUserExists :: LB.ByteString
|
||||||
|
activeUserExists =
|
||||||
#if defined(darwin_HOST_OS) && defined(swiftJSON)
|
#if defined(darwin_HOST_OS) && defined(swiftJSON)
|
||||||
activeUserExists = "{\"resp\":{\"chatCmdError\":{\"user_\":{\"userId\":1,\"agentUserId\":\"1\",\"userContactId\":1,\"localDisplayName\":\"alice\",\"profile\":{\"profileId\":1,\"displayName\":\"alice\",\"fullName\":\"Alice\",\"localAlias\":\"\"},\"fullPreferences\":{\"timedMessages\":{\"allow\":\"yes\"},\"fullDelete\":{\"allow\":\"no\"},\"reactions\":{\"allow\":\"yes\"},\"voice\":{\"allow\":\"yes\"},\"calls\":{\"allow\":\"yes\"}},\"activeUser\":true,\"showNtfs\":true,\"sendRcptsContacts\":true,\"sendRcptsSmallGroups\":true},\"chatError\":{\"error\":{\"errorType\":{\"userExists\":{\"contactName\":\"alice\"}}}}}}}"
|
activeUserExistsSwift
|
||||||
#else
|
#else
|
||||||
activeUserExists = "{\"resp\":{\"type\":\"chatCmdError\",\"user_\":{\"userId\":1,\"agentUserId\":\"1\",\"userContactId\":1,\"localDisplayName\":\"alice\",\"profile\":{\"profileId\":1,\"displayName\":\"alice\",\"fullName\":\"Alice\",\"localAlias\":\"\"},\"fullPreferences\":{\"timedMessages\":{\"allow\":\"yes\"},\"fullDelete\":{\"allow\":\"no\"},\"reactions\":{\"allow\":\"yes\"},\"voice\":{\"allow\":\"yes\"},\"calls\":{\"allow\":\"yes\"}},\"activeUser\":true,\"showNtfs\":true,\"sendRcptsContacts\":true,\"sendRcptsSmallGroups\":true},\"chatError\":{\"type\":\"error\",\"errorType\":{\"type\":\"userExists\",\"contactName\":\"alice\"}}}}"
|
activeUserExistsTagged
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
activeUserExistsSwift :: LB.ByteString
|
||||||
|
activeUserExistsSwift = "{\"resp\":{\"_owsf\":true,\"chatCmdError\":{\"user_\":{\"userId\":1,\"agentUserId\":\"1\",\"userContactId\":1,\"localDisplayName\":\"alice\",\"profile\":{\"profileId\":1,\"displayName\":\"alice\",\"fullName\":\"Alice\",\"localAlias\":\"\"},\"fullPreferences\":{\"timedMessages\":{\"allow\":\"yes\"},\"fullDelete\":{\"allow\":\"no\"},\"reactions\":{\"allow\":\"yes\"},\"voice\":{\"allow\":\"yes\"},\"calls\":{\"allow\":\"yes\"}},\"activeUser\":true,\"showNtfs\":true,\"sendRcptsContacts\":true,\"sendRcptsSmallGroups\":true},\"chatError\":{\"_owsf\":true,\"error\":{\"errorType\":{\"_owsf\":true,\"userExists\":{\"contactName\":\"alice\"}}}}}}}"
|
||||||
|
|
||||||
|
activeUserExistsTagged :: LB.ByteString
|
||||||
|
activeUserExistsTagged = "{\"resp\":{\"type\":\"chatCmdError\",\"user_\":{\"userId\":1,\"agentUserId\":\"1\",\"userContactId\":1,\"localDisplayName\":\"alice\",\"profile\":{\"profileId\":1,\"displayName\":\"alice\",\"fullName\":\"Alice\",\"localAlias\":\"\"},\"fullPreferences\":{\"timedMessages\":{\"allow\":\"yes\"},\"fullDelete\":{\"allow\":\"no\"},\"reactions\":{\"allow\":\"yes\"},\"voice\":{\"allow\":\"yes\"},\"calls\":{\"allow\":\"yes\"}},\"activeUser\":true,\"showNtfs\":true,\"sendRcptsContacts\":true,\"sendRcptsSmallGroups\":true},\"chatError\":{\"type\":\"error\",\"errorType\":{\"type\":\"userExists\",\"contactName\":\"alice\"}}}}"
|
||||||
|
|
||||||
activeUser :: LB.ByteString
|
activeUser :: LB.ByteString
|
||||||
|
activeUser =
|
||||||
#if defined(darwin_HOST_OS) && defined(swiftJSON)
|
#if defined(darwin_HOST_OS) && defined(swiftJSON)
|
||||||
activeUser = "{\"resp\":{\"activeUser\":{\"user\":{\"userId\":1,\"agentUserId\":\"1\",\"userContactId\":1,\"localDisplayName\":\"alice\",\"profile\":{\"profileId\":1,\"displayName\":\"alice\",\"fullName\":\"Alice\",\"localAlias\":\"\"},\"fullPreferences\":{\"timedMessages\":{\"allow\":\"yes\"},\"fullDelete\":{\"allow\":\"no\"},\"reactions\":{\"allow\":\"yes\"},\"voice\":{\"allow\":\"yes\"},\"calls\":{\"allow\":\"yes\"}},\"activeUser\":true,\"showNtfs\":true,\"sendRcptsContacts\":true,\"sendRcptsSmallGroups\":true}}}}"
|
activeUserSwift
|
||||||
#else
|
#else
|
||||||
activeUser = "{\"resp\":{\"type\":\"activeUser\",\"user\":{\"userId\":1,\"agentUserId\":\"1\",\"userContactId\":1,\"localDisplayName\":\"alice\",\"profile\":{\"profileId\":1,\"displayName\":\"alice\",\"fullName\":\"Alice\",\"localAlias\":\"\"},\"fullPreferences\":{\"timedMessages\":{\"allow\":\"yes\"},\"fullDelete\":{\"allow\":\"no\"},\"reactions\":{\"allow\":\"yes\"},\"voice\":{\"allow\":\"yes\"},\"calls\":{\"allow\":\"yes\"}},\"activeUser\":true,\"showNtfs\":true,\"sendRcptsContacts\":true,\"sendRcptsSmallGroups\":true}}}"
|
activeUserTagged
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
activeUserSwift :: LB.ByteString
|
||||||
|
activeUserSwift = "{\"resp\":{\"_owsf\":true,\"activeUser\":{\"user\":{\"userId\":1,\"agentUserId\":\"1\",\"userContactId\":1,\"localDisplayName\":\"alice\",\"profile\":{\"profileId\":1,\"displayName\":\"alice\",\"fullName\":\"Alice\",\"localAlias\":\"\"},\"fullPreferences\":{\"timedMessages\":{\"allow\":\"yes\"},\"fullDelete\":{\"allow\":\"no\"},\"reactions\":{\"allow\":\"yes\"},\"voice\":{\"allow\":\"yes\"},\"calls\":{\"allow\":\"yes\"}},\"activeUser\":true,\"showNtfs\":true,\"sendRcptsContacts\":true,\"sendRcptsSmallGroups\":true}}}}"
|
||||||
|
|
||||||
|
activeUserTagged :: LB.ByteString
|
||||||
|
activeUserTagged = "{\"resp\":{\"type\":\"activeUser\",\"user\":{\"userId\":1,\"agentUserId\":\"1\",\"userContactId\":1,\"localDisplayName\":\"alice\",\"profile\":{\"profileId\":1,\"displayName\":\"alice\",\"fullName\":\"Alice\",\"localAlias\":\"\"},\"fullPreferences\":{\"timedMessages\":{\"allow\":\"yes\"},\"fullDelete\":{\"allow\":\"no\"},\"reactions\":{\"allow\":\"yes\"},\"voice\":{\"allow\":\"yes\"},\"calls\":{\"allow\":\"yes\"}},\"activeUser\":true,\"showNtfs\":true,\"sendRcptsContacts\":true,\"sendRcptsSmallGroups\":true}}}"
|
||||||
|
|
||||||
chatStarted :: LB.ByteString
|
chatStarted :: LB.ByteString
|
||||||
|
chatStarted =
|
||||||
#if defined(darwin_HOST_OS) && defined(swiftJSON)
|
#if defined(darwin_HOST_OS) && defined(swiftJSON)
|
||||||
chatStarted = "{\"resp\":{\"chatStarted\":{}}}"
|
chatStartedSwift
|
||||||
#else
|
#else
|
||||||
chatStarted = "{\"resp\":{\"type\":\"chatStarted\"}}"
|
chatStartedTagged
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
chatStartedSwift :: LB.ByteString
|
||||||
|
chatStartedSwift = "{\"resp\":{\"_owsf\":true,\"chatStarted\":{}}}"
|
||||||
|
|
||||||
|
chatStartedTagged :: LB.ByteString
|
||||||
|
chatStartedTagged = "{\"resp\":{\"type\":\"chatStarted\"}}"
|
||||||
|
|
||||||
contactSubSummary :: LB.ByteString
|
contactSubSummary :: LB.ByteString
|
||||||
|
contactSubSummary =
|
||||||
#if defined(darwin_HOST_OS) && defined(swiftJSON)
|
#if defined(darwin_HOST_OS) && defined(swiftJSON)
|
||||||
contactSubSummary = "{\"resp\":{\"contactSubSummary\":{" <> userJSON <> ",\"contactSubscriptions\":[]}}}"
|
contactSubSummarySwift
|
||||||
#else
|
#else
|
||||||
contactSubSummary = "{\"resp\":{\"type\":\"contactSubSummary\"," <> userJSON <> ",\"contactSubscriptions\":[]}}"
|
contactSubSummaryTagged
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
contactSubSummarySwift :: LB.ByteString
|
||||||
|
contactSubSummarySwift = "{\"resp\":{\"_owsf\":true,\"contactSubSummary\":{" <> userJSON <> ",\"contactSubscriptions\":[]}}}"
|
||||||
|
|
||||||
|
contactSubSummaryTagged :: LB.ByteString
|
||||||
|
contactSubSummaryTagged = "{\"resp\":{\"type\":\"contactSubSummary\"," <> userJSON <> ",\"contactSubscriptions\":[]}}"
|
||||||
|
|
||||||
memberSubSummary :: LB.ByteString
|
memberSubSummary :: LB.ByteString
|
||||||
|
memberSubSummary =
|
||||||
#if defined(darwin_HOST_OS) && defined(swiftJSON)
|
#if defined(darwin_HOST_OS) && defined(swiftJSON)
|
||||||
memberSubSummary = "{\"resp\":{\"memberSubSummary\":{" <> userJSON <> ",\"memberSubscriptions\":[]}}}"
|
memberSubSummarySwift
|
||||||
#else
|
#else
|
||||||
memberSubSummary = "{\"resp\":{\"type\":\"memberSubSummary\"," <> userJSON <> ",\"memberSubscriptions\":[]}}"
|
memberSubSummaryTagged
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
memberSubSummarySwift :: LB.ByteString
|
||||||
|
memberSubSummarySwift = "{\"resp\":{\"_owsf\":true,\"memberSubSummary\":{" <> userJSON <> ",\"memberSubscriptions\":[]}}}"
|
||||||
|
|
||||||
|
memberSubSummaryTagged :: LB.ByteString
|
||||||
|
memberSubSummaryTagged = "{\"resp\":{\"type\":\"memberSubSummary\"," <> userJSON <> ",\"memberSubscriptions\":[]}}"
|
||||||
|
|
||||||
userContactSubSummary :: LB.ByteString
|
userContactSubSummary :: LB.ByteString
|
||||||
|
userContactSubSummary =
|
||||||
#if defined(darwin_HOST_OS) && defined(swiftJSON)
|
#if defined(darwin_HOST_OS) && defined(swiftJSON)
|
||||||
userContactSubSummary = "{\"resp\":{\"userContactSubSummary\":{" <> userJSON <> ",\"userContactSubscriptions\":[]}}}"
|
userContactSubSummarySwift
|
||||||
#else
|
#else
|
||||||
userContactSubSummary = "{\"resp\":{\"type\":\"userContactSubSummary\"," <> userJSON <> ",\"userContactSubscriptions\":[]}}"
|
userContactSubSummaryTagged
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
userContactSubSummarySwift :: LB.ByteString
|
||||||
|
userContactSubSummarySwift = "{\"resp\":{\"_owsf\":true,\"userContactSubSummary\":{" <> userJSON <> ",\"userContactSubscriptions\":[]}}}"
|
||||||
|
|
||||||
|
userContactSubSummaryTagged :: LB.ByteString
|
||||||
|
userContactSubSummaryTagged = "{\"resp\":{\"type\":\"userContactSubSummary\"," <> userJSON <> ",\"userContactSubscriptions\":[]}}"
|
||||||
|
|
||||||
pendingSubSummary :: LB.ByteString
|
pendingSubSummary :: LB.ByteString
|
||||||
|
pendingSubSummary =
|
||||||
#if defined(darwin_HOST_OS) && defined(swiftJSON)
|
#if defined(darwin_HOST_OS) && defined(swiftJSON)
|
||||||
pendingSubSummary = "{\"resp\":{\"pendingSubSummary\":{" <> userJSON <> ",\"pendingSubscriptions\":[]}}}"
|
pendingSubSummarySwift
|
||||||
#else
|
#else
|
||||||
pendingSubSummary = "{\"resp\":{\"type\":\"pendingSubSummary\"," <> userJSON <> ",\"pendingSubscriptions\":[]}}"
|
pendingSubSummaryTagged
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
pendingSubSummarySwift :: LB.ByteString
|
||||||
|
pendingSubSummarySwift = "{\"resp\":{\"_owsf\":true,\"pendingSubSummary\":{" <> userJSON <> ",\"pendingSubscriptions\":[]}}}"
|
||||||
|
|
||||||
|
pendingSubSummaryTagged :: LB.ByteString
|
||||||
|
pendingSubSummaryTagged = "{\"resp\":{\"type\":\"pendingSubSummary\"," <> userJSON <> ",\"pendingSubscriptions\":[]}}"
|
||||||
|
|
||||||
userJSON :: LB.ByteString
|
userJSON :: LB.ByteString
|
||||||
userJSON = "\"user\":{\"userId\":1,\"agentUserId\":\"1\",\"userContactId\":1,\"localDisplayName\":\"alice\",\"profile\":{\"profileId\":1,\"displayName\":\"alice\",\"fullName\":\"Alice\",\"localAlias\":\"\"},\"fullPreferences\":{\"timedMessages\":{\"allow\":\"yes\"},\"fullDelete\":{\"allow\":\"no\"},\"reactions\":{\"allow\":\"yes\"},\"voice\":{\"allow\":\"yes\"},\"calls\":{\"allow\":\"yes\"}},\"activeUser\":true,\"showNtfs\":true,\"sendRcptsContacts\":true,\"sendRcptsSmallGroups\":true}"
|
userJSON = "\"user\":{\"userId\":1,\"agentUserId\":\"1\",\"userContactId\":1,\"localDisplayName\":\"alice\",\"profile\":{\"profileId\":1,\"displayName\":\"alice\",\"fullName\":\"Alice\",\"localAlias\":\"\"},\"fullPreferences\":{\"timedMessages\":{\"allow\":\"yes\"},\"fullDelete\":{\"allow\":\"no\"},\"reactions\":{\"allow\":\"yes\"},\"voice\":{\"allow\":\"yes\"},\"calls\":{\"allow\":\"yes\"}},\"activeUser\":true,\"showNtfs\":true,\"sendRcptsContacts\":true,\"sendRcptsSmallGroups\":true}"
|
||||||
|
|
||||||
parsedMarkdown :: LB.ByteString
|
parsedMarkdown :: LB.ByteString
|
||||||
|
parsedMarkdown =
|
||||||
#if defined(darwin_HOST_OS) && defined(swiftJSON)
|
#if defined(darwin_HOST_OS) && defined(swiftJSON)
|
||||||
parsedMarkdown = "{\"formattedText\":[{\"format\":{\"bold\":{}},\"text\":\"hello\"}]}"
|
parsedMarkdownSwift
|
||||||
#else
|
#else
|
||||||
parsedMarkdown = "{\"formattedText\":[{\"format\":{\"type\":\"bold\"},\"text\":\"hello\"}]}"
|
parsedMarkdownTagged
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
parsedMarkdownSwift :: LB.ByteString
|
||||||
|
parsedMarkdownSwift = "{\"formattedText\":[{\"format\":{\"_owsf\":true,\"bold\":{}},\"text\":\"hello\"}]}"
|
||||||
|
|
||||||
|
parsedMarkdownTagged :: LB.ByteString
|
||||||
|
parsedMarkdownTagged = "{\"formattedText\":[{\"format\":{\"type\":\"bold\"},\"text\":\"hello\"}]}"
|
||||||
|
|
||||||
testChatApiNoUser :: FilePath -> IO ()
|
testChatApiNoUser :: FilePath -> IO ()
|
||||||
testChatApiNoUser tmp = do
|
testChatApiNoUser tmp = do
|
||||||
let dbPrefix = tmp </> "1"
|
let dbPrefix = tmp </> "1"
|
||||||
|
Loading…
Reference in New Issue
Block a user