top button
Flag Notify
    Connect to us
      Site Registration

Site Registration

Symbols on system.img on android

0 votes
126 views

I have built a custom ROM for nexus 4. I would like to read its symbol table. Could someone help me do this? Will installing NDK help?
I used fastboot utilities to do it so I am not sure of the binaries that were picked for the system.img which is finally installed on the device. Please let me know how I can see the symbol information from the system.img.

posted May 23, 2013 by anonymous

Share this question
Facebook Share Button Twitter Share Button LinkedIn Share Button

1 Answer

0 votes

Symbols are stripped before a binary is installed to system.img.You can only access the binaries with symbols on your build machine in the directory out/target/product//symbols/.

answer May 23, 2013 by anonymous
Similar Questions
+1 vote

I'm trying to get my sdcard to automount on my nexus 10 through USB OTG cable. I can manually mount it and it works. Here is what I have setup so far. Is there anything else I need to do? I manually mount it like

"mount -t vfat /dev/block/sda1 /mnt/usbdisk"

init.manta.rc
 # usb usb sd card
 export SECONDARY_STORAGE /storage/usbdisk0
 mkdir /storage/usbdisk0 0666 system system

 symlink /storage/usbdisk0 /usbdisk
 symlink /storage/usbdisk0 /mnt/usbdisk

vold.fstab
dev_mount usbdisk /storage/usbdisk0 auto /dev/block/sda1
0 votes

Due to history reason, I have to check some values from /data each time when system has been upgraded by OTA. I've searched the whole framework but find nothing like a settings value or a property or some thing else which can notify the change.

So is there any way my code could be made aware when system is upgraded?

0 votes

Is there a way to postpone a system service (for example Alarm Manager) that are started by system server after the ACTION_BOOT_COMPLETED has been sent?

+2 votes

I'm facing an issue with permissions to write system properties in a multi-user scenario, specifically the fact that they are only available to the primary user ("owner").

In the check_perms method @ property_service.c the prefix of the property is mapped to a UID which is compared to that of the caller, but the userid bits are not masked out. This means that an app running as e.g. AID_SYSTEM will not be able to access system permissions granted for this UID when it's running as a secondary user.

I'm curious as to what is the reason for this limitation? Is this deliberate? Is there a security concern here that I am missing? If an app is allowed to run as system, doesn’t it make sense to grant it the same rights regardless of the current user of the device?

What makes me even more curious is that there is a previous patch that solves this issue for the AID_BLUETOOTH user specifically:

static int check_perms(const char *name, unsigned int uid, unsigned int gid, char *sctx){ [...]
 app_id = multiuser_get_app_id(uid); if (app_id == AID_BLUETOOTH) { uid = app_id; }

Is there a reason for not *always* using the app id rather than the full uid including user id bits when checking system property permissions?

I'm considering uploading a patch that either adds (app_id == AID_BLUETOOTH || app_id == AID_SYSTEM), or simply removes the check altogether (meaning always using the app id). Would that have any chance of being accepted?

+1 vote

I working on a project which needs adding a service with JNI to the system server and also a new daemon in init.rc script. I have successfully done this.
I might need the system service to periodically send SIGUSR1/2 signals to the daemon. Linux requires a sender of signals to be root. Do I have this privilege inside system server in Android?

...