Skip to content

Commit

Permalink
Merge pull request #536 from meganz/release/v3.0.0
Browse files Browse the repository at this point in the history
MEGA C++ SDK Version 3.0.0
  • Loading branch information
javiserrano authored Feb 8, 2017
2 parents 9c72732 + 1db3b02 commit e8e66e9
Show file tree
Hide file tree
Showing 248 changed files with 39,667 additions and 15,575 deletions.
21 changes: 21 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -84,4 +84,25 @@ megaclient_statecache*

# Mega SDK runtime
*.db-journal

/third_party/Makefile
/examples/mega-cmd
/contrib/QtCreator/MEGAcmd/MEGAcmd.pro.user
/contrib/QtCreator/MEGAcmd/MEGAcmd
/contrib/QtCreator/MEGAcmd/Makefile
/contrib/QtCreator/MEGAcmd/moc_*.cpp
examples/megacmd/build/Release_x64
MEGAcmdServer.pro.user
/examples/megacmd/build/megacmd/megacmd.dsc
/examples/megacmd/build/megacmd/megacmd.spec
/examples/megacmd/build/megacmd/megacmd_*.tar.gz
/examples/megacmd/build/megacmd/PKGBUILD
/contrib/QtCreator/MEGAcmd/MEGAcmdClient/MEGAclient
/contrib/QtCreator/MEGAcmd/MEGAcmdClient/Makefile
/contrib/QtCreator/MEGAcmd/MEGAcmdServer/MEGAcmd
/contrib/QtCreator/MEGAcmd/MEGAcmdServer/Makefile
/examples/mega-exec
/examples/megacmd/build/megacmd/debian.copyright
/examples/megacmd/client/mega-exec
/contrib/QtCreator/MEGAcmd/MEGAcmdLoader/MEGAcmdLoader
/contrib/QtCreator/MEGAcmd/MEGAcmdLoader/Makefile
84 changes: 84 additions & 0 deletions CREDITS.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,84 @@
## CREDITS

--------------------------------------------------------------------
#### Dependencies of the MEGA C++ SDK
Here is a brief description of all of them:

#### c-ares:
Copyright 1998 by the Massachusetts Institute of Technology.

c-ares is a C library for asynchronous DNS requests (including name resolves)

http://c-ares.haxx.se/

License: MIT license

http://c-ares.haxx.se/license.html

#### libcurl
Copyright (C) 1998 - 2016, Daniel Stenberg, <[email protected]>, et al.

The multiprotocol file transfer library

https://curl.haxx.se/libcurl/

License: MIT/X derivate license

https://curl.haxx.se/docs/copyright.html

#### Crypto++
Copyright (c) 1995-2013 by Wei Dai. (for the compilation) and public domain (for individual files)

Crypto++ Library is a free C++ class library of cryptographic schemes.

https://www.cryptopp.com/

License: Crypto++ Library is copyrighted as a compilation and (as of version 5.6.2)

licensed under the Boost Software License 1.0, while the individual files in
the compilation are all public domain.

#### OpenSSL
Copyright (c) 1998-2016 The OpenSSL Project. All rights reserved.

A toolkit implementing SSL v2/v3 and TLS protocols with full-strength cryptography world-wide.

https://www.openssl.org/

License: OpenSSL License

https://github.com/openssl/openssl/blob/master/LICENSE

#### libuv
Copyright Joyent, Inc. and other Node contributors. All rights reserved.

libuv is a multi-platform support library with a focus on asynchronous I/O.

https://github.com/libuv/libuv

License: MIT

https://github.com/libuv/libuv/blob/v1.x/LICENSE

#### freeimage
Copyright (c) 2003-2015 by FreeImage. All rights reserved.

FreeImage is an Open Source library project for developers who would like
to support popular graphics image formats like PNG, BMP, JPEG, TIFF and
others as needed by today's multimedia applications.

This software uses the FreeImage open source image library.
See http://freeimage.sourceforge.net for details.

License: FreeImage Public License - Version 1.0.

http://freeimage.sourceforge.net/freeimage-license.txt

#### SQLite
SQLite is an in-process library that implements a self-contained, serverless, zero-configuration, transactional SQL database engine.

http://www.sqlite.org/

License: Public Domain

