Pages

Wednesday, 24 July 2019

ProxyKit

SOCKS proxy server and socket client built upon GCDAsyncSocket.
Build Status Version Platform
Objective-C SOCKS 5 / RFC 1928 proxy server and socket client libraries built upon GCDAsyncSocket.

Usage

SOCKSProxy - Dead simple SOCKSv5 proxy server for OS X or iOS. Supports acting as background "VoIP" sockets on iOS via GCDAsyncSocket.
SOCKSProxy *proxy = [[SOCKSProxy alloc] init];
[proxy startProxyOnPort:9050];
GCDAsyncProxySocket - Proxy-compatible subclass and drop-in replacement for (most of) GCDAsyncSocket.
GCDAsyncProxySocket *socket = [[GCDAsyncProxySocket alloc] init];
[socket setProxyHost:@"127.0.0.1" port:9050 version:GCDAsyncSocketSOCKSVersion5];
[socket connectToHost:@"example.com" onPort:80 error:nil];
For more documentation check out ProxyKit on Cocoadocs.

Installation

We use Cocoapods. There are two subspecs for the server and client code. By default both are included. Put one of these your Podfile:
pod 'ProxyKit'    
pod 'ProxyKit/Server' # Just the server code
pod 'ProxyKit/Client' # Just the client code
To install:
$ pod install

Tests

You can run tests by opening up ProxyKit.xcworkspace after installing the Pods.

Dependencies

  • GCDAsyncSocket - GCD-based Async Objective-C socket library
  • CocoaLumberjack - A fast & simple, yet powerful & flexible logging framework for Mac and iOS

Apps Using This Library

  • Tether - Tethering for non-jailbroken iOS Devices over USB.
  • ChatSecure - free and open source encrypted chat client for iPhone and Android that supports OTR encryption over XMPP.

No comments:

Post a Comment