Giter Site home page Giter Site logo

mycrypto's People

Contributors

snej avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

mycrypto's Issues

Test.h missing

Hi,
the file Test.h seems to be missing. I checked out MYCrypto and MYUtilities but when I compile my crypto I get a lot of errors

MYCrypto/MYCrypto_Private.h:19:9: fatal error: 'Test.h' file not found
#import "Test.h"

cheers

Would you recommend using this?

Hi @snej,

I'm working on an open source project, a peer-to-peer synchronisation library for iOS called "Pulse" (https://source.ind.ie/project/pulse-swift). The implementation of this library requires us to create self-signed certificates. Currently we're using OpenSSL for this. We're having all sorts of issues with that though, so we've been searching for alternatives.

Last weekend I ran into your MYCrypto library. I got it to work (with some modifications). What I like about it is that it is using the Apple APIs as much as possible. So here comes my question: with today's insights, would you recommend us using this library? I has been years since the last activity on this project, I'm not sure how widely it is used and whether it has been "proven in practice".

Thank you for your insights and advice!

Stefan

Appstore review

Hi,

Have you used this in an app in production? My concern is the review Apple conducts for the app submissions?

Hang in _openProtocol::: when launching listener twice

When I'm lauching a listener, shut it down and launch it again, the call to [listener open] never returns. It seems deadlocked with thread 6.

Complete backtraces of all threads below

Code to startup and shutdown

  • (void)startup
    {
    if (browser != nil)
    return;

    browser = [[MYBonjourBrowser alloc] initWithServiceType:@"_rtxxxdata._tcp."];

    registration = [[browser myRegistration] retain];

    listener = [[BLIPListener alloc] initWithPort:12345];
    [listener setPickAvailablePort:YES];

    [browser start];
    [listener setDelegate:self];
    [listener open];

    [registration setPort:[listener port]];
    [registration start];
    }

  • (void)shutdown
    {
    [browser stop];
    [registration stop];
    [listener close];
    [listener setDelegate:nil];

    [browser release], browser = nil;
    [registration release], registration = nil;
    [listener release], listener = nil;
    }

Thread 1, Queue : com.apple.main-thread
#0 0x3bddea7a in OSSpinLockLock$VARIANT$mp ()
#1 0x33a7baca in CFSocketCreateWithNative ()
#2 0x33ab6630 in CFSocketCreate ()
#3 0x0027a7bc in -[TCPListener _openProtocol:address:error:] at /Users/markus/MyApp/SOFramework/MYNetwork/TCP/TCPListener.m:126
#4 0x0027ac66 in -[TCPListener open:] at /Users/markus/MyApp/SOFramework/MYNetwork/TCP/TCPListener.m:169
#5 0x0027b226 in -[TCPListener open] at /Users/markus/MyApp/SOFramework/MYNetwork/TCP/TCPListener.m:216
#6 0x00286e28 in -[RubiNetwork startup] at /Users/markus/MyApp/rubiTrack/src/core/RubiNetwork.m:68
#7 0x002880cc in -[RTGNetworkViewController startupNetwork:] at /Users/markus/Projects/rubiTrack-to-Go/src/ui/RTGNetworkViewController.m:83
#8 0x359d10c4 in -UIApplication sendAction:to:from:forEvent:
#9 0x359d1076 in -UIApplication sendAction:toTarget:fromSender:forEvent:
#10 0x359d1054 in -UIControl sendAction:to:forEvent:
#11 0x359d090a in -UIControl(Internal) _sendActionsForEvents:withEvent:
#12 0x359d0e00 in -UIControl touchesEnded:withEvent:
#13 0x358f95f0 in -UIWindow _sendTouchesForEvent:
#14 0x358e6800 in -UIApplication sendEvent:
#15 0x358e611a in _UIApplicationHandleEvent ()
#16 0x375d85a2 in _PurpleEventCallback ()
#17 0x375d81d2 in PurpleEventCallback ()
#18 0x33ab3172 in CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE1_PERFORM_FUNCTION ()
#19 0x33ab3116 in __CFRunLoopDoSource1 ()
#20 0x33ab1f98 in __CFRunLoopRun ()
#21 0x33a24ebc in CFRunLoopRunSpecific ()
#22 0x33a24d48 in CFRunLoopRunInMode ()
#23 0x375d72ea in GSEventRunModal ()
#24 0x3593a300 in UIApplicationMain ()
#25 0x000475a6 in main at /Users/markus/Projects/rubiTrack-to-Go/src/app/main.m:16
#26 0x3bdaeb20 in start ()

Thread 3, Queue : com.apple.libdispatch-manager
#0 0x3be65648 in kevent64 ()
#1 0x3bd95978 in _dispatch_mgr_invoke ()
#2 0x3bd95658 in _dispatch_mgr_thread$VARIANT$mp ()

Thread 5 WebThread, Queue : (null)
#0 0x3be64eb4 in mach_msg_trap ()
#1 0x3be6504c in mach_msg ()
#2 0x33ab3044 in __CFRunLoopServiceMachPort ()
#3 0x33ab1da2 in __CFRunLoopRun ()
#4 0x33a24ebc in CFRunLoopRunSpecific ()
#5 0x33a24d48 in CFRunLoopRunInMode ()
#6 0x39a0a504 in RunWebThread(void*) ()
#7 0x3bdce310 in _pthread_start ()
#8 0x3bdce1d8 in thread_start ()

Thread 6 com.apple.CFSocket.private, Queue : (null)
#0 0x3be64fbc in syscall_thread_switch ()
#1 0x3bddea92 in OSSpinLockLock$VARIANT$mp ()
#2 0x33a7fba8 in CFSocketInvalidate ()
#3 0x0028587a in -[MYDNSConnection close] at /Users/markus/MyApp/SOFramework/MYNetwork/PortMapper/MYDNSService.m:272
#4 0x00285458 in -[MYDNSConnection dealloc] at /Users/markus/MyApp/SOFramework/MYNetwork/PortMapper/MYDNSService.m:223
#5 0x33a1f310 in CFRelease ()
#6 0x33a7fd8c in CFSocketInvalidate ()
#7 0x33ab70c6 in __CFSocketManager ()
#8 0x3bdce310 in _pthread_start ()

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.