http://www.sqlite.org/copyright.html
3 changes: 2 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,7 @@ In the `examples` folder you can find example apps using:
- An example app for Android (using Java bindings based on SWIG) in `examples/android`
- An example app for iOS (using Objective-C bindings) in `examples/iOS`
- An example app for Windows Phone (using Windows Phone bindings) in `examples/wp8`
- [MegaCMD](examples/megacmd) (a higher level command line application that uses the SDK to provide interactive and scriptable access to MEGA.

Building
--------
Expand All @@ -41,7 +42,7 @@ For platforms with Autotools, the generic way to build and install it is:
make
sudo make install

That compilation will include the examples using our low level SDK (`megacli` and `megasimplesync`)
That compilation will include the examples using our low level SDK (`megacli` and `megasimplesync`) and also [MegaCMD](examples/megacmd).
You also have specific build instructions for OSX (`doc/OSX.txt`) and FreeBSD (`doc/FreeBSD.txt`)
and a build script to automatically download and build the SDK along with all its dependencies (`contrib/build_sdk.sh`)

Expand Down
10 changes: 7 additions & 3 deletions bindings/ios/3rdparty/build-all.sh
Original file line number Diff line number Diff line change
Expand Up @@ -11,13 +11,17 @@ sh build-libuv.sh
sh build-libsodium.sh

# MEGAchat deps
if [ "$1" == "--enable-chat"]; then
sh build-expat.sh
if [ "$1" == "--enable-chat" ]; then
sh build-libevent2.sh
sh build-libws.sh

# WebRTC deps
if [ "$2" == "--enable-webrtc" ]; then
sh build-expat.sh
sh build-webrtc.sh
fi

sh build-megachat.sh
sh build-megachat.sh $2
fi

echo "Done."
Expand Down
4 changes: 2 additions & 2 deletions bindings/ios/3rdparty/build-cryptopp.sh
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
#!/bin/sh

PROJECT_NAME="cryptopp"
CRYPTOPP_VERSION="562"
CRYPTOPP_VERSION="565"

UNIVERSAL_OUTPUTFOLDER="lib"
BUILD_DIR="cryptopp"
Expand All @@ -14,7 +14,7 @@ set -e

if [ ! -e "cryptopp${CRYPTOPP_VERSION}.zip" ]
then
curl -O "http://www.cryptopp.com/cryptopp${CRYPTOPP_VERSION}.zip"
curl -LO "http://www.cryptopp.com/cryptopp${CRYPTOPP_VERSION}.zip"
fi

unzip cryptopp${CRYPTOPP_VERSION}.zip -d cryptopp
Expand Down
2 changes: 1 addition & 1 deletion bindings/ios/3rdparty/build-curl.sh
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/bin/sh

CURL_VERSION="7.48.0"
CURL_VERSION="7.50.3"
SDKVERSION=`xcrun -sdk iphoneos --show-sdk-version`

##############################################
Expand Down
2 changes: 1 addition & 1 deletion bindings/ios/3rdparty/build-libuv.sh
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/bin/sh

UV_VERSION="1.9.0"
UV_VERSION="1.9.1"
SDKVERSION=`xcrun -sdk iphoneos --show-sdk-version`

##############################################
Expand Down
21 changes: 16 additions & 5 deletions bindings/ios/3rdparty/build-megachat.sh
Original file line number Diff line number Diff line change
Expand Up @@ -77,29 +77,34 @@ export CFLAGS="-Os -arch ${ARCH} -pipe -no-cpp-precomp -isysroot ${BUILD_SDKROOT
export CPPFLAGS="${CFLAGS} -I${BUILD_SDKROOT}/usr/include"
export CXXFLAGS="${CPPFLAGS}"

if [ "$1" == "--enable-webrtc" ]; then
export ENABLE_WEBRTC="-DoptKarereDisableWebrtc=0"
fi


if [ "${ARCH}" == "arm64" ]; then

IOSC_HOST_TRIPLET=aarch64-apple-darwin

/Applications/CMake.app/Contents/bin/cmake . -D_LIBMEGA_LIBRARIES= -DLIBMEGA_PUBLIC_INCLUDE_DIR=../../../../../include -DCMAKE_SYSROOT=${CURRENTPATH} -DCMAKE_TOOLCHAIN_FILE=${CURRENTPATH}/iOS.cmake -DIOS_PLATFORM=OS -DIOS_PLATFORM_TYPE=${ARCH} -DBUILD_ARM64=1 -DCMAKE_LIBRARY_PATH=${CURRENTPATH}/lib -DCMAKE_INCLUDE_PATH=${CURRENTPATH}/include -DLIBEVENT_INCLUDE_DIRS=${CURRENTPATH}/include/libevent -DLIBEVENT_LIB_CORE=${CURRENTPATH}/lib -DLIBEVENT_LIB_EXTRA=${CURRENTPATH}/lib -DLIBEVENT_LIB_OPENSSL=${CURRENTPATH}/lib -DLIBEVENT_LIB_PTHREADS=${CURRENTPATH}/lib -DOPENSSL_INCLUDE_DIR=${CURRENTPATH}/include -DOPENSSL_SSL_LIBRARY=${CURRENTPATH}/lib/libssl.a -DOPENSSL_CRYPTO_LIBRARY=${CURRENTPATH}/lib/libcrypto.a -DOPENSSL_ROOT_DIR=${CURRENTPATH} -DLIBEVENT_LIB=${CURRENTPATH}/lib/libevent.a
/Applications/CMake.app/Contents/bin/cmake . -D_LIBMEGA_LIBRARIES= -DLIBMEGA_PUBLIC_INCLUDE_DIR=../../../../../include -DCMAKE_SYSROOT=${CURRENTPATH} -DCMAKE_TOOLCHAIN_FILE=${CURRENTPATH}/iOS.cmake -DIOS_PLATFORM=OS -DIOS_PLATFORM_TYPE=${ARCH} -DBUILD_ARM64=1 -DCMAKE_LIBRARY_PATH=${CURRENTPATH}/lib -DCMAKE_INCLUDE_PATH=${CURRENTPATH}/include -DLIBEVENT_INCLUDE_DIRS=${CURRENTPATH}/include/libevent -DLIBEVENT_LIB_CORE=${CURRENTPATH}/lib -DLIBEVENT_LIB_EXTRA=${CURRENTPATH}/lib -DLIBEVENT_LIB_OPENSSL=${CURRENTPATH}/lib -DLIBEVENT_LIB_PTHREADS=${CURRENTPATH}/lib -DOPENSSL_INCLUDE_DIR=${CURRENTPATH}/include -DOPENSSL_SSL_LIBRARY=${CURRENTPATH}/lib/libssl.a -DOPENSSL_CRYPTO_LIBRARY=${CURRENTPATH}/lib/libcrypto.a -DOPENSSL_ROOT_DIR=${CURRENTPATH} -DLIBEVENT_LIB=${CURRENTPATH}/lib/libevent.a ${ENABLE_WEBRTC}

elif [ "${ARCH}" == "i386" ]; then

IOSC_HOST_TRIPLET=${ARCH}-apple-darwin

/Applications/CMake.app/Contents/bin/cmake . -D_LIBMEGA_LIBRARIES= -DLIBMEGA_PUBLIC_INCLUDE_DIR=../../../../../include -DCMAKE_SYSROOT=${CURRENTPATH} -DCMAKE_TOOLCHAIN_FILE=${CURRENTPATH}/iOS.cmake -DIOS_PLATFORM=SIMULATOR -DCMAKE_LIBRARY_PATH=${CURRENTPATH}/lib -DCMAKE_INCLUDE_PATH=${CURRENTPATH}/include -DLIBEVENT_INCLUDE_DIRS=${CURRENTPATH}/include/libevent -DLIBEVENT_LIB_CORE=${CURRENTPATH}/lib -DLIBEVENT_LIB_EXTRA=${CURRENTPATH}/lib -DLIBEVENT_LIB_OPENSSL=${CURRENTPATH}/lib -DLIBEVENT_LIB_PTHREADS=${CURRENTPATH}/lib -DOPENSSL_INCLUDE_DIR=${CURRENTPATH}/include -DOPENSSL_SSL_LIBRARY=${CURRENTPATH}/lib/libssl.a -DOPENSSL_CRYPTO_LIBRARY=${CURRENTPATH}/lib/libcrypto.a -DOPENSSL_ROOT_DIR=${CURRENTPATH} -DLIBEVENT_LIB=${CURRENTPATH}/lib/libevent.a
/Applications/CMake.app/Contents/bin/cmake . -D_LIBMEGA_LIBRARIES= -DLIBMEGA_PUBLIC_INCLUDE_DIR=../../../../../include -DCMAKE_SYSROOT=${CURRENTPATH} -DCMAKE_TOOLCHAIN_FILE=${CURRENTPATH}/iOS.cmake -DIOS_PLATFORM=SIMULATOR -DCMAKE_LIBRARY_PATH=${CURRENTPATH}/lib -DCMAKE_INCLUDE_PATH=${CURRENTPATH}/include -DLIBEVENT_INCLUDE_DIRS=${CURRENTPATH}/include/libevent -DLIBEVENT_LIB_CORE=${CURRENTPATH}/lib -DLIBEVENT_LIB_EXTRA=${CURRENTPATH}/lib -DLIBEVENT_LIB_OPENSSL=${CURRENTPATH}/lib -DLIBEVENT_LIB_PTHREADS=${CURRENTPATH}/lib -DOPENSSL_INCLUDE_DIR=${CURRENTPATH}/include -DOPENSSL_SSL_LIBRARY=${CURRENTPATH}/lib/libssl.a -DOPENSSL_CRYPTO_LIBRARY=${CURRENTPATH}/lib/libcrypto.a -DOPENSSL_ROOT_DIR=${CURRENTPATH} -DLIBEVENT_LIB=${CURRENTPATH}/lib/libevent.a ${ENABLE_WEBRTC}

elif [ "${ARCH}" == "x86_64" ]; then

IOSC_HOST_TRIPLET=${ARCH}-apple-darwin

/Applications/CMake.app/Contents/bin/cmake . -D_LIBMEGA_LIBRARIES= -DLIBMEGA_PUBLIC_INCLUDE_DIR=../../../../../include -DCMAKE_SYSROOT=${CURRENTPATH} -DCMAKE_TOOLCHAIN_FILE=${CURRENTPATH}/iOS.cmake -DIOS_PLATFORM=SIMULATOR64 -DCMAKE_LIBRARY_PATH=${CURRENTPATH}/lib -DCMAKE_INCLUDE_PATH=${CURRENTPATH}/include -DLIBEVENT_INCLUDE_DIRS=${CURRENTPATH}/include/libevent -DLIBEVENT_LIB_CORE=${CURRENTPATH}/lib -DLIBEVENT_LIB_EXTRA=${CURRENTPATH}/lib -DLIBEVENT_LIB_OPENSSL=${CURRENTPATH}/lib -DLIBEVENT_LIB_PTHREADS=${CURRENTPATH}/lib -DOPENSSL_INCLUDE_DIR=${CURRENTPATH}/include -DOPENSSL_SSL_LIBRARY=${CURRENTPATH}/lib/libssl.a -DOPENSSL_CRYPTO_LIBRARY=${CURRENTPATH}/lib/libcrypto.a -DOPENSSL_ROOT_DIR=${CURRENTPATH} -DLIBEVENT_LIB=${CURRENTPATH}/lib/libevent.a
/Applications/CMake.app/Contents/bin/cmake . -D_LIBMEGA_LIBRARIES= -DLIBMEGA_PUBLIC_INCLUDE_DIR=../../../../../include -DCMAKE_SYSROOT=${CURRENTPATH} -DCMAKE_TOOLCHAIN_FILE=${CURRENTPATH}/iOS.cmake -DIOS_PLATFORM=SIMULATOR64 -DCMAKE_LIBRARY_PATH=${CURRENTPATH}/lib -DCMAKE_INCLUDE_PATH=${CURRENTPATH}/include -DLIBEVENT_INCLUDE_DIRS=${CURRENTPATH}/include/libevent -DLIBEVENT_LIB_CORE=${CURRENTPATH}/lib -DLIBEVENT_LIB_EXTRA=${CURRENTPATH}/lib -DLIBEVENT_LIB_OPENSSL=${CURRENTPATH}/lib -DLIBEVENT_LIB_PTHREADS=${CURRENTPATH}/lib -DOPENSSL_INCLUDE_DIR=${CURRENTPATH}/include -DOPENSSL_SSL_LIBRARY=${CURRENTPATH}/lib/libssl.a -DOPENSSL_CRYPTO_LIBRARY=${CURRENTPATH}/lib/libcrypto.a -DOPENSSL_ROOT_DIR=${CURRENTPATH} -DLIBEVENT_LIB=${CURRENTPATH}/lib/libevent.a ${ENABLE_WEBRTC}

else

IOSC_HOST_TRIPLET=${ARCH}-apple-darwin

/Applications/CMake.app/Contents/bin/cmake . -D_LIBMEGA_LIBRARIES= -DLIBMEGA_PUBLIC_INCLUDE_DIR=../../../../../include -DCMAKE_SYSROOT=${CURRENTPATH} -DCMAKE_TOOLCHAIN_FILE=${CURRENTPATH}/iOS.cmake -DIOS_PLATFORM=OS -DIOS_PLATFORM_TYPE=${ARCH} -DCMAKE_LIBRARY_PATH=${CURRENTPATH}/lib -DCMAKE_INCLUDE_PATH=${CURRENTPATH}/include -DLIBEVENT_INCLUDE_DIRS=${CURRENTPATH}/include/libevent -DLIBEVENT_LIB_CORE=${CURRENTPATH}/lib -DLIBEVENT_LIB_EXTRA=${CURRENTPATH}/lib -DLIBEVENT_LIB_OPENSSL=${CURRENTPATH}/lib -DLIBEVENT_LIB_PTHREADS=${CURRENTPATH}/lib -DOPENSSL_INCLUDE_DIR=${CURRENTPATH}/include -DOPENSSL_SSL_LIBRARY=${CURRENTPATH}/lib/libssl.a -DOPENSSL_CRYPTO_LIBRARY=${CURRENTPATH}/lib/libcrypto.a -DOPENSSL_ROOT_DIR=${CURRENTPATH} -DLIBEVENT_LIB=${CURRENTPATH}/lib/libevent.a
/Applications/CMake.app/Contents/bin/cmake . -D_LIBMEGA_LIBRARIES= -DLIBMEGA_PUBLIC_INCLUDE_DIR=../../../../../include -DCMAKE_SYSROOT=${CURRENTPATH} -DCMAKE_TOOLCHAIN_FILE=${CURRENTPATH}/iOS.cmake -DIOS_PLATFORM=OS -DIOS_PLATFORM_TYPE=${ARCH} -DCMAKE_LIBRARY_PATH=${CURRENTPATH}/lib -DCMAKE_INCLUDE_PATH=${CURRENTPATH}/include -DLIBEVENT_INCLUDE_DIRS=${CURRENTPATH}/include/libevent -DLIBEVENT_LIB_CORE=${CURRENTPATH}/lib -DLIBEVENT_LIB_EXTRA=${CURRENTPATH}/lib -DLIBEVENT_LIB_OPENSSL=${CURRENTPATH}/lib -DLIBEVENT_LIB_PTHREADS=${CURRENTPATH}/lib -DOPENSSL_INCLUDE_DIR=${CURRENTPATH}/include -DOPENSSL_SSL_LIBRARY=${CURRENTPATH}/lib/libssl.a -DOPENSSL_CRYPTO_LIBRARY=${CURRENTPATH}/lib/libcrypto.a -DOPENSSL_ROOT_DIR=${CURRENTPATH} -DLIBEVENT_LIB=${CURRENTPATH}/lib/libevent.a ${ENABLE_WEBRTC}
fi

CMAKE_XCOMPILE_ARGS="-DCMAKE_TOOLCHAIN_FILE=$IOSC_CMAKE_TOOLCHAIN -DCMAKE_INSTALL_PREFIX=$IOSC_BUILDROOT"
Expand All @@ -108,9 +113,12 @@ CONFIGURE_XCOMPILE_ARGS="--prefix=$IOSC_BUILDROOT --host=$IOSC_HOST_TRIPLET"
make -j8

cp -f libkarere.a ${CURRENTPATH}/bin/${PLATFORM}${SDKVERSION}-${ARCH}.sdk/libkarere.a
cp -f rtcModule/base/libservices.a ${CURRENTPATH}/bin/${PLATFORM}${SDKVERSION}-${ARCH}.sdk/libservices.a
cp -f base/libservices.a ${CURRENTPATH}/bin/${PLATFORM}${SDKVERSION}-${ARCH}.sdk/libservices.a

if [ "$1" == "--enable-webrtc" ]; then
cp -f rtcModule/base/strophe/libstrophe.a ${CURRENTPATH}/bin/${PLATFORM}${SDKVERSION}-${ARCH}.sdk/libstrophe.a
cp -f rtcModule/librtcmodule.a ${CURRENTPATH}/bin/${PLATFORM}${SDKVERSION}-${ARCH}.sdk/librtcmodule.a
fi

popd

Expand All @@ -120,8 +128,11 @@ done
mkdir lib || true
lipo -create ${CURRENTPATH}/bin/iPhoneSimulator${SDKVERSION}-i386.sdk/libkarere.a ${CURRENTPATH}/bin/iPhoneSimulator${SDKVERSION}-x86_64.sdk/libkarere.a ${CURRENTPATH}/bin/iPhoneOS${SDKVERSION}-armv7.sdk/libkarere.a ${CURRENTPATH}/bin/iPhoneOS${SDKVERSION}-armv7s.sdk/libkarere.a ${CURRENTPATH}/bin/iPhoneOS${SDKVERSION}-arm64.sdk/libkarere.a -output ${CURRENTPATH}/lib/libkarere.a
lipo -create ${CURRENTPATH}/bin/iPhoneSimulator${SDKVERSION}-i386.sdk/libservices.a ${CURRENTPATH}/bin/iPhoneSimulator${SDKVERSION}-x86_64.sdk/libservices.a ${CURRENTPATH}/bin/iPhoneOS${SDKVERSION}-armv7.sdk/libservices.a ${CURRENTPATH}/bin/iPhoneOS${SDKVERSION}-armv7s.sdk/libservices.a ${CURRENTPATH}/bin/iPhoneOS${SDKVERSION}-arm64.sdk/libservices.a -output ${CURRENTPATH}/lib/libservices.a

if [ "$1" == "--enable-webrtc" ]; then
lipo -create ${CURRENTPATH}/bin/iPhoneSimulator${SDKVERSION}-i386.sdk/libstrophe.a ${CURRENTPATH}/bin/iPhoneSimulator${SDKVERSION}-x86_64.sdk/libstrophe.a ${CURRENTPATH}/bin/iPhoneOS${SDKVERSION}-armv7.sdk/libstrophe.a ${CURRENTPATH}/bin/iPhoneOS${SDKVERSION}-armv7s.sdk/libstrophe.a ${CURRENTPATH}/bin/iPhoneOS${SDKVERSION}-arm64.sdk/libstrophe.a -output ${CURRENTPATH}/lib/libstrophe.a
lipo -create ${CURRENTPATH}/bin/iPhoneSimulator${SDKVERSION}-i386.sdk/librtcmodule.a ${CURRENTPATH}/bin/iPhoneSimulator${SDKVERSION}-x86_64.sdk/librtcmodule.a ${CURRENTPATH}/bin/iPhoneOS${SDKVERSION}-armv7.sdk/librtcmodule.a ${CURRENTPATH}/bin/iPhoneOS${SDKVERSION}-armv7s.sdk/librtcmodule.a ${CURRENTPATH}/bin/iPhoneOS${SDKVERSION}-arm64.sdk/librtcmodule.a -output ${CURRENTPATH}/lib/librtcmodule.a
fi

mkdir -p include || true
cp -f karere-native/src/megachatapi.h include/
Expand Down
2 changes: 1 addition & 1 deletion bindings/ios/3rdparty/build-openssl.sh
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/bin/sh

VERSION="1.0.2h"
VERSION="1.0.2j"
SDKVERSION=`xcrun -sdk iphoneos --show-sdk-version`


Expand Down
2 changes: 0 additions & 2 deletions bindings/ios/3rdparty/cryptopp.xcodeproj/project.pbxproj
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,6 @@
9426684F19DAC5A300B63EB5 /* cmac.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 942667CA19DAC5A300B63EB5 /* cmac.cpp */; };
9426685019DAC5A300B63EB5 /* cpu.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 942667CB19DAC5A300B63EB5 /* cpu.cpp */; };
9426685119DAC5A300B63EB5 /* crc.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 942667CC19DAC5A300B63EB5 /* crc.cpp */; };
9426685219DAC5A300B63EB5 /* cryptlib_bds.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 942667CD19DAC5A300B63EB5 /* cryptlib_bds.cpp */; };
9426685319DAC5A300B63EB5 /* cryptlib.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 942667CE19DAC5A300B63EB5 /* cryptlib.cpp */; };
9426685419DAC5A300B63EB5 /* default.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 942667CF19DAC5A300B63EB5 /* default.cpp */; };
9426685519DAC5A300B63EB5 /* des.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 942667D019DAC5A300B63EB5 /* des.cpp */; };
Expand Down Expand Up @@ -866,7 +865,6 @@
9426685E19DAC5A300B63EB5 /* elgamal.cpp in Sources */,
9426687919DAC5A300B63EB5 /* md5.cpp in Sources */,
9426685019DAC5A300B63EB5 /* cpu.cpp in Sources */,
9426685219DAC5A300B63EB5 /* cryptlib_bds.cpp in Sources */,
9426689E19DAC5A300B63EB5 /* squaretb.cpp in Sources */,
9426688519DAC5A300B63EB5 /* pubkey.cpp in Sources */,
9426689719DAC5A300B63EB5 /* shark.cpp in Sources */,
Expand Down
8 changes: 7 additions & 1 deletion bindings/ios/MEGAAccountDetails.mm
Original file line number Diff line number Diff line change
Expand Up @@ -90,7 +90,13 @@ - (NSInteger)subscriptionRenewTime {
}

