Skip to content

Commit

Permalink
v2.0.29
Browse files Browse the repository at this point in the history
  • Loading branch information
psiphon-jenkins committed Feb 15, 2023
1 parent eb72650 commit f96dfe6
Show file tree
Hide file tree
Showing 17 changed files with 789 additions and 7 deletions.
11 changes: 6 additions & 5 deletions Frameworks/PsiphonTunnel.xcframework/Info.plist
Original file line number Diff line number Diff line change
Expand Up @@ -8,31 +8,32 @@
<key>DebugSymbolsPath</key>
<string>dSYMs</string>
<key>LibraryIdentifier</key>
<string>ios-x86_64-simulator</string>
<string>ios-arm64</string>
<key>LibraryPath</key>
<string>PsiphonTunnel.framework</string>
<key>SupportedArchitectures</key>
<array>
<string>x86_64</string>
<string>arm64</string>
</array>
<key>SupportedPlatform</key>
<string>ios</string>
<key>SupportedPlatformVariant</key>
<string>simulator</string>
</dict>
<dict>
<key>DebugSymbolsPath</key>
<string>dSYMs</string>
<key>LibraryIdentifier</key>
<string>ios-arm64</string>
<string>ios-arm64_x86_64-simulator</string>
<key>LibraryPath</key>
<string>PsiphonTunnel.framework</string>
<key>SupportedArchitectures</key>
<array>
<string>arm64</string>
<string>x86_64</string>
</array>
<key>SupportedPlatform</key>
<string>ios</string>
<key>SupportedPlatformVariant</key>
<string>simulator</string>
</dict>
</array>
<key>CFBundlePackageType</key>
Expand Down
Binary file not shown.
Original file line number Diff line number Diff line change
@@ -1 +1 @@
ca5adc953a04508d7449287f426544c2133fc2e5
df9b786ba0f473c914d3db902c8b1f94a79020c2
Binary file not shown.
Original file line number Diff line number Diff line change
@@ -0,0 +1,75 @@
/*
* Copyright (c) 2021, Psiphon Inc.
* All rights reserved.
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
*/

#import <Foundation/Foundation.h>
#import <Network/path.h>
#import "ReachabilityProtocol.h"

NS_ASSUME_NONNULL_BEGIN

/// NetworkPathState represents the state of the network path on the device.
@interface NetworkPathState : NSObject

/// Reachability status.
@property (nonatomic, readonly) NetworkReachability status;

/// Network path state.
@property (nonatomic, nullable, readonly) nw_path_t path;

/// Default active interface available to the network path.
@property (nonatomic, nullable, readonly) NSString* defaultActiveInterfaceName;

@end

/// ReachabilityChangedNotification represents the reachability state on the device.
@interface ReachabilityChangedNotification : NSObject

/// Current reachability status.
@property (nonatomic, readonly) NetworkReachability reachabilityStatus;

/// Name of current default active interface. If nil, then there is no such interface.
@property (nonatomic, nullable, readonly) NSString* curDefaultActiveInterfaceName;

/// Name of previous default active interface. If nil, then there was no default active interface previously or the previous default active
/// interface was not capable of sending or receiving network data at the time.
@property (nonatomic, nullable, readonly) NSString* prevDefaultActiveInterfaceName;

@end

/// DefaultRouteMonitor monitors changes to the default route on the device and whether that route is capable of sending and
/// receiving network data.
@interface DefaultRouteMonitor : NSObject <ReachabilityProtocol>

/// Returns the state of the default route on the device. If nil, then there is no usable route available for sending or receiving network data.
@property (atomic, readonly) NetworkPathState *pathState;

- (instancetype)init API_AVAILABLE(macos(10.14), ios(12.0), watchos(5.0), tvos(12.0));

- (id)initWithLogger:(void (^__nonnull)(NSString *_Nonnull))logger API_AVAILABLE(macos(10.14), ios(12.0), watchos(5.0), tvos(12.0));

// Denote ReachabilityProtocol availability.
- (BOOL)startNotifier API_AVAILABLE(macos(10.14), ios(12.0), watchos(5.0), tvos(12.0));
- (void)stopNotifier API_AVAILABLE(macos(10.14), ios(12.0), watchos(5.0), tvos(12.0));
+ (NSString*)reachabilityChangedNotification;
- (NetworkReachability)reachabilityStatus API_AVAILABLE(macos(10.14), ios(12.0), watchos(5.0), tvos(12.0));
- (NSString*)reachabilityStatusDebugInfo API_AVAILABLE(macos(10.14), ios(12.0), watchos(5.0), tvos(12.0));

@end

NS_ASSUME_NONNULL_END
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
//
// JailbreakCheck.h
// JailbreakCheck
//

/*
* Copyright (c) 2017, Psiphon Inc.
* All rights reserved.
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
*/

@interface JailbreakCheck : NSObject

+ (BOOL)isDeviceJailbroken;

@end
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
/*
* Copyright (c) 2021, Psiphon Inc.
* All rights reserved.
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
*/

#import <Foundation/Foundation.h>

NS_ASSUME_NONNULL_BEGIN

@interface PsiphonClientPlatform : NSObject

/// Returns a short description of the platform like "iOS_14.2_unjailbroken_ca.psiphon.Psiphon" if running on iOS
/// or "iOS_13.1_iOSAppOnMac_ca.psiphon.Psiphon" if running as an iOS build on an ARM Mac.
+ (NSString *)getClientPlatform;

@end

NS_ASSUME_NONNULL_END
Loading

0 comments on commit f96dfe6

Please sign in to comment.