[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Building for Android
[Thread Prev] | [Thread Next]
- Subject: Re: Building for Android
- From: Matteo <matpen@xxxxxxx>
- Reply-to: libssh@xxxxxxxxxx
- Date: Tue, 24 Nov 2015 00:13:00 +0100
- To: libssh@xxxxxxxxxx
Aris, I found out that using the function channel->readNonBlocking() also leads to a crash. This strangely happens regardless of the presence of ssh_set_log_callback(callback). Please find a stacktrace attached. As a workaround I disabled all logging functions in log.c and this seems to work. However, this is only a temporary solution. Regards, Matteo On 11/21/2015 07:03 PM, Matteo wrote: > More good news: it seems that, apart from the problem we are discussing, > the rest of the library works correctly. > At least according to the short test below, the results are as expected > (both on device and emulator) and I get a list of files from the server. > > void callback(int priority, const char *function, const char *buffer, > void *userdata) > { > //this can be empty > } > > void MainWindow::test() > { > ssh::Session session; > session.setOption(SSH_OPTIONS_TIMEOUT, 20); > session.setOption(SSH_OPTIONS_HOST, "192.168.0.13"); > session.setOption(SSH_OPTIONS_USER, "root"); > session.setOption(SSH_OPTIONS_PORT, 2222); > > session.setOption(SSH_OPTIONS_LOG_VERBOSITY, 2); > ssh_set_log_level(SSH_LOG_FUNCTIONS); > ssh_set_log_callback(callback); > > if (session.connect() != SSH_OK) { > message("cannot connect"); > return; > } else { > message("connected"); > } > > QString pass = "Secret123"; > QByteArray passArray = pass.toUtf8(); > if (session.userauthPassword(passArray.data()) != SSH_AUTH_SUCCESS) { > message("auth failed"); > return; > } else { > message("auth succeeded"); > } > > ssh::Channel* channel = new ssh::Channel(session); > if (!channel) { > message("cannot obtain channel"); > return; > } else { > message("channel obtained"); > } > > if (channel->openSession() != SSH_OK) > message("cannot open channel session"); > else > message("channel opened."); > > QByteArray commandArray = QString("ls").toUtf8(); > if (channel->requestExec(commandArray.data()) != SSH_OK) { > message("command failed"); > } else { > message("command succeeded"); > } > > message("Reading stdout"); > QByteArray result; > char buffer[256]; > int nbytes = channel->read(buffer, sizeof(buffer), false, -1); > message("read " + QString::number(nbytes) + " bytes"); > while (nbytes > 0) > { > result.append(buffer); > nbytes = channel->read(buffer, sizeof(buffer), false, -1); > message("read " + QString::number(nbytes) + " bytes"); > } > message("Command output (" + QString::number(result.length()) + "):"); > message(result); > > message("Reading stderr"); > QByteArray err; > nbytes = channel->read(buffer, sizeof(buffer), true, -1); > message("read " + QString::number(nbytes) + " bytes"); > while (nbytes > 0) > { > err.append(buffer); > nbytes = channel->read(buffer, sizeof(buffer), true, -1); > message("read " + QString::number(nbytes) + " bytes"); > } > message("Stderr (" + QString::number(err.length()) + "):"); > message(err); > > channel->close(); > delete channel; > session.disconnect(); > } > > > > On 11/21/2015 02:32 PM, Matteo wrote: >> Hi Aris, >> >> Yes, I get the very same behavior in the Android emulator (ARMv7, didn't >> try x86 yet). >> >> App crashes if ssh_set_log_callback() is commented out, but works otherwise. >> This does not change if verbosity is set to -1 (or to 0). >> >> Please find the apk under the link below, let me know if you want the >> source code, too. >> https://app.box.com/s/q9aivh4etopcbhjbabqs6d53t2qyazwm >> Matteo >> >> >> On 11/21/2015 10:24 AM, Aris Adamantiadis wrote: >>> Hi Matteo, >>> >>> This is really strange. All _ssh_log is doing is preparing a buffer, >>> it's not even the function that's writing on stderr. Does it still >>> happen if you set the verbosity to -1 (absolutely silent) ? >>> >>> Can you reproduce the issue in the android emulator? if so, could you >>> share the APK ? >>> >>> Thanks, >>> >>> Aris >>> >>> On 21/11/15 03:24, Matteo wrote: >>>> Hi Aris, >>>> >>>> Thank you for your interest, and for a great library. >>>> >>>> I have good news: it seems to work now. >>>> And the funny thing is, it seems to have something to do with logging. >>>> >>>> Quick recap here, but feel free to ask for more informations: >>>> The problem is that, unfortunately, my device is not rooted, and thus >>>> access to logs and stacktraces is limited. >>>> So, while trying to find an efficient way to log library events, I >>>> stumbled upon the ssh_set_log_callback() function. >>>> That seemed perfect in this case, as I can redirect the log messages to >>>> screen and to a "private" log file that the app has access to. >>>> >>>> So I quickly implemented it into the tester program and... to my >>>> surprise, no crash anymore! >>>> I could successfully establish a connection, as confirmed also by the >>>> server logs. >>>> >>>> Here the working code: >>>> void callback(int priority, const char *function, const char *buffer, >>>> void *userdata) >>>> { >>>> //this function can be empty, does not make any difference >>>> } >>>> >>>> void MainWindow::test() >>>> { >>>> ssh::Session session; >>>> session.setOption(SSH_OPTIONS_TIMEOUT, 20); >>>> session.setOption(SSH_OPTIONS_HOST, "192.168.0.13"); >>>> session.setOption(SSH_OPTIONS_USER, "root"); >>>> session.setOption(SSH_OPTIONS_PORT, 2222); >>>> >>>> //added these lines for logging >>>> session.setOption(SSH_OPTIONS_LOG_VERBOSITY, 2); >>>> ssh_set_log_level(SSH_LOG_FUNCTIONS); >>>> ssh_set_log_callback(callback); //commenting out this line causes >>>> the crash >>>> >>>> session.connect(); >>>> } >>>> >>>> My guess is that libSSH is logging to some facility that, on Android, >>>> the app does not have access to. >>>> Please find attached an excerpt from the Android logcat with a stacktrace. >>>> The log starts with a "touch event" corresponding to pushing the button >>>> connected to MainWindow::test(), and ends with the app crashing. >>>> From the stacktrace, one can see that the last called function seems to >>>> be _ssh_log(). >>>> >>>> Tomorrow I will try to slowly expand the test to a more complete use case. >>>> >>>> Regards >>>> Matteo >>>> >>>> On 11/20/2015 07:34 PM, Aris Adamantiadis wrote: >>>>> Hi Matteo, >>>>> >>>>> You did a great work compiling libssh for android. I have no idea what's >>>>> causing the crash, it would greatly help if you could provide us with a >>>>> stacktrace. Running libssh in verbose mode and capturing the output >>>>> would also help figuring out what works . >>>>> >>>>> Aris >>>>> >>>>> On 20/11/15 18:46, Matteo wrote: >>>>>> After several attempts, I could get a successful build. >>>>>> However, when I test it, it segfaults. >>>>>> >>>>>> In the following, I will try to explain what I did. >>>>>> I will try to be brief but, if there is any interest, I can provide >>>>>> more detailed instructions (or even a script that automates the whole >>>>>> process). >>>>>> >>>>>> 0) The build environment is as follows: >>>>>> - Ubuntu 15.04 64 bit with 3.19.0-33 kernel >>>>>> - cmake 3.0.2 and gcc 4.9.2 (both from repos) >>>>>> - Android NDK r9d >>>>>> - OpenSSL 1.0.2d >>>>>> - libSSH 0.7.2 >>>>>> - Qt 5.4 and QtCreator 3.3.0 >>>>>> - Target platform arm-linux-androideabi-4.8 API 19 >>>>>> - Target device Samsung Galaxy S5 klte >>>>>> >>>>>> 1) First, we need to build the dependencies. >>>>>> zlib is already part of the NDK, so we only need to cross-compile OpenSSL. >>>>>> This is easily accomplished by following the instructions found here: >>>>>> https://wiki.openssl.org/index.php/Android >>>>>> After installation I symlinked libcrypto.so, libssl.so and the include >>>>>> files inside the NDK "usr" folder (so that they can easily be linked >>>>>> against). >>>>>> >>>>>> 2) Following Daniel Kroker's advice, I added the taka-no-me toolchain >>>>>> into the libSSH folder. >>>>>> Before I could complete the build, however, I had to solve following >>>>>> problems. >>>>>> >>>>>> 3) My version of cmake has a bug that was fixed in 3.1 an later versions. >>>>>> This prevents it to correctly detect OpenSSL 1.0.2 (it is reported to >>>>>> work with earlier versions, though). >>>>>> To fix it, I manually applied this patch: >>>>>> https://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=c5d9a8283cfac15b4a5a07f18d5eb10c1f388505 >>>>>> >>>>>> 4) The cmake configuration of libSSH contains a TRY_RUN() step. >>>>>> As far as I could understand, this is supposed to run a dummy test to >>>>>> check if a certain feature works correctly. >>>>>> This is obviously not possible in cross-compilation mode: fortunately, >>>>>> the error issued by cmake contains an explanation on how to fix it. >>>>>> In the libSSH folder one needs to create a file (named e.g. >>>>>> "TryRunResults.cmake") with following content: >>>>>> set( THREADS_PTHREAD_ARG 0 >>>>>> CACHE STRING "Result from TRY_RUN" FORCE) >>>>>> >>>>>> 5) The build still fails with error "implicit declaration of function >>>>>> 'getpwuid_r'" >>>>>> This function is supposed to return informations about the current >>>>>> user, like username and home directory. >>>>>> This has no equivalent on android, so I needed to change these two >>>>>> functions in the file "misc.c": >>>>>> char *ssh_get_user_home_dir(void) >>>>>> char *ssh_get_local_username(void) >>>>>> For my tests, I resigned to return hard-coded values, but more work is >>>>>> required for a general solution. >>>>>> >>>>>> 6) Now the build completes successfully. These are the command issued: >>>>>> cd /path/to/downloaded/libSSH/ >>>>>> mkdir build >>>>>> cd build >>>>>> cmake \ >>>>>> -C ../TryRunResults.cmake \ >>>>>> -DCMAKE_INSTALL_PREFIX=/opt/libssh-android \ >>>>>> -DWITH_INTERNAL_DOC=OFF \ >>>>>> -DWITH_STATIC_LIB=ON \ >>>>>> -DWITH_TESTING=OFF \ >>>>>> -DWITH_SERVER=OFF \ >>>>>> -DWITH_EXAMPLES=OFF \ >>>>>> -DCMAKE_BUILD_TYPE=Release \ >>>>>> -DCMAKE_TOOLCHAIN_FILE=../android.toolchain.cmake \ >>>>>> -DANDROID_NDK="$ANDROID_NDK_ROOT" \ >>>>>> -DANDROID_NATIVE_API_LEVEL=android-19 \ >>>>>> -DANDROID_TOOLCHAIN_NAME=arm-linux-androideabi-4.8 \ >>>>>> -DANDROID_ABI="armeabi-v7a with NEON" \ >>>>>> .. >>>>>> cmake --build . >>>>>> >>>>>> 7) Before deployment, there are two more obstacles. >>>>>> First, the Android NDK doesnt provide OpenSSL, but the library is >>>>>> installed in Android and loaded by default (taking precedence over >>>>>> libraries packaged in the APK). >>>>>> This means that we have to rename the libcrypto.so and libssl.so to >>>>>> something else, and repeat the linking step. However, see below. >>>>>> (this problem is documented here: >>>>>> https://mta.openssl.org/pipermail/openssl-users/2015-April/001183.html) >>>>>> Second, Android does not support loading of versioned libraries >>>>>> (meaning that e.g. libssh.so is a symlink to libssh.so.4.4.0). >>>>>> This means that we have to configure OpenSSL and libSSH to produce >>>>>> non-versioned files, and relink. However, see below. >>>>>> (this problem is documented here: >>>>>> https://bugreports.qt.io/browse/QTCREATORBUG-11062) >>>>>> The link above also provided a solution (hack?) for both problems, >>>>>> which I implemented with following BASH code: >>>>>> local subs=() >>>>>> subs+=(-e >>>>>> 's/libcrypto.so.1.0.0/libcryptm.so\x00\x00\x00\x00\x00\x00/g') >>>>>> subs+=(-e 's/libcrypto.so/libcryptm.so/g') >>>>>> subs+=(-e 's/libssl.so.1.0.0/libssm.so\x00\x00\x00\x00\x00\x00/g') >>>>>> subs+=(-e 's/libssl.so/libssm.so/g') >>>>>> subs+=(-e 's/libssh.so.4.4.0/libssh.so\x00\x00\x00\x00\x00\x00/g') >>>>>> subs+=(-e 's/libssh.so.4/libssh.so\x00\x00/g') >>>>>> sed "${subs[@]}" "/opt/openssl/android-19/lib/libcrypto.so" > >>>>>> "/home/matteo/deploy/libcryptm.so" >>>>>> sed "${subs[@]}" "/opt/openssl/android-19/lib/libssl.so" > >>>>>> "/home/matteo/deploy/libssm.so" >>>>>> sed "${subs[@]}" "/opt/libssh-android/lib/libssh.so" > >>>>>> "/home/matteo/deploy/libssh.so" >>>>>> chmod a+x /home/matteo/deploy/* >>>>>> >>>>>> 8) I prepared a very simple test project in Qt. >>>>>> Starting from the widget-based template for android, I added a >>>>>> function that, when clicking on a QPushButton, attempts to connect to >>>>>> a ssh server in my LAN. >>>>>> void MainWindow::test() >>>>>> { >>>>>> ssh::Session session; >>>>>> session.setOption(SSH_OPTIONS_TIMEOUT, 20); >>>>>> session.setOption(SSH_OPTIONS_HOST, "192.168.0.13"); >>>>>> session.setOption(SSH_OPTIONS_USER, "root"); >>>>>> session.setOption(SSH_OPTIONS_PORT, 2222); >>>>>> >>>>>> session.connect(); >>>>>> } >>>>>> >>>>>> This works if "session.connect();" is commented out, but the program >>>>>> crashes otherwise, with error: >>>>>> F/libc (22871): Fatal signal 11 (SIGSEGV), code 1, fault addr >>>>>> 0x10100 in tid 23039 (QtThread) >>>>>> Note that the very same code works in "desktop mode". >>>>>> >>>>>> Right now I am out of ideas on how to debug this, so if someone can >>>>>> give an hint, I would much appreciate it. >>>>>> As I said above, I can provide more details and code upon request. >>>>>> >>>>>> Thanks in advance >>>>>> Matteo >>>>>> >>>>>> On 11/19/2015 09:28 AM, Daniel Kroker wrote: >>>>>>> Hi, >>>>>>> >>>>>>> its not so easy to build libssh for android. you need the android >>>>>>> toolchain look at >>>>>>> https://github.com/taka-no-me/android-cmake/blob/master/android.toolchain.cmake >>>>>>> >>>>>>> Am 19.11.2015 um 02:35 schrieb Matteo: >>>>>>>> Hi all, >>>>>>>> >>>>>>>> My project depends on libssh and I am trying to port it to Android. >>>>>>>> >>>>>>>> After some research in the Internet, it appears that I have to >>>>>>>> cross-compile libssh by using the Android NDK. >>>>>>>> However, I could not find any good sources of information about the >>>>>>>> topic. >>>>>>>> >>>>>>>> Could somebody please provide a starting point for me? >>>>>>>> >>>>>>>> Thank you in advance. >>>>>>>> Mat >>>>>>>> >>>>>>>> >
I/InputDispatcher( 784): Delivering touch to (29929): action: 0x1, toolType: 1 D/PanelView( 1175): There is/are notification(s) W/ContextImpl( 784): Calling a method in the system process without a qualified user: android.app.ContextImpl.sendBroadcast:1629 com.android.server.InputMethodManagerService$6.run:2728 java.lang.Thread.run:818 <bottom of call stack> <bottom of call stack> D/PanelView( 1175): There is/are notification(s) D/SamsungIME( 1881): onWindowHidden W/ContextImpl( 1881): Calling a method in the system process without a qualified user: android.app.ContextImpl.sendBroadcast:1629 android.content.ContextWrapper.sendBroadcast:391 android.inputmethodservice.InputMethodService.sendInputViewShownState:417 android.inputmethodservice.InputMethodService.hideWindow:2093 android.inputmethodservice.InputMethodService.doHideWindow:2071 D/SSRM:a ( 784): DeviceInfo:: 000000000000 D/SSRM:a ( 784): SettingsAirViewInfo:: 000000000 D/Qt (29929): (null):0 ((null)): Found Metastream: KPX_CUSTOM_ICONS_4 D/Qt (29929): (null):0 ((null)): Found Metastream: KPX_GROUP_TREE_STATE W/Qt (29929): (null):0 ((null)): QObject::connect: No such signal MainWindow::commandFinished(bool) in ../../gui/android.cpp:30 W/Qt (29929): (null):0 ((null)): QObject::connect: (receiver name: 'MainWindow') D/StatusBar.NetworkController( 1175): refreshViews connected={ wifi } level=4 combinedSignalIconId=0x7f020492/com.android.systemui:drawable/stat_sys_wifi_signal_4 mobileLabel=Emergency calls only wifiLabel="UPC5613602"xxxxXXXXxxxxXXXX emergencyOnly=true combinedLabel="UPC5613602"xxxxXXXXxxxxXXXX mAirplaneMode=false mDataActivity=0 mPhoneSignalIconId=0x7f02042d/com.android.systemui:drawable/stat_sys_signal_4 mQSPhoneSignalIconId=0x7f020115/com.android.systemui:drawable/ic_qs_signal_4 mDataDirectionIconId=0x0/(null) mDataSignalIconId=0x7f02042d/com.android.systemui:drawable/stat_sys_signal_4 mDataTypeIconId=0x0/(null) mQSDataTypeIconId=0x0/(null) mNoSimIconId=0x0/(null) mWifiIconId=0x7f020492/com.android.systemui:drawable/stat_sys_wifi_signal_4 mQSWifiIconId=0x7f02012b/com.android.systemui:drawable/ic_qs_wifi_4 mWifiActivityIconId=0x7f020463/com.android.systemui:drawable/stat_sys_signal_inout mBluetoothTetherIconId=0x1080907/android:drawable/stat_sys_tether_bluetooth D/StatusBar.NetworkController( 1175): refreshSignalCluster - setNWBoosterIndicators(false) D/StatusBar.NetworkController( 1175): applyOpen D/StatusBar.NetworkController( 1175): refreshSignalCluster - setNWBoosterIndicators(false) D/StatusBar.NetworkController( 1175): applyOpen D/StatusBar.NetworkController( 1175): refreshSignalCluster - setNWBoosterIndicators(false) D/StatusBar.NetworkController( 1175): applyOpen D/StatusBar.NetworkController( 1175): refreshSignalCluster - setNWBoosterIndicators(false) D/StatusBar.NetworkController( 1175): applyOpen I/SSHDroid(15505): [30937] Nov 23 13:54:10 Child connection from ::ffff:192.168.0.13:37761 F/libc (29929): Fatal signal 11 (SIGSEGV), code 1, fault addr 0x10100 in tid 30942 (RemoteReader) I/SurfaceFlinger( 256): id=319 Removed InputMethod (5/9) I/SurfaceFlinger( 256): id=319 Removed InputMethod (-2/9) I/DEBUG ( 279): *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** I/DEBUG ( 279): Build fingerprint: 'samsung/kltedx/klte:5.0/LRX21T/G900FDXU1BOJ1:user/release-keys' I/DEBUG ( 279): Revision: '14' I/DEBUG ( 279): ABI: 'arm' I/DEBUG ( 279): pid: 29929, tid: 30942, name: RemoteReader >>> org.qtproject.example.AutoinstallGui <<< I/DEBUG ( 279): signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 0x10100 I/DEBUG ( 279): r0 00000003 r1 b3967838 r2 9acfe694 r3 00000000 I/DEBUG ( 279): r4 b6f70e04 r5 00000003 r6 b3967838 r7 00010101 I/DEBUG ( 279): r8 9acfe694 r9 b3967838 sl 00000015 fp 00000015 I/DEBUG ( 279): ip b3985cf8 sp 9acfe288 lr b3948413 pc 00010100 cpsr 40070030 I/DEBUG ( 279): I/DEBUG ( 279): backtrace: I/DEBUG ( 279): #00 pc 00010100 <unknown> I/DEBUG ( 279): #01 pc 00014411 /data/app/org.qtproject.example.AutoinstallGui-2/lib/arm/libssh.so (_ssh_log+132) I/DEBUG ( 279): #02 pc 00017e1b /data/app/org.qtproject.example.AutoinstallGui-2/lib/arm/libssh.so (ssh_packet_socket_callback+802) I/DEBUG ( 279): #03 pc 0001de3f /data/app/org.qtproject.example.AutoinstallGui-2/lib/arm/libssh.so (ssh_socket_pollcallback+582) I/DEBUG ( 279): #04 pc 0001b667 /data/app/org.qtproject.example.AutoinstallGui-2/lib/arm/libssh.so (ssh_poll_ctx_dopoll+150) I/DEBUG ( 279): #05 pc 0001c333 /data/app/org.qtproject.example.AutoinstallGui-2/lib/arm/libssh.so (ssh_handle_packets+62) I/DEBUG ( 279): #06 pc 0000dedf /data/app/org.qtproject.example.AutoinstallGui-2/lib/arm/libssh.so (ssh_channel_poll+58) I/DEBUG ( 279): #07 pc 0000e02b /data/app/org.qtproject.example.AutoinstallGui-2/lib/arm/libssh.so (ssh_channel_read_nonblocking+22) I/DEBUG ( 279): #08 pc 0001dd5c /data/app/org.qtproject.example.AutoinstallGui-2/lib/arm/libAutoinstallGui.so (ssh::Channel::readNonblocking(void*, unsigned int, bool)+72) I/DEBUG ( 279): #09 pc 0001f280 /data/app/org.qtproject.example.AutoinstallGui-2/lib/arm/libAutoinstallGui.so (RemoteProcess::readChannel(bool)+216) I/DEBUG ( 279): #10 pc 0001fd94 /data/app/org.qtproject.example.AutoinstallGui-2/lib/arm/libAutoinstallGui.so (RemoteReader::run()+40) I/DEBUG ( 279): #11 pc 00077621 /data/app/org.qtproject.example.AutoinstallGui-2/lib/arm/libQt5Core.so I/DEBUG ( 279): #12 pc 000137bb /system/lib/libc.so (__pthread_start(void*)+30) I/DEBUG ( 279): #13 pc 0001189b /system/lib/libc.so (__start_thread+6) I/DEBUG ( 279): I/DEBUG ( 279): Tombstone written to: /data/tombstones/tombstone_02 E/ ( 279): ro.product_ship = true E/ ( 279): ro.debug_level = 0x4f4c E/audit ( 2171): type=1701 msg=audit(1448283251.012:4319): auid=4294967295 uid=10075 gid=10075 ses=4294967295 subj=u:r:untrusted_app:s0 pid=30942 comm="RemoteReader" reason="memory violation" sig=11 W/ActivityManager( 784): Force finishing activity org.qtproject.example.AutoinstallGui/org.qtproject.qt5.android.bindings.QtActivity I/BootReceiver( 784): Copying /data/tombstones/tombstone_02 to DropBox (SYSTEM_TOMBSTONE) E/android.os.Debug( 784): ro.product_ship = true E/android.os.Debug( 784): ro.debug_level = 0x4f4c W/InputDispatcher( 784): channel ~ Consumer closed input channel or an error occurred. events=0x9 E/InputDispatcher( 784): channel ~ Channel is unrecoverably broken and will be disposed! W/InputDispatcher( 784): Attempted to unregister already unregistered input channel I/WindowState( 784): WIN DEATH: Window{9fc62fa u0 org.qtproject.example.AutoinstallGui/org.qtproject.qt5.android.bindings.QtActivity} I/Zygote ( 314): Process 29929 exited due to signal (11) I/WindowState( 784): WIN DEATH: Window{6fcd072 u0 SurfaceView} D/StatusBarManagerService( 784): manageDisableList userId=0 what=0x0 pkg=WindowManager.LayoutParams I/ActivityManager( 784): Process org.qtproject.example.AutoinstallGui (pid 29929)(adj 0) has died(80,348) I/SurfaceFlinger( 256): id=320 createSurf (49x49),1 flag=4, Application Error: org.qtproject.example.AutoinstallGui I/OpenGLRenderer( 784): Initialized EGL, version 1.4 I/OpenGLRenderer( 784): HWUI protection enabled for context , &this =0x9cc0afb0 ,&mEglDisplay = 1 , &mEglConfig = 8 D/CustomFrequencyManagerService( 784): acquireDVFSLockLocked : type : DVFS_MIN_LIMIT frequency : 1958400 uid : 1000 pid : 784 pkgName : ACTIVITY_RESUME_BOOSTER@6 W/ActivityManager( 784): mDVFSHelper.acquire() V/SamsungIME( 1881): onTrimMeomory Level = 20 W/ContextImpl(25757): Calling a method in the system process without a qualified user: android.app.ContextImpl.startService:1994 android.content.ContextWrapper.startService:533 android.content.ContextWrapper.startService:533 com.samsung.android.sm.common.SmartManagerReceiver.b:199 com.samsung.android.sm.common.SmartManagerReceiver.onReceive:93 D/ActivityManager( 784): startService callerProcessName:com.samsung.android.sm, calleePkgName: com.samsung.android.sm D/CrashAnrDetector( 784): Build: samsung/kltedx/klte:5.0/LRX21T/G900FDXU1BOJ1:user/release-keys D/CrashAnrDetector( 784): Hardware: MSM8974 D/CrashAnrDetector( 784): Revision: 14 D/CrashAnrDetector( 784): Bootloader: G900FDXU1BOJ1 D/CrashAnrDetector( 784): Radio: unknown D/CrashAnrDetector( 784): Kernel: Linux version 3.4.0-5983040 (dpi@SWDD6822) (gcc version 4.8 (GCC) ) #1 SMP PREEMPT Fri Oct 9 15:28:43 KST 2015 D/CrashAnrDetector( 784): D/CrashAnrDetector( 784): *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** D/CrashAnrDetector( 784): Build fingerprint: 'samsung/kltedx/klte:5.0/LRX21T/G900FDXU1BOJ1:user/release-keys' D/CrashAnrDetector( 784): Revision: '14' D/CrashAnrDetector( 784): ABI: 'arm' D/CrashAnrDetector( 784): pid: 29929, tid: 30942, name: RemoteReader >>> org.qtproject.example.AutoinstallGui <<< D/CrashAnrDetector( 784): signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 0x10100 D/CrashAnrDetector( 784): r0 00000003 r1 b3967838 r2 9acfe694 r3 00000000 D/CrashAnrDetector( 784): r4 b6f70e04 r5 00000003 r6 b3967838 r7 00010101 D/CrashAnrDetector( 784): r8 9acfe694 r9 b3967838 sl 00000015 fp 00000015 D/CrashAnrDetector( 784): ip b3985cf8 sp 9acfe288 lr b3948413 pc 00010100 cpsr 40070030 D/CrashAnrDetector( 784): d0 203a74656b636170 d1 7079742064616572 D/CrashAnrDetector( 784): d2 656c5b2034392065 d3 6461702c38323d6e D/CrashAnrDetector( 784): d4 0000000000000000 d5 0000000000000000 D/CrashAnrDetector( 784): d6 0000000000000000 d7 000002a000000000 D/CrashAnrDetector( 784): d8 3fe0000000000000 d9 409b6df0f0800000 D/CrashAnrDetector( 784): d10 405e4f0f0c000000 d11 404783c3e0000000 D/CrashAnrDetector( 784): d12 403b8787a0000000 d13 0000000000000000 D/CrashAnrDetector( 784): d14 0000000000000000 d15 3ff0000000000000 D/CrashAnrDetector( 784): d16 632c363d676e6964 d17 702c31323d706d6f D/CrashAnrDetector( 784): d18 da827999e2bb167c d19 5a8279995a827999 D/CrashAnrDetector( 784): d20 5a8279995a827999 d21 5a8279995a827999 D/CrashAnrDetector( 784): d22 cdc782e07168e1e9 d23 8045b382a4fccec9 D/CrashAnrDetector( 784): d24 3bec909456f775af d25 cf710f3e39d0444d D/CrashAnrDetector( 784): d26 ba15042626409893 d27 0826fed1b1a3d30a D/CrashAnrDetector( 784): d28 5a8279995a827999 d29 5a8279995a827999 D/CrashAnrDetector( 784): d30 0000000000000000 d31 0000000000000000 D/CrashAnrDetector( 784): scr 20000011 D/CrashAnrDetector( 784): D/CrashAnrDetector( 784): backtrace: D/CrashAnrDetector( 784): #00 pc 00010100 <unknown> D/CrashAnrDetector( 784): #01 pc 00014411 /data/app/org.qtproject.example.AutoinstallGui-2/lib/arm/libssh.so (_ssh_log+132) D/CrashAnrDetector( 784): #02 pc 00017e1b /data/app/org.qtproject.example.AutoinstallGui-2/lib/arm/libssh.so (ssh_packet_socket_callback+802) D/CrashAnrDetector( 784): #03 pc 0001de3f /data/app/org.qtproject.example.AutoinstallGui-2/lib/arm/libssh.so (ssh_socket_pollcallback+582) D/CrashAnrDetector( 784): #04 pc 0001b667 /data/app/org.qtproject.example.AutoinstallGui-2/lib/arm/libssh.so (ssh_poll_ctx_dopoll+150) D/CrashAnrDetector( 784): #05 pc 0001c333 /data/app/org.qtproject.example.AutoinstallGui-2/lib/arm/libssh.so (ssh_handle_packets+62) D/CrashAnrDetector( 784): #06 pc 0000dedf /data/app/org.qtproject.example.AutoinstallGui-2/lib/arm/libssh.so (ssh_channel_poll+58) D/CrashAnrDetector( 784): #07 pc 0000e02b /data/app/org.qtproject.example.AutoinstallGui-2/lib/arm/libssh.so (ssh_channel_read_nonblocking+22) D/CrashAnrDetector( 784): #08 pc 0001dd5c /data/app/org.qtproject.example.AutoinstallGui-2/lib/arm/libAutoinstallGui.so (ssh::Channel::readNonblocking(void*, unsigned int, bool)+72) D/CrashAnrDetector( 784): #09 pc 0001f280 /data/app/org.qtproject.example.AutoinstallGui-2/lib/arm/libAutoinstallGui.so (RemoteProcess::readChannel(bool)+216) D/CrashAnrDetector( 784): #10 pc 0001fd94 /data/app/org.qtproject.example.AutoinstallGui-2/lib/arm/libAutoinstallGui.so (RemoteReader::run()+40) D/CrashAnrDetector( 784): #11 pc 00077621 /data/app/org.qtproject.example.AutoinstallGui-2/lib/arm/libQt5Core.so D/CrashAnrDetector( 784): #12 pc 000137bb /system/lib/libc.so (__pthread_start(void*)+30) D/CrashAnrDetector( 784): #13 pc 0001189b /system/lib/libc.so (__start_thread+6) D/CrashAnrDetector( 784): D/CrashAnrDetector( 784): stack: D/CrashAnrDetector( 784): 9acfe248 00000015 D/CrashAnrDetector( 784): 9acfe24c b6f16a61 /system/lib/libc.so (malloc+12) D/CrashAnrDetector( 784): 9acfe250 9aa0606c D/CrashAnrDetector( 784): 9acfe254 b393b8c3 /data/app/org.qtproject.example.AutoinstallGui-2/lib/arm/libssh.so (emutls_alloc+66) D/CrashAnrDetector( 784): 9acfe258 9aa2e028 D/CrashAnrDetector( 784): 9acfe25c 00000002 D/CrashAnrDetector( 784): 9acfe260 b39863a8 /data/app/org.qtproject.example.AutoinstallGui-2/lib/arm/libssh.so D/CrashAnrDetector( 784): 9acfe264 b395fe9f /data/app/org.qtproject.example.AutoinstallGui-2/lib/arm/libssh.so (__emutls_get_address+196) D/CrashAnrDetector( 784): 9acfe268 b6f70e04 D/CrashAnrDetector( 784): 9acfe26c 00000003 D/CrashAnrDetector( 784): 9acfe270 b3967838 /data/app/org.qtproject.example.AutoinstallGui-2/lib/arm/libssh.so D/CrashAnrDetector( 784): 9acfe274 00010101 D/CrashAnrDetector( 784): 9acfe278 9acfe694 [stack:30942] D/CrashAnrDetector( 784): 9acfe27c b3948263 /data/app/org.qtproject.example.AutoinstallGui-2/lib/arm/libssh.so (ssh_get_log_userdata+10) D/CrashAnrDetector( 784): 9acfe280 b6f70e04 D/CrashAnrDetector( 784): 9acfe284 b3948409 /data/app/org.qtproject.example.AutoinstallGui- D/CrashAnrDetector( 784): processName:org.qtproject.example.AutoinstallGui D/CrashAnrDetector( 784): broadcastEvent : org.qtproject.example.AutoinstallGui SYSTEM_TOMBSTONE E/audit ( 2171): type=1400 msg=audit(1448283251.242:4320): avc: denied { read } for pid=30971 comm="qrngd" name="hw_random" dev="tmpfs" ino=10362 scontext=u:r:qrngd:s0 tcontext=u:object_r:hw_random_device:s0 tclass=chr_file D/SecurityLogAgent:SEDenialService( 784): Got Modify Event and sending Denial Intent foraudit.log E/audit ( 2171): SEPF_SM-G900F_5.0-1_0039 E/audit ( 2171): E/audit ( 2171): type=1300 msg=audit(1448283251.242:4320): arch=40000028 syscall=322 per=800000 success=no exit=-13 a0=ffffff9c a1=beefa6a0 a2=20000 a3=0 items=1 ppid=1 pid=30971 auid=4294967295 uid=1000 gid=1000 euid=1000 suid=1000 fsuid=1000 egid=1000 sgid=1000 fsgid=1000 tty=(none) ses=4294967295 comm="qrngd" exe="/system/bin/qrngd" subj=u:r:qrngd:s0 key=(null) E/audit ( 2171): type=1307 msg=audit(1448283251.242:4320): cwd="/" E/audit ( 2171): type=1302 msg=audit(1448283251.242:4320): item=0 name="/dev/hw_random" inode=10362 dev=00:0b mode=020640 ouid=0 ogid=1000 rdev=0a:b7 obj=u:object_r:hw_random_device:s0 E/audit ( 2171): type=1320 msg=audit(1448283251.242:4320): E/auditd ( 2171): In denial and Property audit_ondenial is set to 1 W/ContextImpl( 784): Calling a method in the system process without a qualified user: android.app.ContextImpl.sendBroadcast:1629 com.android.server.SEDenialService$AuditFileObserver.onEvent:76 android.os.FileObserver$ObserverThread.onEvent:122 android.os.FileObserver$ObserverThread.observe:-2 android.os.FileObserver$ObserverThread.run:85 D/SecurityLogAgent:SEDenialService( 784): audit.ondenial set to 0 after sending samsung.intent.action.knox.DENIAL_NOTIFICATION intent W/ContextImpl( 784): Calling a method in the system process without a qualified user: android.app.ContextImpl.sendBroadcast:1643 com.android.server.analytics.data.collection.application.CrashAnrDetector.broadcastEvent:296 com.android.server.analytics.data.collection.application.CrashAnrDetector.processDropBoxEntry:254 com.android.server.analytics.data.collection.application.CrashAnrDetector.access$100:60 com.android.server.analytics.data.collection.application.CrashAnrDetector$1.onReceive:102 D/ConnectivityService( 784): returning getNetworkInfo(networkType - 1) :[type: WIFI[] - WIFI, state: CONNECTED/CONNECTED, reason: (unspecified), extra: "UPC5613602", roaming: false, failover: false, isAvailable: true, isConnectedToProvisioningNetwork: false] D/SensorManager( 2775): registerListener :: 0, MPU6500 Acceleration Sensor, 200000, 0, I/libVoipEngineNative/EARLY( 2775): (3016/bc8) [virtual EStatus AndroidControllerDelegate::GetPersistentValue(const PooledString&, PooledString&):3700] JNI::<GetPersistentValue> D/SecurityLogAgent(30607): SeDenialReceiver : Intent Received : samsung.intent.action.knox.DENIAL_NOTIFICATION D/SecurityLogAgent(30607): SeDenialReceiver : File path = null D/ActivityManager( 784): post active user change for 0 D/KnoxTimeoutHandler( 784): postActiveUserChange for user 0 D/KnoxTimeoutHandler( 784): handleActiveUserChange for user 0
Building for Android | Matteo <matpen@xxxxxxx> |
Re: Building for Android | Daniel Kroker <dk@xxxxxxxxx> |
Re: Building for Android | Matteo <matpen@xxxxxxx> |
Re: Building for Android | Aris Adamantiadis <aris@xxxxxxxxxxxx> |
Re: Building for Android | Matteo <matpen@xxxxxxx> |
Re: Building for Android | Aris Adamantiadis <aris@xxxxxxxxxxxx> |
Re: Building for Android | Matteo <matpen@xxxxxxx> |
Re: Building for Android | Matteo <matpen@xxxxxxx> |