- (NSString *)subscriptionMethod {
return self.accountDetails ? [[NSString alloc] initWithUTF8String:self.accountDetails->getSubscriptionMethod()] : nil;
const char *val = self.accountDetails->getSubscriptionMethod();
if (!val) return nil;

NSString *ret = [[NSString alloc] initWithUTF8String:val];

delete [] val;
return ret;
}

- (NSString *)subscriptionCycle {
Expand Down
2 changes: 1 addition & 1 deletion bindings/ios/MEGANode.mm
Original file line number Diff line number Diff line change
Expand Up @@ -75,7 +75,7 @@ - (NSString *)base64Handle {

NSString *ret = [[NSString alloc] initWithUTF8String:val];

delete val;
delete [] val;
return ret;
}

Expand Down
11 changes: 10 additions & 1 deletion bindings/ios/MEGARequest.h
Original file line number Diff line number Diff line change
Expand Up @@ -90,7 +90,16 @@ typedef NS_ENUM (NSInteger, MEGARequestType) {
MEGARequestTypeGetCancelLink,
MEGARequestTypeConfirmCancelLink,
MEGARequestTypeGetChangeEmailLink,
MEGARequestTypeConfirmChangeEmailLink
MEGARequestTypeConfirmChangeEmailLink,
MEGARequestTypeChatUpdatePermissions,
MEGARequestTypeChatTruncate,
MEGARequestTypeChatSetTitle,
MEGARequestTypeSetMaxConnections,
MEGARequestTypePauseTransfer,
MEGARequestTypeMoveTransfer,
MEGARequestTypeChatPresenceUrl,
MEGARequestTypeRegisterPushNotification,
MEGARequestTypeGetUserEmail
};

typedef NS_ENUM (NSInteger, MEGANodeAccessLevel) {
Expand Down
4 changes: 2 additions & 2 deletions bindings/ios/MEGASDK.xcodeproj/project.pbxproj
Original file line number Diff line number Diff line change
Expand Up @@ -755,7 +755,7 @@
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
IPHONEOS_DEPLOYMENT_TARGET = 9.3;
IPHONEOS_DEPLOYMENT_TARGET = 10.2;
MTL_ENABLE_DEBUG_INFO = YES;
ONLY_ACTIVE_ARCH = YES;
SDKROOT = iphoneos;
Expand Down Expand Up @@ -790,7 +790,7 @@
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
IPHONEOS_DEPLOYMENT_TARGET = 9.3;
IPHONEOS_DEPLOYMENT_TARGET = 10.2;
MTL_ENABLE_DEBUG_INFO = NO;
SDKROOT = iphoneos;
VALIDATE_PRODUCT = YES;
Expand Down
Loading

0 comments on commit e8e66e9

Please sign in to comment.