(Q) Internet Sharing registry settings - Windows Phone 8 Q&A, Help & Troubleshooting

Does any one know the registry settings to enable internet sharing?

There's a small collection of them, what isn't working about it on your phone? If it's something like the mobile operator permission check, then yeah, we can bypass that.

GoodDayToDie said:
There's a small collection of them, what isn't working about it on your phone? If it's something like the mobile operator permission check, then yeah, we can bypass that.
Click to expand...
Click to collapse
Really? I missed that. Is that in a thread somewhere?
I have the Samsung Ativ S Neo from Ssprint.
-Tdecision10

There are a number of threads about Internet Sharing and about registry tweaking. The requirement for tethering to be enabled on your account is checked by a mobile operator-specific DLL that is used by ICSSVC (the Internet Connection Sharing SerViCe). There's a registry value that tells the phone what DLL to load, or whether to load any. If you don't tell it to use any, it defaults to assuming you have access.
There are a number of ways to make registry changes on your phone. You can flash a custom CSC (not a full ROM, though if you look for "custom ROM" on the dev&hacking subforum, you'll find stuff about it), or you can edit the registry directly using a hijacked app chamber, or you can interop-unlock (itself requiring a registry edit, so you probably need to use the chamber hack unless you're on an old version of Samsung's firmware) and unblock RPC, then use the RPCComponent.

GoodDayToDie said:
There are a number of threads about Internet Sharing and about registry tweaking. The requirement for tethering to be enabled on your account is checked by a mobile operator-specific DLL that is used by ICSSVC (the Internet Connection Sharing SerViCe). There's a registry value that tells the phone what DLL to load, or whether to load any. If you don't tell it to use any, it defaults to assuming you have access.
There are a number of ways to make registry changes on your phone. You can flash a custom CSC (not a full ROM, though if you look for "custom ROM" on the dev&hacking subforum, you'll find stuff about it), or you can edit the registry directly using a hijacked app chamber, or you can interop-unlock (itself requiring a registry edit, so you probably need to use the chamber hack unless you're on an old version of Samsung's firmware) and unblock RPC, then use the RPCComponent.
Click to expand...
Click to collapse
http://forum.xda-developers.com/showpost.php?p=54929482&postcount=13
http://forum.xda-developers.com/showpost.php?p=54652850&postcount=575
I followed and did everything posted in these but I'm still not sure if there was a solution for s print.
"and unblock RPC, then use the RPCComponent. " I think this is the part I need to be educated on.
-tdecision10

That is one (of several) methods for editing the registry. It can write more places than the other methods, but only works on Strings and Integers (DWORDs) and is only usable on Samsung phones. It requires that your process have ID_CAP_INTEROPSERVICES, which many OEM apps (and some first-party ones, like Skype) have, but which is not normally available to sideloaded apps.
"Unblock RPC" is the term we use for telling a Samsung service that it's in test mode by placing a file named "Non-production errors.txt" in the Documents folder of the phone. This will allow using RPCComponent anywhere in the registry, instead of just in a few specific places. Search for "unblock rpc" to learn more.
RPCComponent is a Samsung-provided native (C++/CX) DLL and WINMD for accessing various privileged functions by means of a high-privilege RPC (Remote Procedure Call) server. It is not publicly available but is bundled in many of Samsung's OEM apps and is available on this forum inside most .XAP files intended for use on Samsung phones (such as my own BootstrapSamsung tool; see the interop-unlock thread). As mentioned above, you need ID_CAP_INTEROPSERVICES for it to be useful.

GoodDayToDie said:
That is one (of several) methods for editing the registry. It can write more places than the other methods, but only works on Strings and Integers (DWORDs) and is only usable on Samsung phones. It requires that your process have ID_CAP_INTEROPSERVICES, which many OEM apps (and some first-party ones, like Skype) have, but which is not normally available to sideloaded apps.
"Unblock RPC" is the term we use for telling a Samsung service that it's in test mode by placing a file named "Non-production errors.txt" in the Documents folder of the phone. This will allow using RPCComponent anywhere in the registry, instead of just in a few specific places. Search for "unblock rpc" to learn more.
RPCComponent is a Samsung-provided native (C++/CX) DLL and WINMD for accessing various privileged functions by means of a high-privilege RPC (Remote Procedure Call) server. It is not publicly available but is bundled in many of Samsung's OEM apps and is available on this forum inside most .XAP files intended for use on Samsung phones (such as my own BootstrapSamsung tool; see the interop-unlock thread). As mentioned above, you need ID_CAP_INTEROPSERVICES for it to be useful.
Click to expand...
Click to collapse
I interop-unlocked (all-capabilities) my phone using methods you've posted. This was earlier in the year sometime.
http://forum.xda-developers.com/showpost.php?p=54929482&postcount=13
I followed this closely but didn't see any finality.
I just added the Non-production errors.txt in the place noted on that relative thread.
Not sure what to do next.
Forgive me if I am being a bother.
-tdecision10

Yeah i'm completely lost. The EnableAllSideloading XAP won't deploy for me (The manifest could not be loaded and may not be valid) so I can't even full unlock, and I have no clue how to go about using the MBN creator. So if you could hold my hand, I'd love it....

okay so I figured out MBN creator (kinda) but I still need to know the proper reg settings to disable the carrier authorization check.... i.e. the setting that points to the carrier specific DLL you mentioned...

EnableAllSideloading doesn't work on WP8.1 because they changed the security on the registry key where it operates. If you can't sideload it, that's because you're not interop-unlocked at all.
MBN Creator should, in theory, not require any particular customization unless your operator requires it; the *default* state of the Internet Sharing feature is "no restrictions, enabled by default". Several people have reported that IS started working after they flashed a custom CSC even though that CSC had nothing to do with IS, just because it removed the carrier-specific customizations that were present (and were blocking IS from working) before.
@tdecision10: If you are or were able to capability-unlock, then you can just sideload any registry editor tool you want and use that. Some of them are better than others, of course. A handful of apps, like WPTelnetD (https://github.com/FurballTheGreat/WPTelnetD/releases), ship with almost no capabilities so that they can be sideloaded on any phone, but you could unpack the XAP and edit the capability list before installing if you want to. A capability that gives access to the relevant registry key is ID_CAP_RUNTIME_CONFIG.

GoodDayToDie said:
EnableAllSideloading doesn't work on WP8.1 because they changed the security on the registry key where it operates. If you can't sideload it, that's because you're not interop-unlocked at all.
MBN Creator should, in theory, not require any particular customization unless your operator requires it; the *default* state of the Internet Sharing feature is "no restrictions, enabled by default". Several people have reported that IS started working after they flashed a custom CSC even though that CSC had nothing to do with IS, just because it removed the carrier-specific customizations that were present (and were blocking IS from working) before.
@tdecision10: If you are or were able to capability-unlock, then you can just sideload any registry editor tool you want and use that. Some of them are better than others, of course. A handful of apps, like WPTelnetD (https://github.com/FurballTheGreat/WPTelnetD/releases), ship with almost no capabilities so that they can be sideloaded on any phone, but you could unpack the XAP and edit the capability list before installing if you want to. A capability that gives access to the relevant registry key is ID_CAP_RUNTIME_CONFIG.
Click to expand...
Click to collapse
Okay, I put Pasquiindustry CustomPFD on my pc unzipped it added that capability in the WPAppManifest. xml file, rezipped it but now it won't deploy.
Did I think it was too simple?
EDIT:
For Spr int, I think I need to figure out how to do this:
TetheringNAIConnection
Optional. Specifies the CDMA TetheringNAI Connection Manager cellular connection that internet sharing will use as a public connection.
If a CDMA mobile operator requires using a Tethering NAI during internet sharing, they must configure a TetheringNAI connection and then specify the connection in this node.
Specified connections will be mapped, by policy, to the internet sharing service. All attempts to enumerate Connection Manager connections for the internet sharing service will return only the mapped connections.
The mapping policy will also include the connections specified in the DedicatedConnections as well.
(This is the error I get)
If the specified connections do not exist, internet sharing will not start because it will not have any cellular connections available to share
Anyone know how to add this to the APN settings?
-tdecision10

well, i reverted to 8.0 and then updated to 8.1 via retail without thinking.... so i got the new firmware and took myself out of the game :crying:
edit: reverted back to 8.0 again and i have the old firmware again. i think using the mbn creator is key. with older versions of windows phone, the APN settings were all built into the rom. now they are provisioned OTA. everytime i change the CSC, the device fails the authorization check with sprints servers and the device doesn't provision itself. what we need is the provxml that contains all of sprints APN settings. I used to have this information in a kitchen for WM 6.5, but sadly, I deleted it a long time ago. i can currently do one thing or another, unlock internet sharing but have no data connection, or, have a data connection with internet sharing locked. i believe that i can make a custom CSC with all the necessary edits but I need to get my hands on the correct sprint provxml first. I've tried and tried to find an old kitchen for Sprint with the correct files in it, but because it's so old most of them are dead download links. I think even a stock RUU for the GOLD_C (Sprint's HTC Arrive) would do. If anyone has this or can track it down I think we'd be in business....
@GoodDayToDie thanks for all the input, it's really helpful. I think that most people have found success by simply changing their CSC because their phones are not CDMA. we've got all these extra restrictions that keep the technology from working automatically
also, i believe that if I could manage to somehow get my MSL unlock code, I could manually program the APN. problem is, CDMA Workshop can't read it, and the free version doesn't let you use the brute force option to find it. Sprint changed their policy in October to under no circumstances giving out the MSL code unless your contract is up. I'm going to continue to keep trying different tech support reps to see if I can get one of them to give it up.
@tdecision10 I'm getting close, but I REALLY need those WM 6.5/7 Sprint OEM packages..... if you know of anyone or come across it browsing it would be immensely helpful!

mtstmp, I have leadpoizon's old rom for HTC Arrive. Let me know if that will work and if so, how to get it to you.
-tdecision10

Related

Possible Tethering Hack?

So after that guy figured out the tethering hack for iOS by just changing a few lines of test, I decided to try to find one for Windows Phone 8. I have no idea how it would get on the phone (besides possibly flashing a new rom?), but I went and looked anyway. I mounted the VHD from the SDK and I think that I found something. If you use something like Visual Studio's Find in Files and search for ICSSVC, you'll find some interesting stuff.
First of all, in Microsoft,Net.NetCore.reg, I found this: puu.sh/3J9yS.png That's how I learned about ICSSVC. So then I searched for that and in Microsoft.Net.NetCore.policy.xml there is a bunch of capability stuff. I have no idea what to do past here, and the emulator doesn't have the Internet Sharing option. So, yeah.
MichaelC97 said:
So after that guy figured out the tethering hack for iOS by just changing a few lines of test, I decided to try to find one for Windows Phone 8. I have no idea how it would get on the phone (besides possibly flashing a new rom?), but I went and looked anyway. I mounted the VHD from the SDK and I think that I found something. If you use something like Visual Studio's Find in Files and search for ICSSVC, you'll find some interesting stuff.
First of all, in Microsoft,Net.NetCore.reg, I found this: puu.sh/3J9yS.png That's how I learned about ICSSVC. So then I searched for that and in Microsoft.Net.NetCore.policy.xml there is a bunch of capability stuff. I have no idea what to do past here, and the emulator doesn't have the Internet Sharing option. So, yeah.
Click to expand...
Click to collapse
Unfortunately, this involves dumping phone ROMs and modifying the policies (We don't know how crazy this process will be). Another set back involves the fact that the bootloaders for WP8 are signed which would require the the ROM to be signed with the correct cert, etc.
Basically, this will be extremely painful due to WP8 running a Windows NT Kernel (WP7 uses Windows CE) and all kinds of other obstacles that we haven't discovered yet.
snickler said:
Unfortunately, this involves dumping phone ROMs and modifying the policies (We don't know how crazy this process will be). Another set back involves the fact that the bootloaders for WP8 are signed which would require the the ROM to be signed with the correct cert, etc.
Basically, this will be extremely painful due to WP8 running a Windows NT Kernel (WP7 uses Windows CE) and all kinds of other obstacles that we haven't discovered yet.
Click to expand...
Click to collapse
Also while I was searching, I found a registry entry for 'DeveloperUnlock'. So when you run the program to dev unlock your phone, the program must modify the registry on the phone. I'm pretty sure that it would be possible to replicate that.
MichaelC97 said:
Also while I was searching, I found a registry entry for 'DeveloperUnlock'. So when you run the program to dev unlock your phone, the program must modify the registry on the phone. I'm pretty sure that it would be possible to replicate that.
Click to expand...
Click to collapse
As of now, we can't execute the native EXEs on the phone so we won't know whether we can replicate that or not. I know with talking with HeathCliff74, modifying the policy on WP7 took quite a long time and effort to figure out. I can almost guarantee the policies on WP8 are implemented completely different from WP7 and even a bigger pain to modify
snickler said:
As of now, we can't execute the native EXEs on the phone so we won't know whether we can replicate that or not. I know with talking with HeathCliff74, modifying the policy on WP7 took quite a long time and effort to figure out. I can almost guarantee the policies on WP8 are implemented completely different from WP7 and even a bigger pain to modify
Click to expand...
Click to collapse
I meant the program on your computer that comes with the SDK. I think that it modifies the phones registry to dev unlock it.
MichaelC97 said:
I meant the program on your computer that comes with the SDK. I think that it modifies the phones registry to dev unlock it.
Click to expand...
Click to collapse
You are correct, it does modify the registry to dev unlock it by connecting to a running service on the phone and executing native DLLs. The main DLL that interacts with the phone within the program's folder is an Win32 compiled .DLL rather than a .NET file which would require some disassembly to get an idea of what's going on. It also doesn't help that it is a signed DLL.

Help me fix Internet Sharing feature

Hi folks,
I need to know what the "correct" values for the Internet Sharing registry keys look like, so I can write an app that fixes them for those of us who don't have it working. To do this, I'm asking if people can do some simple steps for me:
1) Install Webserver Native Access v0.5.3 on a dev-unlocked phone, if you don't already have it. If possibly, please use the AllCapabilities version but even the normal-capability version helps.
2) Run the app and use a browser on your PC to navigate to Registry, HKEY_LOCAL_MACHINE, SYSTEM\CurrentControlSet\services\ICSSVC (URL should look something like http://192.168.0.15:9000/Registry?hive=80000002&path=SYSTEM\CurrentControlSet\services\ICSSVC).
3) Click "Download this key and subkeys as .REG" and save the resulting file.
4) Post that file (in a .ZIP or as a .TXT) here, along with the following info:
4a) What phone model you have (if using a modified ROM, which ROM as well).
4b) What carrier (mobile operator) you have, and whether your phone was built for that carrier.
4c) What OS version you are running (exact build won't hurt but shouldn't matter).
4d) Whether the "Internet Sharing" feature currently works for you, and if not, what error you get.
Thank you so much! I'll post an example below.
By the way, I'm particularly interested in the following classes of phone:
* Everybody who can run the AllCapabilities version of the webserver.
* Anything on T-Mobile US that has working ICS. Since it seems to work only for TMo-branded phones, better still if your phone isn't a TMo model.
* Anybody who has working Internet Sharing on a different carrier than their phone was built for.
* Anybody who has it work on their home carrier but not on any others.
* Anybody for whom it does not work and never has.
* Anybody who has an open-market phone and Internet Sharing works on multiple networks for them
(I will add to this list if other classes of problem crop up and need to be fixed in a different way).
I should mention that there's no guarantee that the fix will be available for all phones, at least not until we interop-unlock them. It should be possible for any phone with IU, though, at a minimum.
Thanks for your help! (Seriously, I'll push Thanks for anybody who sends useful data *at least* until I get it working.) This could benefit a lot of us here; in theory, it might even allow us to get Internet Sharing working without it using tethered data limit too.
Example from my phone
Phone model: Samsung ATIV S (SGH-T899M), stock (but capability-unlocked and somewhat hacked) ROM
Carrier: T-Mobile US, but the phone was built for Telus in Canada even though it had no SIM lock.
OS version: WP8.0 GDR3 plus the pre-8.1 update (Samsung firmware slightly tweaked to reserve registry and filesystem writing).
Feature status: Internet Sharing feature does not work for me on this carrier, and never has. Error is:
Connection Not Shared
There's no cellular data connection to share right now. Check your cellular settings and signal, and try again.
Click to expand...
Click to collapse
(As a side note, that error message is a dirty lie.)
I'm very confused about this one topic.. Because i always share my internet connection without data plan since 8.0 & it works fine. Never disconnect.
Firstly i would like to know as what peoples want as refers this one.
Sorry for no helping points.
Wow, "THANKS" @djamol. Would it have been too bloody hard to follow the steps so you would have actually contributed something to this thread? If your Internet Sharing works, even though you don't have a tethering plan (I *VERY* strongly doubt it works if you don't even have a data plan; that makes no sense at all) then your configuration data would have been very valuable.
There are quite a few people who are either completely unable to use the Internet Sharing feature or for whom it would cost extra (even though, in some cases, it is *supposed* to be included in their plan). The goal is to help these people.
Phone model: Samsung ATIV Odyssey (SCH-I930), interop unlocked(thank you sir!!!)
Carrier:Verizon US
OS version: Dev Preview 8.1 Update 1(8.10.14147.180)
Feature Status: Working (Seems on other devices/earlier OS's I got a warning message about data usage but not now). Haven't tried on other carriers; first time used.
A little side note: Still had Internet Sharing enabled when I started the webserver app and got a strange IP or MAC address which when clicked on threw an error. Couldn't find the address on any devices connected to my wireless or on the router itself. Included screenshots...
Aw hell, that's an IPv6 address again. I really ought to fix the app for handling those. Thanks for the reminder...
Also, big thanks for the file! I'd like some more from different versions, just to get a feel for what's version-specific vs. different for reasons of working-or-not, but that was already helpful.
EDIT: Did you use the AllCapabilities version of the app? It looks like the standard version can't read one of the relevant registry keys, and sadly it's the one that is most useful.
GoodDayToDie said:
4) Post that file (in a .ZIP or as a .TXT) here, along with the following info:
4a) What phone model you have (if using a modified ROM, which ROM as well).
4b) What carrier (mobile operator) you have, and whether your phone was built for that carrier.
4c) What OS version you are running (exact build won't hurt but shouldn't matter).
4d) Whether the "Internet Sharing" feature currently works for you, and if not, what error you get.
Thank you so much! I'll post an example below.
By the way, I'm particularly interested in the following classes of phone:
* Everybody who can run the AllCapabilities version of the webserver.
* Anything on T-Mobile US that has working ICS. Since it seems to work only for TMo-branded phones, better still if your phone isn't a TMo model.
* Anybody who has working Internet Sharing on a different carrier than their phone was built for.
* Anybody who has it work on their home carrier but not on any others.
* Anybody for whom it does not work and never has.
* Anybody who has an open-market phone and Internet Sharing works on multiple networks for them
(I will add to this list if other classes of problem crop up and need to be fixed in a different way).
Click to expand...
Click to collapse
Hi,
4) Attached.
4a) Nokia Lumia 920 RM-821 on UK CV ROM, but originally phone came with Orange Poland ROM
4b) I'm on Orange too, though not in Poland nor in UK.
4c) Running WP8.1 Update 1 on Lumia Black firmware.
4d) Internet Sharing feature worked smoothly for me from the beginning on any rom i flashed and any firmware, so yes, it's working without any problems.
Hope this helps.
@GoodDayToDie
Guess I can help!
4a) T-Mobile Branded HTC 8X running WP 8.1 Developer Preview
4b) T-Mobile US. It was built for the carrier
4c) OS version 8.10.12400.899; Firmware 3030.0.34101.531
4d) Internet Sharing works great! Sometimes when I am roaming, I get a message saying I don't have a plan that supports Internet Sharing and that I need to purchase one.
Hope that helps!
GoodDayToDie said:
EDIT: Did you use the AllCapabilities version of the app? It looks like the standard version can't read one of the relevant registry keys, and sadly it's the one that is most useful.
Click to expand...
Click to collapse
Sorry, can't sideload AllCapabilities version and of course the Bootstrap app succeeds but AllCapabilitiesUnlock fails on this OS. I am currently trying to find you any other info via FS Access and came across this if it's of any use ???
Oh right, I meant to release an updated version of EnableAllSideloading for 8.1. Whoops, I should do that. If you want to help out with that (not really the right thread but oh well, it's sort of relevant), dropping the exported .REG for HKLM\SOFTWARE\Microsoft\SecurityManager will help a lot. Note that it will include a list, by GUID, of all the apps you've installed (but nothing much else of a potentially-sensitive nature).
The files you provided are interesting. I can't say I know what the value in the first one mean, but they do imply a Verizon-specific difference in the feature. The second you actually might not want to share; it has the (default?) configuration of the Internet Sharing network in it, including key material. The third isn't actually data by itself; it instead defines the schema for the HotSpot configuration file. This info is potentially useful (though I wasn't able to get a Configuration Service Provider to parse my HotSpot provxml when I tried, probably because I didn't have the requisite access) although the info is also available publicly online.
4) Posted rar file here. Though I get no value, using the webserver and snicklers registry tools. Shows error2 in webserver. Registry Tools doesn't show any error just shows "no value".
4a) Using a Samsung Ativ-S SGH-T899M running Wolf's Fake Rom
4b) Using it on Simple Mobile, bought it sim unlocked I think it used to say Telus before the fake rom.
4c) OS Version 8.10.12359.845
4d) Internet Sharing works fine after Wolf's Fake Rom.
Whaaaa? That's weird. Error 2 means FILE_NOT_FOUND, or, more precisely here, means the registry key wasn't found. If you go up a level (CurrentControlSet\Services) is there not any ICSSVC key? Can you maybe post the .REG for that entire key?
Samsung ATIV S Neo (SPH-I800) Stock Rom - Interop-Unlocked/All Capabilities
Sprint for Sprint
Window Phone 8.1 Update through DP: 8.10.14147.180
Internet Sharing doesn't work for me.....that might be because I haven't paid Sprint for it.
Error:
Connection Not Shared
There's no cellular data connection to share right now. Check your cellular settings and signal, and try again.
Also attached, what I think, is the text of the S printEntitlement dll. This may be only be relevant for sprint....
Blue_Frog was working on something regarding ICS here: http://forum.xda-developers.com/showpost.php?p=54704074&postcount=577
-tdecision10
Any movement with this?
-tdecision10
Was reading wolfs MBN Creator thread the other day and somebody mentioned a backup of the CSC being stored at C:\Windows\System32\CSC
It has to be blocking the internet sharing when the original CSC is run during a hard reset. However wolfs CSC has internet sharing working fine. Tested by me. Im using an ativ s t899m WP8.1 running wolfs fake rom.
Using the webserver I pulled the files from my phone. Using sam-tools I extracted his CSC file, not directly off phone just from the mbn file from his fake rom thread.
Don't have time to look them over but here they are.
Looked over files in my previous post.
The stock CSC has 5 different configurations, all from different carriers. Most of the files contain nothing related to internet sharing except the SS_xxx_CSC.xml file. This one contains a lot of registry edits that aren't included in the wolf csc. Some for accent colors, tile layout, etc. but there is a few registry edits that regulate internet sharing in there. This same file in wolf's csc contains a bunch of capability unlocks but nothing even close to the stock versions with all the reg edits for all sorts of different stuff.
It mentions a dll file named EAPSIMHSPlugin.dll that I wasn't able to find on my phone. Not that I don't think its there I just wasn't able to get to the directory from the webserver. Here is the path c:\Programs\HotspotHost\MSFT\EAPSIMHSPlugin.dll
Here are the 3 edits made that I think block internet sharing. They are in
HKLM\Software\Microsoft\Windows Phone\HotspotOffload
I have that directory in my phone and it includes the subdirectory Plugins and Parameters but neither include any keys within them.
Can someone test this edit and see if its gonna be this easy to turn off the internet sharing block.
HKLM\Software\Microsoft\Windows Phone\HotspotOffload\Plugins\MSFT\PluginRank
Change the 1 to 0
Ill attach a txt file of the entries I copied and pasted from the Telus CSC files that would have anything to do with internet sharing for all the reg edits made incase anybody wants to look.
Oddly enough, my phone doesn't have that key at all. It has the Plugins key, but no subkeys of it (and no values like the ones in the provxml you attached). Of course, that could be due to previous experiments that I've tried (though they didn't work). Similarly, it has the Parameters key but not the subkeys listed in the attached file.
Huh, I really thought we had something there.
Another difference is in the config file. Ill attach just them. Not sure where to go with the differences though. Not familiar with it.

[Q&A] [WP8.1] Hypothesis about a possible interop unlock with Messaging+ app

Q&A for [WP8.1] Hypothesis about a possible interop unlock with Messaging+ app
Some developers prefer that questions remain separate from their main development thread to help keep things organized. Placing your question within this thread will increase its chances of being answered by a member of the community or by the developer.
Before posting, please use the forum search and read through the discussion thread for [WP8.1] Hypothesis about a possible interop unlock with Messaging+ app. If you can't find an answer, post it here, being sure to give as much information as possible (firmware version, steps to reproduce, logcat if available) so that you can get help.
Thanks for understanding and for helping to keep XDA neat and tidy!
CAPs required for editing registry
snickler said:
You won't achieve any sort of interop-unlock with such an app. The Messaging+ app uses capabilities specific to chat that are restricted. Just because an app uses the interopservices capability, does not mean that it has rights to write to the specific portion of the registry needed to provide interop-unlock. There are a few threads out there that discuss this already
Click to expand...
Click to collapse
I am curious what CAP is required for editing the registry?
gingerjoke said:
I am curious what CAP is required for editing the registry?
Click to expand...
Click to collapse
You at least need ID_CAP_INTEROPSERVICES or ID_CAP_OEM_DEPLOYMENT at the minimum. There are many threads that detail that interop unlock canNOT be achieved unless we have an RPC Service that runs under the SYSTEM account. The MaxUnsignedApp reg value is locked down so that it can only be edited in the way that I just spoke of.
No app on the marketplace, no modifying a store app will achieve this. We were just VERY lucky with Samsung in the beginning.. That's all.
More generally true: there are lots of CAPs (such as OEM_DEPLOYMENT) that permit editing specific parts of the registry. There is *NO* capability that allows you to edit all of it (in theory ID_CAP_BUILTIN_TCB should, through minor additional work, but in practice that cap doesn't seem to do anything for an app).
ID_CAP_INTEROPSERVICES does not give registry access, or at least not any meaningful amount. All that it gives is the ability to call into RPC servers and drivers. *IF* one of those services exposes an externally-callable API for editing the registry - as one of Samsung's (FCROUTER?) does, or at least did - then you can use that to edit the registry. So in that specific case, INTEROPSERVICES indirectly makes it possible to edit the registry, but it doesn't inherently do anything of the sort.
GoodDayToDie said:
More generally true: there are lots of CAPs (such as OEM_DEPLOYMENT) that permit editing specific parts of the registry. There is *NO* capability that allows you to edit all of it (in theory ID_CAP_BUILTIN_TCB should, through minor additional work, but in practice that cap doesn't seem to do anything for an app).
ID_CAP_INTEROPSERVICES does not give registry access, or at least not any meaningful amount. All that it gives is the ability to call into RPC servers and drivers. *IF* one of those services exposes an externally-callable API for editing the registry - as one of Samsung's (FCROUTER?) does, or at least did - then you can use that to edit the registry. So in that specific case, INTEROPSERVICES indirectly makes it possible to edit the registry, but it doesn't inherently do anything of the sort.
Click to expand...
Click to collapse
Finally found RPC service in NdtkSvc.dll
But requires InteropServices Capability
Here is list of functions works as "SYSTEM".
CopyFileEx()
NdrServerCall2()
CreateThreadpoolWait()
SetThreadpoolWait()
CloseThreadpoolWait()
SetEvent()
SetServiceStatus()
CreateEventW()
RegisterServiceCtrlHandlerW()
CloseHandle()
OpenProcessToken()
FindFirstFileW()
CopyFileExW()
GetCurrentProcess()
CreateDirectoryW()
RegCreateKeyExW()
RegQueryValueExW()
IsCharAlphaNumericW()
LookupPrivilegeValueW()
FindClose()
RemoveDirectoryW()
RegOpenKeyExW()
FindNextFileW()
AdjustTokenPrivileges()
InitiateSystemShutdownExW()
DeleteFileW()
RegCloseKey()
RegSetValueExW()
RpcServerUnregisterIfEx()
RpcServerInqBindings()
RpcEpRegisterW()
RpcServerUseProtseqW()
RpcBindingVectorFree()
RpcServerRegisterIf3()
RpcEpUnregister()
ResetPhoneEx()
EncodePointer()
DecodePointer()
QueryPerformanceCounter()
GetCurrentThreadId()
GetSystemTimeAsFileTime()
GetTickCount64()
But I'm confused about how to write a code for as RPC Client or using any DllImport functionality. ?
Can someone provide me at least demo/example code of RPC client ?
... Whoa, that is a seriously valuable list of APIs. Those are callable as SYSTEM, without any restrictions except the caller needing ID_CAP_INTEROPSERVICES? Either I've been out of the loop longer than I thought or this should have been discovered long ago (is it new to some not-yet-widely-available version?) You cannot *trivially* get root this way - it doesn't, for example, include the APIs you would need to inject arbitrary code into a SYSTEM process or similar - but you can certainly do things like write an arbitrarily powerful file-and-registry browser. With that, you can do a hell of a lot of other stuff, stuff that even Samsung's RPCComponent didn't permit.
MS RPC is documented on MSDN here: https://msdn.microsoft.com/en-us/library/windows/desktop/aa378651(v=vs.85).aspx
It includes a full API reference, lots of guidance on development, and a tutorial. The tutorial looks pretty well-written, and is probably a better place to start than the API reference unless you know more about RPC at the moment than I do.
However, this documentation is aimed at "normal" implementations, where the client has, if not the server's source code, at least the interface definition. You have to know the UUID (probably easily findable though I'm not sure where) and the function interfaces (in a reasonable level of detail). Black-boxing that is going to be one of the harder tricks, I think, though somebody may have written one or more tools to make it easier.
EDIT: I can't find NdtkSvc, or its binary, on my phone. It's either OEM-specific or (more likely) requires a particular OS update/upgrade. What version did you find it in?
EDIT2: How'd you get the list of APIs it serves? Do you have the IDL file for the RPC server? That would help a ton; if you have that, we're good to go.
EDIT3: Don't forget you can PM people if you don't want to put this stuff out in public.
@GoodDayToDie
Hi, Sorry for the late reply.
It is only specific for Lumia.
NdtkSvc.dll known as "Nokia Device Toolkit Service".
"C:\Windows\System32\NdtkSvc.dll"
Yes, ID_CAP_INTEROPSERVICES cap is everything here too on Lumia.
Here is a one of the example which same "Nokia.SilentInstaller.Runtime" does that on RPC Access,
Code:
static bool NRSCopyFile(String sourcePath, String destPath);
works without any "RESTRICTIONS", with any "PARTITION".
Even possibilities to "REPLACE" the hidden/non-accessible Registry "HIVE" Files.
Such as,
"C:\Windows\System32\Config\ProvisonStore"
But unfortunately they are all in simply zip file having a signed.
We can't modify and place back them such HIVE/POLICY files, sad
So what i did it so far,
-Modified "DeviceReg.exe" with hex-editor and replaced to "C:\PROGRAMS\DEVICEREG\DeviceReg.exe". (signature getting a braked)
-Replaced "PolicyFiles". (signature getting a braked)
It's frustrating to me, It's shame for me that i cant do anything having a full FS Access, lol.
Such files and System binaries are fully signed with the new 8.1 "Policy Engine".
but i think .dll files doesn't required to be signed to run in System chamber.
Well, Time to write a some RPC library
Thanks.
Edit: I don't know about which update is required, I think it is from WP8.0 GDR1. At least WP8.1 GDR1 or above.
but the "NdtkClient.dll" is available since WP8.0 GDR1 in "Extras+Info" App.

Windows Phone 8.1: deleting default APN

Hi,
I have a Nokia Lumia 520 Vodafone (I'm not sure if this is the rigth section or this one http://forum.xda-developers.com/windows-phone-8/development).
I'm using a MVNO operator. It's everything quite good (connection) but I can't use it in order to have the hotspot.
I try to explain: as default, there are 3 different APN (not related to the MVNO operator but related to the operator who "give" the network to the MVNO) and I added the one correct for the MVNO operator. I use the last one, and the smartphone can connect and so on.
The problem probably is that when I activate the tethering (hot spot) the phone automatically tries to activate another APN (one of the 3 as default) but obviously there isn't any connection (there is a message like "there isn't any connection available").
The solution should be: delete these default APN.. but I can't!
Pushing (holding it) the APN only 2 choice are showed: ACTIVATE and SHOW (neither MODIFY nor DELETE).
Well, the question is: can I in some way delete these APN (or change their values... I don't know, via registry system)??
Please note that the tethering function is officially allowed by the operator and in his opinion the is a phone matter.
Also please note the Vodafone brand is only "a face", I mean this rom doesn't deny any type of connection.
Thanks to help
Known problem; some MOs put a custom configuration for tethering in the registry of their phones. To make tethering work "like normal" you need to remove this custom configuration. It can be done by installing a registry editor via chamber hijacking, but I don't have the details of what changes you need to make handy right now.
GoodDayToDie said:
Known problem; some MOs put a custom configuration for tethering in the registry of their phones. To make tethering work "like normal" you need to remove this custom configuration. It can be done by installing a registry editor via chamber hijacking, but I don't have the details of what changes you need to make handy right now.
Click to expand...
Click to collapse
Thanks.
Do you think I can do it simply installing something like "Root Tool" (http://www.windowsphone.com/en-us/store/app/root-tool/f4acc009-ea1e-4063-9bab-fec50195aa1e) ?
Root Tool should let you make the necessary changes, yes. I'm not sure if it supports binary data types, so if you need to edit those you may have trouble, but otherwise it's fine.
Sorry I don't recall the details for making this work. Searching this forum for "Internet Sharing" may help...
GoodDayToDie said:
Root Tool should let you make the necessary changes, yes. I'm not sure if it supports binary data types, so if you need to edit those you may have trouble, but otherwise it's fine.
Sorry I don't recall the details for making this work. Searching this forum for "Internet Sharing" may help...
Click to expand...
Click to collapse
Ok, I'll check, thanks

[Q]t-mobile wifi calling on unlocked device

Good afternoon everyone,
I picked up a Nokia Lumia 830 (RM-985) to use with T-Mobile. It's a good phone, but one of the reasons that I bought it was to play with the software on it.
My current challenge is to install and make functional the T-Mobile Wifi Calling feature.
I had a Lumia 925 before, but it's toast and gone now unfortunately, so I can't get any information from it.
I modified the registry using vcREG, changing /System/Platform/DeviceTargetingInfo/PhoneManufacturerModelName to RM_892_nam_tmous_201. My logic behind this was that possibly the app operated like the Insider Preview app, and allowed only phones with a certain list of names to download and set it up. This didn't work (surprise)
Doing some more research, it seems that one of the potential (and only) ways to get Wi-Fi calling would be to flash a custom T-Mobile ROM onto the phone because there are some things 'baked in" that allow it to work and function correctly. Outside of that, perhaps it's possible to root the phone and add those files and functionalities in the registry.
THE QUESTION
Where can I get a ROM that will help me achieve this, and is this possible at all?
I don't know about getting a ROM for it, though if you can download one of the TMoUS-specific ROMs you may be able to extract the required files out of the image. The app for WiFi calling is really not the important part; it's just a control interface that interacts with the system service that handles the driver that does WiFi calling. You need the driver/service binaries, the phone needs to trust them (accept their signatures and have them installed in the correct locations), and the relevant service registry keys need to be set.
I haven't done this yet myself, but it's something I want to test. I have a Lumia 1520, so anything I find will probably be workable for you too.
GoodDayToDie said:
I don't know about getting a ROM for it, though if you can download one of the TMoUS-specific ROMs you may be able to extract the required files out of the image. The app for WiFi calling is really not the important part; it's just a control interface that interacts with the system service that handles the driver that does WiFi calling. You need the driver/service binaries, the phone needs to trust them (accept their signatures and have them installed in the correct locations), and the relevant service registry keys need to be set.
I haven't done this yet myself, but it's something I want to test. I have a Lumia 1520, so anything I find will probably be workable for you too.
Click to expand...
Click to collapse
I have the TMOUS 925 FFU file. How do I get in there and where would I look?
I don't usually do anything with ROMs, so I'm not the ideal person to answer this, but I know there are tools to unpack FFUs or convert them to VHDs or something like that. You could also just try 7-Zip (get the latest build, pre-release if they have one); I vaguely remember hearing they were adding support for some ROM image format(s).
bahgelsson said:
I have the TMOUS 925 FFU file. How do I get in there and where would I look?
Click to expand...
Click to collapse
This thread here for browsing .FFU
http://forum.xda-developers.com/showthread.php?t=2066903
And some files from T-Mobile Lumia 635 to get you started...
Did you ever get to add Wifi Calling added to your phone
Where you able to get Wifi calling on your phone? If it was useful, how or where did you get the TMOUS 925 FFU file? What are the steps involved?

Categories

Resources