2.14 MB
/home/dev/aosp/build/android-11.0.0_r46/redfin-user/Google/system.img.apexes/com.google.android.tethering.apex-apex_payload.img.mount vs.
/home/dev/aosp/build/android-11.0.0_r46/aosp_redfin-user/Ubuntu18.04/system.img.apexes/com.android.tethering.apex-apex_payload.img.mount
242 B
file list
    
Offset 1, 7 lines modifiedOffset 1, 7 lines modified
1 apex_manifest.pb1 apex_manifest.pb
2 javalib2 javalib
3 javalib/framework-tethering.jar3 javalib/framework-tethering.jar
4 lost+found4 lost+found
5 priv-app5 priv-app
6 priv-app/TetheringGoogle6 priv-app/Tethering
7 priv-app/TetheringGoogle/TetheringGoogle.apk7 priv-app/Tethering/Tethering.apk
520 B
/home/dev/aosp/build/android-11.0.0_r46/redfin-user/Google/system.img.apexes/com.google.android.tethering.apex-apex_payload.img.mount/apex_manifest.pb vs.
/home/dev/aosp/build/android-11.0.0_r46/aosp_redfin-user/Ubuntu18.04/system.img.apexes/com.android.tethering.apex-apex_payload.img.mount/apex_manifest.pb
    
Offset 1, 2 lines modifiedOffset 1, 2 lines modified
00000000:·0a15·636f·6d2e·616e·6472·6f69·642e·7465··..com.android.te00000000:·0a15·636f·6d2e·616e·6472·6f69·642e·7465··..com.android.te
00000010:·7468·6572·696e·6710·8881·dc8f·01·········thering......00000010:·7468·6572·696e·6710·80c6·868f·01·········thering......
477 KB
/home/dev/aosp/build/android-11.0.0_r46/redfin-user/Google/system.img.apexes/com.google.android.tethering.apex-apex_payload.img.mount/javalib vs.
/home/dev/aosp/build/android-11.0.0_r46/aosp_redfin-user/Ubuntu18.04/system.img.apexes/com.android.tethering.apex-apex_payload.img.mount/javalib
477 KB
/home/dev/aosp/build/android-11.0.0_r46/redfin-user/Google/system.img.apexes/com.google.android.tethering.apex-apex_payload.img.mount/javalib/framework-tethering.jar vs.
/home/dev/aosp/build/android-11.0.0_r46/aosp_redfin-user/Ubuntu18.04/system.img.apexes/com.android.tethering.apex-apex_payload.img.mount/javalib/framework-tethering.jar
475 B
zipinfo {}
    
Offset 1, 4 lines modifiedOffset 1, 4 lines modified
1 Zip·file·size:·56750·bytes,·number·of·entries:·21 Zip·file·size:·56838·bytes,·number·of·entries:·2
2 -rw----·····2.0·fat····56464·b-·stor·08-Jan-01·00:00·classes.dex2 -rw----·····2.0·fat····56552·b-·stor·08-Jan-01·00:00·classes.dex
3 -rw----·····2.0·fat·······45·b-·defN·08-Jan-01·00:00·META-INF/MANIFEST.MF3 -rw----·····2.0·fat·······45·b-·defN·08-Jan-01·00:00·META-INF/MANIFEST.MF
4 2·files,·56509·bytes·uncompressed,·56511·bytes·compressed:··0.0%4 2·files,·56597·bytes·uncompressed,·56599·bytes·compressed:··0.0%
476 KB
classes.dex
Format-specific differences are supported for Dalvik .dex files but no file-specific differences were detected; falling back to a binary diff. file(1) reports: Dalvik dex file version 039
    
Offset 1, 3529 lines modifiedOffset 1, 3535 lines modified
305 B
stat {}
    
Offset 1, 8 lines modifiedOffset 1, 8 lines modified
  
1 ··Size:·56750·····»     Blocks:·112········IO·Block:·4096···regular·file1 ··Size:·56838·····»     Blocks:·112········IO·Block:·4096···regular·file
2 Links:·12 Links:·1
3 Access:·(0644/-rw-r--r--)··Uid:·(·1001/·····dev)···Gid:·(·1001/·····dev)3 Access:·(0644/-rw-r--r--)··Uid:·(·1001/·····dev)···Gid:·(·1001/·····dev)
  
4 Modify:·1970-01-01·00:00:00.000000000·+00004 Modify:·1970-01-01·00:00:00.000000000·+0000
  
  
1.68 MB
/home/dev/aosp/build/android-11.0.0_r46/redfin-user/Google/system.img.apexes/com.google.android.tethering.apex-apex_payload.img.mount/priv-app vs.
/home/dev/aosp/build/android-11.0.0_r46/aosp_redfin-user/Ubuntu18.04/system.img.apexes/com.android.tethering.apex-apex_payload.img.mount/priv-app
124 B
file list
    
Offset 1, 2 lines modifiedOffset 1, 2 lines modified
1 TetheringGoogle1 Tethering
2 TetheringGoogle/TetheringGoogle.apk2 Tethering/Tethering.apk
1.67 MB
/home/dev/aosp/build/android-11.0.0_r46/redfin-user/Google/system.img.apexes/com.google.android.tethering.apex-apex_payload.img.mount/priv-app/TetheringGoogle vs.
/home/dev/aosp/build/android-11.0.0_r46/aosp_redfin-user/Ubuntu18.04/system.img.apexes/com.android.tethering.apex-apex_payload.img.mount/priv-app/Tethering
66.0 B
file list
    
Offset 1, 1 lines modifiedOffset 1, 1 lines modified
1 TetheringGoogle.apk1 Tethering.apk
1.67 MB
/home/dev/aosp/build/android-11.0.0_r46/redfin-user/Google/system.img.apexes/com.google.android.tethering.apex-apex_payload.img.mount/priv-app/TetheringGoogle/TetheringGoogle.apk vs.
/home/dev/aosp/build/android-11.0.0_r46/aosp_redfin-user/Ubuntu18.04/system.img.apexes/com.android.tethering.apex-apex_payload.img.mount/priv-app/Tethering/Tethering.apk
1.58 KB
java -jar /usr/bin/apksigner verify --verbose --print-certs {}
    
Offset 1, 14 lines modifiedOffset 1, 14 lines modified
1 Verifies1 Verifies
2 Verified·using·v1·scheme·(JAR·signing):·false2 Verified·using·v1·scheme·(JAR·signing):·false
3 Verified·using·v2·scheme·(APK·Signature·Scheme·v2):·false3 Verified·using·v2·scheme·(APK·Signature·Scheme·v2):·false
4 Verified·using·v3·scheme·(APK·Signature·Scheme·v3):·true4 Verified·using·v3·scheme·(APK·Signature·Scheme·v3):·true
5 Number·of·signers:·15 Number·of·signers:·1
6 Signer·#1·certificate·DN:·CN=Android,·OU=Android,·O=Google·Inc.,·L=Mountain·View,·ST=California,·C=US6 Signer·#1·certificate·DN:·CN=com.android.networkstack,·OU=Android,·O=Android,·L=Mountain·View,·ST=California,·C=US
7 Signer·#1·certificate·SHA-256·digest:·5fa42212ad403e22dd6efe75f3f31184051fef744c0b05be5c73edf60bf62c1e 
8 Signer·#1·certificate·SHA-1·digest:·c6ae382ffb7836e34b4f499d11a41fe0fe003cb8 
9 Signer·#1·certificate·MD5·digest:·551004f246c7623f557504c86b8243937 Signer·#1·certificate·SHA-256·digest:·e1dbadce60dc080d15b58a014b0dcf9400e24de23fa00b287a5a982bfebda2ee
 8 Signer·#1·certificate·SHA-1·digest:·7c8bdabd21f953a1b18ccbe7b91393d9fdf94830
 9 Signer·#1·certificate·MD5·digest:·7b02c2692a3cb6d39c58de176300f45c
10 Signer·#1·key·algorithm:·RSA10 Signer·#1·key·algorithm:·RSA
11 Signer·#1·key·size·(bits):·409611 Signer·#1·key·size·(bits):·4096
12 Signer·#1·public·key·SHA-256·digest:·0a12fee23e675b72c1b376d9c3be4e000b36161d90e72396d559948d4a249157 
13 Signer·#1·public·key·SHA-1·digest:·47687700167e0a4e0ef6f645f03c250b1f47a4cb 
14 Signer·#1·public·key·MD5·digest:·3ab50132e5096b3ebb5b57a3b66f5f9912 Signer·#1·public·key·SHA-256·digest:·7bfcc5541e9f18e3738b1d5fa0b8524d44bac99424cfdcc6594d9386d4daaf15
 13 Signer·#1·public·key·SHA-1·digest:·8d7d454da836ea9be48efd680114367bc0082aa1
 14 Signer·#1·public·key·MD5·digest:·d26031814b97614101f536914aaf7400
3.36 KB
zipinfo {}
    
Offset 1, 10 lines modifiedOffset 1, 9 lines modified
1 Zip·file·size:·823014·bytes,·number·of·entries:·321 Zip·file·size:·763789·bytes,·number·of·entries:·30
2 -rw----·····1.0·fat····57530·bx·stor·09-Jan-01·00:00·assets/NOTICE.html.gz 
3 -rw----·····1.0·fat···305828·bx·stor·09-Jan-01·00:00·classes.dex2 -rw----·····1.0·fat···303720·bx·stor·09-Jan-01·00:00·classes.dex
4 -rw----·····1.0·fat···278544·bx·stor·09-Jan-01·00:00·lib/arm64-v8a/libnativehelper_compat_libc++.so3 -rw----·····1.0·fat···278544·bx·stor·09-Jan-01·00:00·lib/arm64-v8a/libnativehelper_compat_libc++.so
5 -rw----·····1.0·fat····11320·bx·stor·09-Jan-01·00:00·lib/arm64-v8a/libtetherutilsjni.so4 -rw----·····1.0·fat····11320·bx·stor·09-Jan-01·00:00·lib/arm64-v8a/libtetherutilsjni.so
6 -rw----·····1.0·fat······661·bx·stor·09-Jan-01·00:00·res/drawable-hdpi-v4/stat_sys_tether_bluetooth.png5 -rw----·····1.0·fat······661·bx·stor·09-Jan-01·00:00·res/drawable-hdpi-v4/stat_sys_tether_bluetooth.png
7 -rw----·····1.0·fat······728·bx·stor·09-Jan-01·00:00·res/drawable-hdpi-v4/stat_sys_tether_general.png6 -rw----·····1.0·fat······728·bx·stor·09-Jan-01·00:00·res/drawable-hdpi-v4/stat_sys_tether_general.png
8 -rw----·····1.0·fat······684·bx·stor·09-Jan-01·00:00·res/drawable-hdpi-v4/stat_sys_tether_usb.png7 -rw----·····1.0·fat······684·bx·stor·09-Jan-01·00:00·res/drawable-hdpi-v4/stat_sys_tether_usb.png
9 -rw----·····1.0·fat······337·bx·stor·09-Jan-01·00:00·res/drawable-ldpi-v4/stat_sys_tether_bluetooth.png8 -rw----·····1.0·fat······337·bx·stor·09-Jan-01·00:00·res/drawable-ldpi-v4/stat_sys_tether_bluetooth.png
10 -rw----·····1.0·fat······356·bx·stor·09-Jan-01·00:00·res/drawable-ldpi-v4/stat_sys_tether_general.png9 -rw----·····1.0·fat······356·bx·stor·09-Jan-01·00:00·res/drawable-ldpi-v4/stat_sys_tether_general.png
Offset 14, 21 lines modifiedOffset 13, 20 lines modified
14 -rw----·····1.0·fat······472·bx·stor·09-Jan-01·00:00·res/drawable-mdpi-v4/stat_sys_tether_usb.png13 -rw----·····1.0·fat······472·bx·stor·09-Jan-01·00:00·res/drawable-mdpi-v4/stat_sys_tether_usb.png
15 -rw----·····1.0·fat······875·bx·stor·09-Jan-01·00:00·res/drawable-xhdpi-v4/stat_sys_tether_bluetooth.png14 -rw----·····1.0·fat······875·bx·stor·09-Jan-01·00:00·res/drawable-xhdpi-v4/stat_sys_tether_bluetooth.png
16 -rw----·····1.0·fat·····1029·bx·stor·09-Jan-01·00:00·res/drawable-xhdpi-v4/stat_sys_tether_general.png15 -rw----·····1.0·fat·····1029·bx·stor·09-Jan-01·00:00·res/drawable-xhdpi-v4/stat_sys_tether_general.png
17 -rw----·····1.0·fat······944·bx·stor·09-Jan-01·00:00·res/drawable-xhdpi-v4/stat_sys_tether_usb.png16 -rw----·····1.0·fat······944·bx·stor·09-Jan-01·00:00·res/drawable-xhdpi-v4/stat_sys_tether_usb.png
18 -rw----·····1.0·fat······604·bx·stor·09-Jan-01·00:00·res/drawable-xxhdpi-v4/stat_sys_tether_bluetooth.png17 -rw----·····1.0·fat······604·bx·stor·09-Jan-01·00:00·res/drawable-xxhdpi-v4/stat_sys_tether_bluetooth.png
19 -rw----·····1.0·fat······725·bx·stor·09-Jan-01·00:00·res/drawable-xxhdpi-v4/stat_sys_tether_general.png18 -rw----·····1.0·fat······725·bx·stor·09-Jan-01·00:00·res/drawable-xxhdpi-v4/stat_sys_tether_general.png
20 -rw----·····1.0·fat······651·bx·stor·09-Jan-01·00:00·res/drawable-xxhdpi-v4/stat_sys_tether_usb.png19 -rw----·····1.0·fat······651·bx·stor·09-Jan-01·00:00·res/drawable-xxhdpi-v4/stat_sys_tether_usb.png
21 -rw----·····1.0·fat···121828·bx·stor·09-Jan-01·00:00·resources.arsc20 -rw----·····1.0·fat···121776·bx·stor·09-Jan-01·00:00·resources.arsc
22 -rw----·····2.0·fat·····5332·bl·defN·09-Jan-01·00:00·AndroidManifest.xml21 -rw----·····2.0·fat·····4924·bl·defN·09-Jan-01·00:00·AndroidManifest.xml
23 -rw----·····2.0·fat······339·bl·defN·09-Jan-01·00:00·META-INF/proguard/androidx-annotations.pro22 -rw----·····2.0·fat······339·bl·defN·09-Jan-01·00:00·META-INF/proguard/androidx-annotations.pro
24 -rw----·····2.0·fat······241·bl·defN·09-Jan-01·00:00·android/util/LocalLog.ReadOnlyLocalLog.uau23 -rw----·····2.0·fat······241·bl·defN·09-Jan-01·00:00·android/util/LocalLog.ReadOnlyLocalLog.uau
25 -rw----·····2.0·fat······589·bl·defN·09-Jan-01·00:00·android/util/LocalLog.uau24 -rw----·····2.0·fat······589·bl·defN·09-Jan-01·00:00·android/util/LocalLog.uau
26 -rw----·····2.0·fat······200·bl·defN·09-Jan-01·00:00·com/android/networkstack/tethering/util/IState.uau25 -rw----·····2.0·fat······200·bl·defN·09-Jan-01·00:00·com/android/networkstack/tethering/util/IState.uau
27 -rw----·····2.0·fat······654·bl·defN·09-Jan-01·00:00·com/android/networkstack/tethering/util/IndentingPrintWriter.uau26 -rw----·····2.0·fat······654·bl·defN·09-Jan-01·00:00·com/android/networkstack/tethering/util/IndentingPrintWriter.uau
28 -rw----·····2.0·fat······703·bl·defN·09-Jan-01·00:00·com/android/networkstack/tethering/util/State.uau27 -rw----·····2.0·fat······703·bl·defN·09-Jan-01·00:00·com/android/networkstack/tethering/util/State.uau
29 -rw----·····2.0·fat·····2565·bl·defN·09-Jan-01·00:00·com/android/networkstack/tethering/util/StateMachine.uau28 -rw----·····2.0·fat·····2565·bl·defN·09-Jan-01·00:00·com/android/networkstack/tethering/util/StateMachine.uau
30 -rw----·····2.0·fat·······32·bl·defN·09-Jan-01·00:00·stamp-cert-sha256 
31 -rw----·····2.0·fat·····3457·bl·defN·09-Jan-01·00:00·META-INF/CERT.SF29 -rw----·····2.0·fat·····3275·bl·defN·09-Jan-01·00:00·META-INF/CERT.SF
32 -rw----·····2.0·fat·····2244·bl·defN·09-Jan-01·00:00·META-INF/CERT.RSA30 -rw----·····2.0·fat·····2267·bl·defN·09-Jan-01·00:00·META-INF/CERT.RSA
33 -rw----·····2.0·fat·····3345·bl·defN·09-Jan-01·00:00·META-INF/MANIFEST.MF31 -rw----·····2.0·fat·····3163·bl·defN·09-Jan-01·00:00·META-INF/MANIFEST.MF
34 32·files,·804018·bytes·uncompressed,·792206·bytes·compressed:··1.5%32 30·files,·743547·bytes·uncompressed,·732123·bytes·compressed:··1.5%
2.82 KB
AndroidManifest.xml (decoded)
2.76 KB
AndroidManifest.xml
    
Offset 1, 9 lines modifiedOffset 1, 9 lines modified
1 <?xml·version="1.0"·encoding="utf-8"?>1 <?xml·version="1.0"·encoding="utf-8"?>
2 <manifest·xmlns:android="http://schemas.android.com/apk/res/android"·android:sharedUserId="android.uid.networkstack"·android:versionCode="30"·android:versionName="11-6927367"·android:compileSdkVersion="30"·android:compileSdkVersionCodename="11"·package="com.google.android.networkstack.tethering"·platformBuildVersionCode="30"·platformBuildVersionName="11">2 <manifest·xmlns:android="http://schemas.android.com/apk/res/android"·android:sharedUserId="android.uid.networkstack"·android:versionCode="30"·android:versionName="11"·android:compileSdkVersion="30"·android:compileSdkVersionCodename="11"·package="com.android.networkstack.tethering"·platformBuildVersionCode="30"·platformBuildVersionName="11">
3 ··<uses-sdk·android:minSdkVersion="30"·android:targetSdkVersion="29"/>3 ··<uses-sdk·android:minSdkVersion="30"·android:targetSdkVersion="29"/>
4 ··<uses-permission·android:name="android.permission.ACCESS_NETWORK_STATE"/>4 ··<uses-permission·android:name="android.permission.ACCESS_NETWORK_STATE"/>
5 ··<uses-permission·android:name="android.permission.BLUETOOTH"/>5 ··<uses-permission·android:name="android.permission.BLUETOOTH"/>
6 ··<uses-permission·android:name="android.permission.BLUETOOTH_PRIVILEGED"/>6 ··<uses-permission·android:name="android.permission.BLUETOOTH_PRIVILEGED"/>
7 ··<uses-permission·android:name="android.permission.BROADCAST_STICKY"/>7 ··<uses-permission·android:name="android.permission.BROADCAST_STICKY"/>
8 ··<uses-permission·android:name="android.permission.CHANGE_NETWORK_STATE"/>8 ··<uses-permission·android:name="android.permission.CHANGE_NETWORK_STATE"/>
9 ··<uses-permission·android:name="android.permission.MANAGE_USB"/>9 ··<uses-permission·android:name="android.permission.MANAGE_USB"/>
Offset 12, 16 lines modifiedOffset 12, 15 lines modified
12 ··<uses-permission·android:name="android.permission.READ_NETWORK_USAGE_HISTORY"/>12 ··<uses-permission·android:name="android.permission.READ_NETWORK_USAGE_HISTORY"/>
13 ··<uses-permission·android:name="android.permission.READ_PHONE_STATE"/>13 ··<uses-permission·android:name="android.permission.READ_PHONE_STATE"/>
14 ··<uses-permission·android:name="android.permission.TETHER_PRIVILEGED"/>14 ··<uses-permission·android:name="android.permission.TETHER_PRIVILEGED"/>
15 ··<uses-permission·android:name="android.permission.UPDATE_APP_OPS_STATS"/>15 ··<uses-permission·android:name="android.permission.UPDATE_APP_OPS_STATS"/>
16 ··<uses-permission·android:name="android.permission.UPDATE_DEVICE_STATS"/>16 ··<uses-permission·android:name="android.permission.UPDATE_DEVICE_STATS"/>
17 ··<uses-permission·android:name="android.permission.WRITE_SETTINGS"/>17 ··<uses-permission·android:name="android.permission.WRITE_SETTINGS"/>
18 ··<protected-broadcast·android:name="com.android.server.connectivity.tethering.DISABLE_TETHERING"/>18 ··<protected-broadcast·android:name="com.android.server.connectivity.tethering.DISABLE_TETHERING"/>
19 ··<application·android:label="Tethering"·android:persistent="true"·android:process="com.android.networkstack.process"·android:extractNativeLibs="false"·android:usesCleartextTraffic="true"·android:defaultToDeviceProtectedStorage="true"·android:directBootAware="true">19 ··<application·android:label="Tethering"·android:persistent="true"·android:process="com.android.networkstack.process"·android:extractNativeLibs="false"·android:defaultToDeviceProtectedStorage="true"·android:directBootAware="true">
20 ····<service·android:name="com.android.networkstack.tethering.TetheringService"·android:permission="android.permission.MAINLINE_NETWORK_STACK"·android:exported="true">20 ····<service·android:name="com.android.networkstack.tethering.TetheringService"·android:permission="android.permission.MAINLINE_NETWORK_STACK"·android:exported="true">
21 ······<intent-filter>21 ······<intent-filter>
22 ········<action·android:name="android.net.ITetheringConnector"/>22 ········<action·android:name="android.net.ITetheringConnector"/>
23 ······</intent-filter>23 ······</intent-filter>
24 ····</service>24 ····</service>
25 ····<meta-data·android:name="android.content.pm.LOGGING_PARENT"·android:value="com.google.android.modulemetadata"/> 
26 ··</application>25 ··</application>
27 </manifest>26 </manifest>
843 B
APK metadata
    
Offset 1, 31 lines modifiedOffset 1, 29 lines modified
1 !!brut.androlib.meta.MetaInfo1 !!brut.androlib.meta.MetaInfo
2 compressionType:·false2 compressionType:·false
3 doNotCompress:3 doNotCompress:
4 -·dex4 -·dex
5 -·arsc5 -·arsc
6 -·assets/NOTICE.html.gz 
7 -·so6 -·so
8 -·png7 -·png
9 isFrameworkApk:·false8 isFrameworkApk:·false
10 packageInfo:·null9 packageInfo:·null
11 sdkInfo:10 sdkInfo:
12 ··minSdkVersion:·'30'11 ··minSdkVersion:·'30'
13 ··targetSdkVersion:·'29'12 ··targetSdkVersion:·'29'
14 sharedLibrary:·false13 sharedLibrary:·false
15 sparseResources:·false14 sparseResources:·false
16 unknownFiles:15 unknownFiles:
17 ··stamp-cert-sha256:·'8' 
18 ··android/util/LocalLog.ReadOnlyLocalLog.uau:·'8'16 ··android/util/LocalLog.ReadOnlyLocalLog.uau:·'8'
19 ··android/util/LocalLog.uau:·'8'17 ··android/util/LocalLog.uau:·'8'
20 ··com/android/networkstack/tethering/util/IState.uau:·'8'18 ··com/android/networkstack/tethering/util/IState.uau:·'8'
21 ··com/android/networkstack/tethering/util/IndentingPrintWriter.uau:·'8'19 ··com/android/networkstack/tethering/util/IndentingPrintWriter.uau:·'8'
22 ··com/android/networkstack/tethering/util/State.uau:·'8'20 ··com/android/networkstack/tethering/util/State.uau:·'8'
23 ··com/android/networkstack/tethering/util/StateMachine.uau:·'8'21 ··com/android/networkstack/tethering/util/StateMachine.uau:·'8'
24 usesFramework:22 usesFramework:
25 ··ids:23 ··ids:
26 ··-·124 ··-·1
27 ··tag:·null25 ··tag:·null
28 version:·2.4.0-dirty26 version:·2.4.0-dirty
29 versionInfo:27 versionInfo:
30 ··versionCode:·'30'28 ··versionCode:·'30'
31 ··versionName:·11-692736729 ··versionName:·'11'
94.9 KB
classes.dex
94.9 KB
classes.jar
16.8 KB
zipinfo {}
    
Offset 1, 8 lines modifiedOffset 1, 8 lines modified
1 Zip·file·size:·500794·bytes,·number·of·entries:·2821 Zip·file·size:·497485·bytes,·number·of·entries:·282
2 ?rwxrwxr-x··2.0·unx······172·b-·stor·80-Jan-01·00:00·android/hardware/tetheroffload/config/V1_0/IOffloadConfig$setHandlesCallback.class2 ?rwxrwxr-x··2.0·unx······172·b-·stor·80-Jan-01·00:00·android/hardware/tetheroffload/config/V1_0/IOffloadConfig$setHandlesCallback.class
3 ?rwxrwxr-x··2.0·unx·····1541·b-·stor·80-Jan-01·00:00·android/hardware/tetheroffload/config/V1_0/IOffloadConfig.class3 ?rwxrwxr-x··2.0·unx·····1541·b-·stor·80-Jan-01·00:00·android/hardware/tetheroffload/config/V1_0/IOffloadConfig.class
4 ?rwxrwxr-x··2.0·unx······177·b-·stor·80-Jan-01·00:00·android/hardware/tetheroffload/control/V1_0/IOffloadControl$addDownstreamCallback.class4 ?rwxrwxr-x··2.0·unx······177·b-·stor·80-Jan-01·00:00·android/hardware/tetheroffload/control/V1_0/IOffloadControl$addDownstreamCallback.class
5 ?rwxrwxr-x··2.0·unx······164·b-·stor·80-Jan-01·00:00·android/hardware/tetheroffload/control/V1_0/IOffloadControl$getForwardedStatsCallback.class5 ?rwxrwxr-x··2.0·unx······164·b-·stor·80-Jan-01·00:00·android/hardware/tetheroffload/control/V1_0/IOffloadControl$getForwardedStatsCallback.class
6 ?rwxrwxr-x··2.0·unx······175·b-·stor·80-Jan-01·00:00·android/hardware/tetheroffload/control/V1_0/IOffloadControl$initOffloadCallback.class6 ?rwxrwxr-x··2.0·unx······175·b-·stor·80-Jan-01·00:00·android/hardware/tetheroffload/control/V1_0/IOffloadControl$initOffloadCallback.class
7 ?rwxrwxr-x··2.0·unx······180·b-·stor·80-Jan-01·00:00·android/hardware/tetheroffload/control/V1_0/IOffloadControl$removeDownstreamCallback.class7 ?rwxrwxr-x··2.0·unx······180·b-·stor·80-Jan-01·00:00·android/hardware/tetheroffload/control/V1_0/IOffloadControl$removeDownstreamCallback.class
8 ?rwxrwxr-x··2.0·unx······176·b-·stor·80-Jan-01·00:00·android/hardware/tetheroffload/control/V1_0/IOffloadControl$setDataLimitCallback.class8 ?rwxrwxr-x··2.0·unx······176·b-·stor·80-Jan-01·00:00·android/hardware/tetheroffload/control/V1_0/IOffloadControl$setDataLimitCallback.class
Offset 62, 15 lines modifiedOffset 62, 15 lines modified
62 ?rwxrwxr-x··2.0·unx·····1548·b-·stor·80-Jan-01·00:00·android/net/dhcp/DhcpLeaseParcelable.class62 ?rwxrwxr-x··2.0·unx·····1548·b-·stor·80-Jan-01·00:00·android/net/dhcp/DhcpLeaseParcelable.class
63 ?rwxrwxr-x··2.0·unx······665·b-·stor·80-Jan-01·00:00·android/net/dhcp/DhcpServingParamsParcel$1.class63 ?rwxrwxr-x··2.0·unx······665·b-·stor·80-Jan-01·00:00·android/net/dhcp/DhcpServingParamsParcel$1.class
64 ?rwxrwxr-x··2.0·unx·····1919·b-·stor·80-Jan-01·00:00·android/net/dhcp/DhcpServingParamsParcel.class64 ?rwxrwxr-x··2.0·unx·····1919·b-·stor·80-Jan-01·00:00·android/net/dhcp/DhcpServingParamsParcel.class
65 ?rwxrwxr-x··2.0·unx······308·b-·stor·80-Jan-01·00:00·android/net/dhcp/IDhcpEventCallbacks.class65 ?rwxrwxr-x··2.0·unx······308·b-·stor·80-Jan-01·00:00·android/net/dhcp/IDhcpEventCallbacks.class
66 ?rwxrwxr-x··2.0·unx······397·b-·stor·80-Jan-01·00:00·android/net/dhcp/IDhcpServer.class66 ?rwxrwxr-x··2.0·unx······397·b-·stor·80-Jan-01·00:00·android/net/dhcp/IDhcpServer.class
67 ?rwxrwxr-x··2.0·unx······271·b-·stor·80-Jan-01·00:00·android/net/dhcp/IDhcpServerCallbacks.class67 ?rwxrwxr-x··2.0·unx······271·b-·stor·80-Jan-01·00:00·android/net/dhcp/IDhcpServerCallbacks.class
68 ?rwxrwxr-x··2.0·unx······604·b-·stor·80-Jan-01·00:00·android/net/ip/-$$Lambda$IpServer$DhcpEventCallback$7aH9Sw9af63oN_b5UeJcSHs2dCA.class68 ?rwxrwxr-x··2.0·unx······604·b-·stor·80-Jan-01·00:00·android/net/ip/-$$Lambda$IpServer$DhcpEventCallback$7aH9Sw9af63oN_b5UeJcSHs2dCA.class
69 ?rwxrwxr-x··2.0·unx······706·b-·stor·80-Jan-01·00:00·android/net/ip/-$$Lambda$IpServer$DhcpServerCallbacksImpl$jOx3aMVF_QeZp19IuEPKpIgN6u4.class69 ?rwxrwxr-x··2.0·unx······706·b-·stor·80-Jan-01·00:00·android/net/ip/-$$Lambda$IpServer$DhcpServerCallbacksImpl$nBlfeyPZEu2j0KBs4BJklDJTve4.class
70 ?rwxrwxr-x··2.0·unx······576·b-·stor·80-Jan-01·00:00·android/net/ip/-$$Lambda$IpServer$OnHandlerStatusCallback$czoKoFz-ZQJY8J5O14qT9czTIoo.class70 ?rwxrwxr-x··2.0·unx······576·b-·stor·80-Jan-01·00:00·android/net/ip/-$$Lambda$IpServer$OnHandlerStatusCallback$czoKoFz-ZQJY8J5O14qT9czTIoo.class
71 ?rwxrwxr-x··2.0·unx······407·b-·stor·80-Jan-01·00:00·android/net/ip/-$$Lambda$VnCe_2ytttPRhxeMpr6qsJseAAg.class71 ?rwxrwxr-x··2.0·unx······407·b-·stor·80-Jan-01·00:00·android/net/ip/-$$Lambda$VnCe_2ytttPRhxeMpr6qsJseAAg.class
72 ?rwxrwxr-x··2.0·unx·····2607·b-·stor·80-Jan-01·00:00·android/net/ip/InterfaceController.class72 ?rwxrwxr-x··2.0·unx·····2607·b-·stor·80-Jan-01·00:00·android/net/ip/InterfaceController.class
73 ?rwxrwxr-x··2.0·unx·····1565·b-·stor·80-Jan-01·00:00·android/net/ip/IpNeighborMonitor$NeighborEvent.class73 ?rwxrwxr-x··2.0·unx·····1565·b-·stor·80-Jan-01·00:00·android/net/ip/IpNeighborMonitor$NeighborEvent.class
74 ?rwxrwxr-x··2.0·unx······177·b-·stor·80-Jan-01·00:00·android/net/ip/IpNeighborMonitor$NeighborEventConsumer.class74 ?rwxrwxr-x··2.0·unx······177·b-·stor·80-Jan-01·00:00·android/net/ip/IpNeighborMonitor$NeighborEventConsumer.class
75 ?rwxrwxr-x··2.0·unx······370·b-·stor·80-Jan-01·00:00·android/net/ip/IpServer$Callback.class75 ?rwxrwxr-x··2.0·unx······370·b-·stor·80-Jan-01·00:00·android/net/ip/IpServer$Callback.class
76 ?rwxrwxr-x··2.0·unx·····1666·b-·stor·80-Jan-01·00:00·android/net/ip/IpServer$Dependencies.class76 ?rwxrwxr-x··2.0·unx·····1666·b-·stor·80-Jan-01·00:00·android/net/ip/IpServer$Dependencies.class
Offset 160, 47 lines modifiedOffset 160, 47 lines modified
160 ?rwxrwxr-x··2.0·unx····15732·b-·defN·80-Jan-01·00:00·com/android/networkstack/tethering/OffloadController.class160 ?rwxrwxr-x··2.0·unx····15732·b-·defN·80-Jan-01·00:00·com/android/networkstack/tethering/OffloadController.class
161 ?rwxrwxr-x··2.0·unx······113·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/OffloadHardwareInterface$1.class161 ?rwxrwxr-x··2.0·unx······113·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/OffloadHardwareInterface$1.class
162 ?rwxrwxr-x··2.0·unx······605·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/OffloadHardwareInterface$CbResults.class162 ?rwxrwxr-x··2.0·unx······605·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/OffloadHardwareInterface$CbResults.class
163 ?rwxrwxr-x··2.0·unx······401·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/OffloadHardwareInterface$ControlCallback.class163 ?rwxrwxr-x··2.0·unx······401·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/OffloadHardwareInterface$ControlCallback.class
164 ?rwxrwxr-x··2.0·unx·····2500·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/OffloadHardwareInterface$Dependencies.class164 ?rwxrwxr-x··2.0·unx·····2500·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/OffloadHardwareInterface$Dependencies.class
165 ?rwxrwxr-x··2.0·unx······753·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/OffloadHardwareInterface$ForwardedStats.class165 ?rwxrwxr-x··2.0·unx······753·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/OffloadHardwareInterface$ForwardedStats.class
166 ?rwxrwxr-x··2.0·unx····11004·b-·defN·80-Jan-01·00:00·com/android/networkstack/tethering/OffloadHardwareInterface.class166 ?rwxrwxr-x··2.0·unx····11004·b-·defN·80-Jan-01·00:00·com/android/networkstack/tethering/OffloadHardwareInterface.class
167 ?rwxrwxr-x··2.0·unx·····7577·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/PrivateAddressCoordinator.class167 ?rwxrwxr-x··2.0·unx·····5342·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/PrivateAddressCoordinator.class
168 ?rwxrwxr-x··2.0·unx······575·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/R$array.class168 ?rwxrwxr-x··2.0·unx······575·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/R$array.class
169 ?rwxrwxr-x··2.0·unx······421·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/R$bool.class169 ?rwxrwxr-x··2.0·unx······348·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/R$bool.class
170 ?rwxrwxr-x··2.0·unx······164·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/R$drawable.class170 ?rwxrwxr-x··2.0·unx······164·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/R$drawable.class
171 ?rwxrwxr-x··2.0·unx······310·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/R$integer.class171 ?rwxrwxr-x··2.0·unx······310·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/R$integer.class
172 ?rwxrwxr-x··2.0·unx······763·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/R$string.class172 ?rwxrwxr-x··2.0·unx······763·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/R$string.class
173 ?rwxrwxr-x··2.0·unx·····1346·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/Tethering$3.class173 ?rwxrwxr-x··2.0·unx·····1346·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/Tethering$3.class
174 ?rwxrwxr-x··2.0·unx·····2198·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/Tethering$ActiveDataSubIdListener.class174 ?rwxrwxr-x··2.0·unx·····2198·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/Tethering$ActiveDataSubIdListener.class
175 ?rwxrwxr-x··2.0·unx······332·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/Tethering$CallbackCookie.class175 ?rwxrwxr-x··2.0·unx······332·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/Tethering$CallbackCookie.class
176 ?rwxrwxr-x··2.0·unx·····1429·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/Tethering$EthernetCallback.class176 ?rwxrwxr-x··2.0·unx·····1429·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/Tethering$EthernetCallback.class
177 ?rwxrwxr-x··2.0·unx·····7091·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/Tethering$StateReceiver.class177 ?rwxrwxr-x··2.0·unx·····7091·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/Tethering$StateReceiver.class
178 ?rwxrwxr-x··2.0·unx·····3449·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/Tethering$TetherMainSM$OffloadWrapper.class178 ?rwxrwxr-x··2.0·unx·····3459·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/Tethering$TetherMasterSM$OffloadWrapper.class
179 ?rwxrwxr-x··2.0·unx······429·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/Tethering$TetherState.class179 ?rwxrwxr-x··2.0·unx······429·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/Tethering$TetherState.class
180 ?rwxrwxr-x··2.0·unx······788·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/Tethering$TetheringSoftApCallback.class180 ?rwxrwxr-x··2.0·unx······788·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/Tethering$TetheringSoftApCallback.class
181 ?rwxrwxr-x··2.0·unx······855·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/Tethering$TetheringThreadExecutor.class181 ?rwxrwxr-x··2.0·unx······855·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/Tethering$TetheringThreadExecutor.class
182 ?rwxrwxr-x··2.0·unx·····1237·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/Tethering$UserRestrictionActionListener.class182 ?rwxrwxr-x··2.0·unx·····1237·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/Tethering$UserRestrictionActionListener.class
183 ?rwxrwxr-x··2.0·unx····41733·b-·defN·80-Jan-01·00:00·com/android/networkstack/tethering/Tethering.class183 ?rwxrwxr-x··2.0·unx····41615·b-·defN·80-Jan-01·00:00·com/android/networkstack/tethering/Tethering.class
184 ?rwxrwxr-x··2.0·unx····10876·b-·defN·80-Jan-01·00:00·com/android/networkstack/tethering/TetheringConfiguration.class184 ?rwxrwxr-x··2.0·unx····10412·b-·defN·80-Jan-01·00:00·com/android/networkstack/tethering/TetheringConfiguration.class
185 ?rwxrwxr-x··2.0·unx·····4622·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/TetheringDependencies.class185 ?rwxrwxr-x··2.0·unx·····4236·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/TetheringDependencies.class
186 ?rwxrwxr-x··2.0·unx·····2293·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/TetheringInterfaceUtils.class186 ?rwxrwxr-x··2.0·unx·····2293·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/TetheringInterfaceUtils.class
187 ?rwxrwxr-x··2.0·unx······353·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/TetheringNotificationUpdater$MccMncOverrideInfo.class187 ?rwxrwxr-x··2.0·unx······353·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/TetheringNotificationUpdater$MccMncOverrideInfo.class
188 ?rwxrwxr-x··2.0·unx······716·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/TetheringNotificationUpdater$NotificationHandler.class188 ?rwxrwxr-x··2.0·unx······716·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/TetheringNotificationUpdater$NotificationHandler.class
189 ?rwxrwxr-x··2.0·unx·····8710·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/TetheringNotificationUpdater.class189 ?rwxrwxr-x··2.0·unx·····8710·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/TetheringNotificationUpdater.class
190 ?rwxrwxr-x··2.0·unx·····4254·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/TetheringService$TetheringConnector.class190 ?rwxrwxr-x··2.0·unx·····4254·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/TetheringService$TetheringConnector.class
191 ?rwxrwxr-x··2.0·unx·····1644·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/TetheringService.class191 ?rwxrwxr-x··2.0·unx·····1644·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/TetheringService.class
192 ?rwxrwxr-x··2.0·unx······111·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/UpstreamNetworkMonitor$1.class192 ?rwxrwxr-x··2.0·unx······111·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/UpstreamNetworkMonitor$1.class
193 ?rwxrwxr-x··2.0·unx······411·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/UpstreamNetworkMonitor$TypeStatePair.class193 ?rwxrwxr-x··2.0·unx······411·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/UpstreamNetworkMonitor$TypeStatePair.class
194 ?rwxrwxr-x··2.0·unx·····2153·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/UpstreamNetworkMonitor$UpstreamNetworkCallback.class194 ?rwxrwxr-x··2.0·unx·····2153·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/UpstreamNetworkMonitor$UpstreamNetworkCallback.class
195 ?rwxrwxr-x··2.0·unx····10823·b-·defN·80-Jan-01·00:00·com/android/networkstack/tethering/UpstreamNetworkMonitor.class195 ?rwxrwxr-x··2.0·unx····10823·b-·defN·80-Jan-01·00:00·com/android/networkstack/tethering/UpstreamNetworkMonitor.class
196 ?rwxrwxr-x··2.0·unx······773·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/UpstreamNetworkState.class196 ?rwxrwxr-x··2.0·unx······773·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/UpstreamNetworkState.class
197 ?rwxrwxr-x··2.0·unx······139·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/util/IState.class197 ?rwxrwxr-x··2.0·unx······139·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/util/IState.class
198 ?rwxrwxr-x··2.0·unx·····1804·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/util/IndentingPrintWriter.class198 ?rwxrwxr-x··2.0·unx·····1804·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/util/IndentingPrintWriter.class
199 ?rwxrwxr-x··2.0·unx······920·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/util/Inet4AddressUtils.class199 ?rwxrwxr-x··2.0·unx······682·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/util/Inet4AddressUtils.class
200 ?rwxrwxr-x··2.0·unx······522·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/util/LocalLog$ReadOnlyLocalLog.class200 ?rwxrwxr-x··2.0·unx······522·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/util/LocalLog$ReadOnlyLocalLog.class
201 ?rwxrwxr-x··2.0·unx·····2148·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/util/LocalLog.class201 ?rwxrwxr-x··2.0·unx·····2148·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/util/LocalLog.class
202 ?rwxrwxr-x··2.0·unx······542·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/util/MessageUtils$DuplicateConstantError.class202 ?rwxrwxr-x··2.0·unx······542·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/util/MessageUtils$DuplicateConstantError.class
203 ?rwxrwxr-x··2.0·unx·····2165·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/util/MessageUtils.class203 ?rwxrwxr-x··2.0·unx·····2165·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/util/MessageUtils.class
204 ?rwxrwxr-x··2.0·unx······964·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/util/NetUtils.class204 ?rwxrwxr-x··2.0·unx······964·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/util/NetUtils.class
205 ?rwxrwxr-x··2.0·unx······106·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/util/StateMachine$1.class205 ?rwxrwxr-x··2.0·unx······106·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/util/StateMachine$1.class
206 ?rwxrwxr-x··2.0·unx·····2193·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/util/StateMachine$LogRec.class206 ?rwxrwxr-x··2.0·unx·····2193·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/util/StateMachine$LogRec.class
Offset 222, 15 lines modifiedOffset 222, 15 lines modified
222 ?rwxrwxr-x··2.0·unx·····2168·b-·stor·80-Jan-01·00:00·android/net/dhcp/DhcpServingParamsParcelExt.class222 ?rwxrwxr-x··2.0·unx·····2168·b-·stor·80-Jan-01·00:00·android/net/dhcp/DhcpServingParamsParcelExt.class
223 ?rwxrwxr-x··2.0·unx·····1590·b-·stor·80-Jan-01·00:00·android/net/dhcp/IDhcpEventCallbacks$Stub.class223 ?rwxrwxr-x··2.0·unx·····1590·b-·stor·80-Jan-01·00:00·android/net/dhcp/IDhcpEventCallbacks$Stub.class
224 ?rwxrwxr-x··2.0·unx·····1996·b-·stor·80-Jan-01·00:00·android/net/dhcp/IDhcpServer$Stub$Proxy.class224 ?rwxrwxr-x··2.0·unx·····1996·b-·stor·80-Jan-01·00:00·android/net/dhcp/IDhcpServer$Stub$Proxy.class
225 ?rwxrwxr-x··2.0·unx······888·b-·stor·80-Jan-01·00:00·android/net/dhcp/IDhcpServer$Stub.class225 ?rwxrwxr-x··2.0·unx······888·b-·stor·80-Jan-01·00:00·android/net/dhcp/IDhcpServer$Stub.class
226 ?rwxrwxr-x··2.0·unx·····1316·b-·stor·80-Jan-01·00:00·android/net/dhcp/IDhcpServerCallbacks$Stub.class226 ?rwxrwxr-x··2.0·unx·····1316·b-·stor·80-Jan-01·00:00·android/net/dhcp/IDhcpServerCallbacks$Stub.class
227 ?rwxrwxr-x··2.0·unx······563·b-·stor·80-Jan-01·00:00·android/net/ip/-$$Lambda$IpNeighborMonitor$4TdKAwtCtq9Ri1cSdW1mKm0JycM.class227 ?rwxrwxr-x··2.0·unx······563·b-·stor·80-Jan-01·00:00·android/net/ip/-$$Lambda$IpNeighborMonitor$4TdKAwtCtq9Ri1cSdW1mKm0JycM.class
228 ?rwxrwxr-x··2.0·unx······627·b-·stor·80-Jan-01·00:00·android/net/ip/IpServer$MyNeighborEventConsumer.class228 ?rwxrwxr-x··2.0·unx······627·b-·stor·80-Jan-01·00:00·android/net/ip/IpServer$MyNeighborEventConsumer.class
229 ?rwxrwxr-x··2.0·unx····22803·b-·defN·80-Jan-01·00:00·android/net/ip/IpServer.class229 ?rwxrwxr-x··2.0·unx····22698·b-·defN·80-Jan-01·00:00·android/net/ip/IpServer.class
230 ?rwxrwxr-x··2.0·unx·····1727·b-·stor·80-Jan-01·00:00·android/net/netlink/ConntrackMessage.class230 ?rwxrwxr-x··2.0·unx·····1727·b-·stor·80-Jan-01·00:00·android/net/netlink/ConntrackMessage.class
231 ?rwxrwxr-x··2.0·unx·····1152·b-·stor·80-Jan-01·00:00·android/net/netlink/InetDiagMessage.class231 ?rwxrwxr-x··2.0·unx·····1152·b-·stor·80-Jan-01·00:00·android/net/netlink/InetDiagMessage.class
232 ?rwxrwxr-x··2.0·unx·····2735·b-·stor·80-Jan-01·00:00·android/net/netlink/NduseroptMessage.class232 ?rwxrwxr-x··2.0·unx·····2735·b-·stor·80-Jan-01·00:00·android/net/netlink/NduseroptMessage.class
233 ?rwxrwxr-x··2.0·unx·····1099·b-·stor·80-Jan-01·00:00·android/net/netlink/NetlinkErrorMessage.class233 ?rwxrwxr-x··2.0·unx·····1099·b-·stor·80-Jan-01·00:00·android/net/netlink/NetlinkErrorMessage.class
234 ?rwxrwxr-x··2.0·unx·····2894·b-·stor·80-Jan-01·00:00·android/net/netlink/RtNetlinkNeighborMessage.class234 ?rwxrwxr-x··2.0·unx·····2894·b-·stor·80-Jan-01·00:00·android/net/netlink/RtNetlinkNeighborMessage.class
235 ?rwxrwxr-x··2.0·unx·····2421·b-·stor·80-Jan-01·00:00·android/net/netlink/StructNdOptPref64.class235 ?rwxrwxr-x··2.0·unx·····2421·b-·stor·80-Jan-01·00:00·android/net/netlink/StructNdOptPref64.class
236 ?rwxrwxr-x··2.0·unx······545·b-·stor·80-Jan-01·00:00·android/net/util/PacketReader.class236 ?rwxrwxr-x··2.0·unx······545·b-·stor·80-Jan-01·00:00·android/net/util/PacketReader.class
Offset 245, 40 lines modifiedOffset 245, 40 lines modified
245 ?rwxrwxr-x··2.0·unx······747·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/-$$Lambda$OffloadHardwareInterface$sT0hgeQoQFNiRI8KgKWGTJN9ze0.class245 ?rwxrwxr-x··2.0·unx······747·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/-$$Lambda$OffloadHardwareInterface$sT0hgeQoQFNiRI8KgKWGTJN9ze0.class
246 ?rwxrwxr-x··2.0·unx······631·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/-$$Lambda$Tethering$8-Ib-Vl0fbKc9GA57Tv_pqRMDOs.class246 ?rwxrwxr-x··2.0·unx······631·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/-$$Lambda$Tethering$8-Ib-Vl0fbKc9GA57Tv_pqRMDOs.class
247 ?rwxrwxr-x··2.0·unx······569·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/-$$Lambda$Tethering$QFNaW1CjiNjZ1tucwWM4UmgI89c.class247 ?rwxrwxr-x··2.0·unx······569·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/-$$Lambda$Tethering$QFNaW1CjiNjZ1tucwWM4UmgI89c.class
248 ?rwxrwxr-x··2.0·unx·····2320·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/OffloadController$1.class248 ?rwxrwxr-x··2.0·unx·····2320·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/OffloadController$1.class
249 ?rwxrwxr-x··2.0·unx······666·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/Tethering$1.class249 ?rwxrwxr-x··2.0·unx······666·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/Tethering$1.class
250 ?rwxrwxr-x··2.0·unx·····1501·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/Tethering$2.class250 ?rwxrwxr-x··2.0·unx·····1501·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/Tethering$2.class
251 ?rwxrwxr-x··2.0·unx·····1130·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/Tethering$4.class251 ?rwxrwxr-x··2.0·unx·····1130·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/Tethering$4.class
252 ?rwxrwxr-x··2.0·unx····12551·b-·defN·80-Jan-01·00:00·com/android/networkstack/tethering/Tethering$TetherMainSM.class252 ?rwxrwxr-x··2.0·unx····12726·b-·defN·80-Jan-01·00:00·com/android/networkstack/tethering/Tethering$TetherMasterSM.class
253 ?rwxrwxr-x··2.0·unx·····1271·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/TetheringService$1$1.class253 ?rwxrwxr-x··2.0·unx·····1271·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/TetheringService$1$1.class
254 ?rwxrwxr-x··2.0·unx·····2438·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/TetheringService$1.class254 ?rwxrwxr-x··2.0·unx·····2438·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/TetheringService$1.class
255 ?rwxrwxr-x··2.0·unx······614·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/util/State.class255 ?rwxrwxr-x··2.0·unx······614·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/util/State.class
256 ?rwxrwxr-x··2.0·unx······356·b-·stor·80-Jan-01·00:00·android/net/dhcp/DhcpServerCallbacks.class256 ?rwxrwxr-x··2.0·unx······356·b-·stor·80-Jan-01·00:00·android/net/dhcp/DhcpServerCallbacks.class
257 ?rwxrwxr-x··2.0·unx·····3673·b-·stor·80-Jan-01·00:00·android/net/ip/IpServer$BaseServingState.class257 ?rwxrwxr-x··2.0·unx·····3673·b-·stor·80-Jan-01·00:00·android/net/ip/IpServer$BaseServingState.class
258 ?rwxrwxr-x··2.0·unx·····3374·b-·stor·80-Jan-01·00:00·android/net/ip/IpServer$DhcpEventCallback.class258 ?rwxrwxr-x··2.0·unx·····3374·b-·stor·80-Jan-01·00:00·android/net/ip/IpServer$DhcpEventCallback.class
259 ?rwxrwxr-x··2.0·unx·····1718·b-·stor·80-Jan-01·00:00·android/net/ip/IpServer$InitialState.class259 ?rwxrwxr-x··2.0·unx·····1718·b-·stor·80-Jan-01·00:00·android/net/ip/IpServer$InitialState.class
260 ?rwxrwxr-x··2.0·unx·····1162·b-·stor·80-Jan-01·00:00·android/net/ip/IpServer$OnHandlerStatusCallback.class260 ?rwxrwxr-x··2.0·unx·····1162·b-·stor·80-Jan-01·00:00·android/net/ip/IpServer$OnHandlerStatusCallback.class
261 ?rwxrwxr-x··2.0·unx······619·b-·stor·80-Jan-01·00:00·android/net/ip/IpServer$UnavailableState.class261 ?rwxrwxr-x··2.0·unx······619·b-·stor·80-Jan-01·00:00·android/net/ip/IpServer$UnavailableState.class
262 ?rwxrwxr-x··2.0·unx·····1721·b-·stor·80-Jan-01·00:00·android/net/ip/IpServer$WaitingForRestartState.class262 ?rwxrwxr-x··2.0·unx·····1721·b-·stor·80-Jan-01·00:00·android/net/ip/IpServer$WaitingForRestartState.class
263 ?rwxrwxr-x··2.0·unx·····3321·b-·stor·80-Jan-01·00:00·android/net/ip/NetlinkMonitor.class263 ?rwxrwxr-x··2.0·unx·····3321·b-·stor·80-Jan-01·00:00·android/net/ip/NetlinkMonitor.class
264 ?rwxrwxr-x··2.0·unx······971·b-·stor·80-Jan-01·00:00·android/net/util/BaseNetdUnsolicitedEventListener.class264 ?rwxrwxr-x··2.0·unx······971·b-·stor·80-Jan-01·00:00·android/net/util/BaseNetdUnsolicitedEventListener.class
265 ?rwxrwxr-x··2.0·unx·····3028·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/OffloadHardwareInterface$TetheringOffloadCallback.class265 ?rwxrwxr-x··2.0·unx·····3028·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/OffloadHardwareInterface$TetheringOffloadCallback.class
266 ?rwxrwxr-x··2.0·unx·····1394·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/Tethering$TetherMainSM$ErrorState.class266 ?rwxrwxr-x··2.0·unx·····1406·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/Tethering$TetherMasterSM$ErrorState.class
267 ?rwxrwxr-x··2.0·unx·····1513·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/Tethering$TetherMainSM$InitialState.class267 ?rwxrwxr-x··2.0·unx·····1527·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/Tethering$TetherMasterSM$InitialState.class
268 ?rwxrwxr-x··2.0·unx·····4446·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/Tethering$TetherMainSM$TetherModeAliveState.class268 ?rwxrwxr-x··2.0·unx·····4211·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/Tethering$TetherMasterSM$TetherModeAliveState.class
269 ?rwxrwxr-x··2.0·unx······974·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/util/StateMachine$SmHandler$HaltingState.class269 ?rwxrwxr-x··2.0·unx······974·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/util/StateMachine$SmHandler$HaltingState.class
270 ?rwxrwxr-x··2.0·unx······529·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/util/StateMachine$SmHandler$QuittingState.class270 ?rwxrwxr-x··2.0·unx······529·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/util/StateMachine$SmHandler$QuittingState.class
271 ?rwxrwxr-x··2.0·unx·····2735·b-·stor·80-Jan-01·00:00·android/net/ip/IpNeighborMonitor.class271 ?rwxrwxr-x··2.0·unx·····2735·b-·stor·80-Jan-01·00:00·android/net/ip/IpNeighborMonitor.class
272 ?rwxrwxr-x··2.0·unx·····1528·b-·stor·80-Jan-01·00:00·android/net/ip/IpServer$1.class272 ?rwxrwxr-x··2.0·unx·····1528·b-·stor·80-Jan-01·00:00·android/net/ip/IpServer$1.class
273 ?rwxrwxr-x··2.0·unx······837·b-·stor·80-Jan-01·00:00·android/net/ip/IpServer$2.class273 ?rwxrwxr-x··2.0·unx······837·b-·stor·80-Jan-01·00:00·android/net/ip/IpServer$2.class
274 ?rwxrwxr-x··2.0·unx·····1046·b-·stor·80-Jan-01·00:00·android/net/ip/IpServer$DhcpServerCallbacksImpl$1.class274 ?rwxrwxr-x··2.0·unx·····1046·b-·stor·80-Jan-01·00:00·android/net/ip/IpServer$DhcpServerCallbacksImpl$1.class
275 ?rwxrwxr-x··2.0·unx·····2902·b-·stor·80-Jan-01·00:00·android/net/ip/IpServer$DhcpServerCallbacksImpl.class275 ?rwxrwxr-x··2.0·unx·····2792·b-·stor·80-Jan-01·00:00·android/net/ip/IpServer$DhcpServerCallbacksImpl.class
276 ?rwxrwxr-x··2.0·unx·····1272·b-·stor·80-Jan-01·00:00·android/net/ip/IpServer$LocalHotspotState.class276 ?rwxrwxr-x··2.0·unx·····1272·b-·stor·80-Jan-01·00:00·android/net/ip/IpServer$LocalHotspotState.class
277 ?rwxrwxr-x··2.0·unx·····4332·b-·stor·80-Jan-01·00:00·android/net/ip/IpServer$TetheredState.class277 ?rwxrwxr-x··2.0·unx·····4332·b-·stor·80-Jan-01·00:00·android/net/ip/IpServer$TetheredState.class
278 ?rwxrwxr-x··2.0·unx·····2431·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/Tethering$NetdCallback.class278 ?rwxrwxr-x··2.0·unx·····2431·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/Tethering$NetdCallback.class
279 ?rwxrwxr-x··2.0·unx·····1305·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/Tethering$TetherMainSM$SetDnsForwardersErrorState.class279 ?rwxrwxr-x··2.0·unx·····1315·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/Tethering$TetherMasterSM$SetDnsForwardersErrorState.class
280 ?rwxrwxr-x··2.0·unx······618·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/Tethering$TetherMainSM$SetIpForwardingDisabledErrorState.class280 ?rwxrwxr-x··2.0·unx······624·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/Tethering$TetherMasterSM$SetIpForwardingDisabledErrorState.class
281 ?rwxrwxr-x··2.0·unx······616·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/Tethering$TetherMainSM$SetIpForwardingEnabledErrorState.class281 ?rwxrwxr-x··2.0·unx······622·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/Tethering$TetherMasterSM$SetIpForwardingEnabledErrorState.class
282 ?rwxrwxr-x··2.0·unx·····1189·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/Tethering$TetherMainSM$StartTetheringErrorState.class282 ?rwxrwxr-x··2.0·unx·····1199·b-·stor·80-Jan-01·00:00·com/android/networkstack/tethering/Tethering$TetherMasterSM$StartTetheringErrorState.class
... Open expanded diff ...
4.06 KB
zipnote «TEMP»/diffoscope_ablb85df_mimgapexes/tmpwccscld0.zip
    
Offset 195, 15 lines modifiedOffset 195, 15 lines modified
  
195 Filename:·android/net/dhcp/IDhcpServerCallbacks.class195 Filename:·android/net/dhcp/IDhcpServerCallbacks.class
196 Comment:·196 Comment:·
  
197 Filename:·android/net/ip/-$$Lambda$IpServer$DhcpEventCallback$7aH9Sw9af63oN_b5UeJcSHs2dCA.class197 Filename:·android/net/ip/-$$Lambda$IpServer$DhcpEventCallback$7aH9Sw9af63oN_b5UeJcSHs2dCA.class
198 Comment:·198 Comment:·
  
199 Filename:·android/net/ip/-$$Lambda$IpServer$DhcpServerCallbacksImpl$jOx3aMVF_QeZp19IuEPKpIgN6u4.class199 Filename:·android/net/ip/-$$Lambda$IpServer$DhcpServerCallbacksImpl$nBlfeyPZEu2j0KBs4BJklDJTve4.class
200 Comment:·200 Comment:·
  
201 Filename:·android/net/ip/-$$Lambda$IpServer$OnHandlerStatusCallback$czoKoFz-ZQJY8J5O14qT9czTIoo.class201 Filename:·android/net/ip/-$$Lambda$IpServer$OnHandlerStatusCallback$czoKoFz-ZQJY8J5O14qT9czTIoo.class
202 Comment:·202 Comment:·
  
203 Filename:·android/net/ip/-$$Lambda$VnCe_2ytttPRhxeMpr6qsJseAAg.class203 Filename:·android/net/ip/-$$Lambda$VnCe_2ytttPRhxeMpr6qsJseAAg.class
204 Comment:·204 Comment:·
Offset 522, 15 lines modifiedOffset 522, 15 lines modified
  
522 Filename:·com/android/networkstack/tethering/Tethering$EthernetCallback.class522 Filename:·com/android/networkstack/tethering/Tethering$EthernetCallback.class
523 Comment:·523 Comment:·
  
524 Filename:·com/android/networkstack/tethering/Tethering$StateReceiver.class524 Filename:·com/android/networkstack/tethering/Tethering$StateReceiver.class
525 Comment:·525 Comment:·
  
526 Filename:·com/android/networkstack/tethering/Tethering$TetherMainSM$OffloadWrapper.class526 Filename:·com/android/networkstack/tethering/Tethering$TetherMasterSM$OffloadWrapper.class
527 Comment:·527 Comment:·
  
528 Filename:·com/android/networkstack/tethering/Tethering$TetherState.class528 Filename:·com/android/networkstack/tethering/Tethering$TetherState.class
529 Comment:·529 Comment:·
  
530 Filename:·com/android/networkstack/tethering/Tethering$TetheringSoftApCallback.class530 Filename:·com/android/networkstack/tethering/Tethering$TetheringSoftApCallback.class
531 Comment:·531 Comment:·
Offset 744, 15 lines modifiedOffset 744, 15 lines modified
  
744 Filename:·com/android/networkstack/tethering/Tethering$2.class744 Filename:·com/android/networkstack/tethering/Tethering$2.class
745 Comment:·745 Comment:·
  
746 Filename:·com/android/networkstack/tethering/Tethering$4.class746 Filename:·com/android/networkstack/tethering/Tethering$4.class
747 Comment:·747 Comment:·
  
748 Filename:·com/android/networkstack/tethering/Tethering$TetherMainSM.class748 Filename:·com/android/networkstack/tethering/Tethering$TetherMasterSM.class
749 Comment:·749 Comment:·
  
750 Filename:·com/android/networkstack/tethering/TetheringService$1$1.class750 Filename:·com/android/networkstack/tethering/TetheringService$1$1.class
751 Comment:·751 Comment:·
  
752 Filename:·com/android/networkstack/tethering/TetheringService$1.class752 Filename:·com/android/networkstack/tethering/TetheringService$1.class
753 Comment:·753 Comment:·
Offset 786, 21 lines modifiedOffset 786, 21 lines modified
  
786 Filename:·android/net/util/BaseNetdUnsolicitedEventListener.class786 Filename:·android/net/util/BaseNetdUnsolicitedEventListener.class
787 Comment:·787 Comment:·
  
788 Filename:·com/android/networkstack/tethering/OffloadHardwareInterface$TetheringOffloadCallback.class788 Filename:·com/android/networkstack/tethering/OffloadHardwareInterface$TetheringOffloadCallback.class
789 Comment:·789 Comment:·
  
790 Filename:·com/android/networkstack/tethering/Tethering$TetherMainSM$ErrorState.class790 Filename:·com/android/networkstack/tethering/Tethering$TetherMasterSM$ErrorState.class
791 Comment:·791 Comment:·
  
792 Filename:·com/android/networkstack/tethering/Tethering$TetherMainSM$InitialState.class792 Filename:·com/android/networkstack/tethering/Tethering$TetherMasterSM$InitialState.class
793 Comment:·793 Comment:·
  
794 Filename:·com/android/networkstack/tethering/Tethering$TetherMainSM$TetherModeAliveState.class794 Filename:·com/android/networkstack/tethering/Tethering$TetherMasterSM$TetherModeAliveState.class
795 Comment:·795 Comment:·
  
796 Filename:·com/android/networkstack/tethering/util/StateMachine$SmHandler$HaltingState.class796 Filename:·com/android/networkstack/tethering/util/StateMachine$SmHandler$HaltingState.class
797 Comment:·797 Comment:·
  
798 Filename:·com/android/networkstack/tethering/util/StateMachine$SmHandler$QuittingState.class798 Filename:·com/android/networkstack/tethering/util/StateMachine$SmHandler$QuittingState.class
799 Comment:·799 Comment:·
Offset 825, 23 lines modifiedOffset 825, 23 lines modified
  
825 Filename:·android/net/ip/IpServer$TetheredState.class825 Filename:·android/net/ip/IpServer$TetheredState.class
826 Comment:·826 Comment:·
  
827 Filename:·com/android/networkstack/tethering/Tethering$NetdCallback.class827 Filename:·com/android/networkstack/tethering/Tethering$NetdCallback.class
828 Comment:·828 Comment:·
  
829 Filename:·com/android/networkstack/tethering/Tethering$TetherMainSM$SetDnsForwardersErrorState.class829 Filename:·com/android/networkstack/tethering/Tethering$TetherMasterSM$SetDnsForwardersErrorState.class
830 Comment:·830 Comment:·
  
831 Filename:·com/android/networkstack/tethering/Tethering$TetherMainSM$SetIpForwardingDisabledErrorState.class831 Filename:·com/android/networkstack/tethering/Tethering$TetherMasterSM$SetIpForwardingDisabledErrorState.class
832 Comment:·832 Comment:·
  
833 Filename:·com/android/networkstack/tethering/Tethering$TetherMainSM$SetIpForwardingEnabledErrorState.class833 Filename:·com/android/networkstack/tethering/Tethering$TetherMasterSM$SetIpForwardingEnabledErrorState.class
834 Comment:·834 Comment:·
  
835 Filename:·com/android/networkstack/tethering/Tethering$TetherMainSM$StartTetheringErrorState.class835 Filename:·com/android/networkstack/tethering/Tethering$TetherMasterSM$StartTetheringErrorState.class
836 Comment:·836 Comment:·
  
837 Filename:·com/android/networkstack/tethering/Tethering$TetherMainSM$StopTetheringErrorState.class837 Filename:·com/android/networkstack/tethering/Tethering$TetherMasterSM$StopTetheringErrorState.class
838 Comment:·838 Comment:·
  
839 Zip·file·comment:·839 Zip·file·comment:·
1.04 KB
com/android/networkstack/tethering/EntitlementManager.class
946 B
procyon -ec {}
    
Offset 276, 15 lines modifiedOffset 276, 15 lines modified
276 ········if·(mUsingCellularAsUpstream)·{276 ········if·(mUsingCellularAsUpstream)·{
277 ············this.maybeRunProvisioning(this.mFetcher.fetchTetheringConfiguration());277 ············this.maybeRunProvisioning(this.mFetcher.fetchTetheringConfiguration());
278 ········}278 ········}
279 ····}279 ····}
280 ····280 ····
281 ····public·void·reevaluateSimCardProvisioning(final·TetheringConfiguration·tetheringConfiguration)·{281 ····public·void·reevaluateSimCardProvisioning(final·TetheringConfiguration·tetheringConfiguration)·{
282 ········if·(!this.mHandler.getLooper().isCurrentThread())·{282 ········if·(!this.mHandler.getLooper().isCurrentThread())·{
283 ············this.mLog.log("reevaluateSimCardProvisioning()·don't·run·in·TetherMainSM·thread");283 ············this.mLog.log("reevaluateSimCardProvisioning()·don't·run·in·TetherMaster·thread");
284 ········}284 ········}
285 ········this.mEntitlementCacheValue.clear();285 ········this.mEntitlementCacheValue.clear();
286 ········this.mCurrentEntitlementResults.clear();286 ········this.mCurrentEntitlementResults.clear();
287 ········if·(tetheringConfiguration.hasMobileHotspotProvisionApp()·&&·!this.carrierConfigAffirmsEntitlementCheckNotRequired(tetheringConfiguration))·{287 ········if·(tetheringConfiguration.hasMobileHotspotProvisionApp()·&&·!this.carrierConfigAffirmsEntitlementCheckNotRequired(tetheringConfiguration))·{
288 ············if·(this.mUsingCellularAsUpstream)·{288 ············if·(this.mUsingCellularAsUpstream)·{
289 ················this.maybeRunProvisioning(tetheringConfiguration);289 ················this.maybeRunProvisioning(tetheringConfiguration);
290 ············}290 ············}
17.1 KB
com/android/networkstack/tethering/PrivateAddressCoordinator.class
17.0 KB
procyon -ec {}
    
Offset 1, 167 lines modifiedOffset 1, 82 lines modified
  
1 package·com.android.networkstack.tethering;1 package·com.android.networkstack.tethering;
  
2 import·java.io.PrintWriter;2 import·java.io.PrintWriter;
3 import·com.android.networkstack.tethering.util.StateMachine;3 import·com.android.networkstack.tethering.util.StateMachine;
4 import·android.net.NetworkCapabilities; 
5 import·android.net.Network; 
6 import·java.util.HashSet;4 import·android.net.LinkProperties;
 5 import·java.net.UnknownHostException;
 6 import·java.net.InetAddress;
7 import·java.util.Random;7 import·java.util.Random;
8 import·com.android.networkstack.tethering.util.IndentingPrintWriter;8 import·com.android.networkstack.tethering.util.IndentingPrintWriter;
9 import·java.net.Inet4Address; 
10 import·android.net.util.PrefixUtils; 
11 import·android.net.ip.IpServer; 
12 import·java.util.Iterator; 
13 import·java.net.InetAddress; 
14 import·com.android.networkstack.tethering.util.Inet4AddressUtils; 
15 import·java.util.Collection;9 import·java.util.Collection;
16 import·java.util.ArrayList; 
17 import·java.util.Arrays;10 import·java.util.Arrays;
18 import·android.net.IpPrefix;11 import·android.net.Network;
 12 import·java.util.Iterator;
 13 import·java.util.ArrayList;
 14 import·java.util.List;
19 import·android.net.LinkAddress;15 import·android.net.LinkAddress;
 16 import·android.net.util.PrefixUtils;
 17 import·android.net.ip.IpServer;
20 import·android.content.Context;18 import·android.content.Context;
21 import·android.util.ArrayMap;19 import·android.util.ArrayMap;
22 import·java.util.List;20 import·android.net.IpPrefix;
23 import·android.util.ArraySet;21 import·android.util.ArraySet;
24 import·android.net.ConnectivityManager;22 import·android.net.ConnectivityManager;
25 import·android.util.SparseArray; 
  
26 public·class·PrivateAddressCoordinator23 public·class·PrivateAddressCoordinator
27 {24 {
28 ····private·final·SparseArray·mCachedAddresses; 
29 ····private·final·TetheringConfiguration·mConfig; 
30 ····private·final·ConnectivityManager·mConnectivityMgr;25 ····private·final·ConnectivityManager·mConnectivityMgr;
31 ····private·final·ArraySet·mDownstreams;26 ····private·final·ArraySet·mDownstreams;
32 ····private·final·List·mTetheringPrefixes;27 ····private·final·IpPrefix·mTetheringPrefix;
33 ····private·final·ArrayMap·mUpstreamPrefixMap;28 ····private·final·ArrayMap·mUpstreamPrefixMap;
34 ····29 ····
35 ····public·PrivateAddressCoordinator(final·Context·context,·final·TetheringConfiguration·mConfig)·{30 ····public·PrivateAddressCoordinator(final·Context·context)·{
36 ········this.mDownstreams·=·new·ArraySet();31 ········this.mDownstreams·=·new·ArraySet();
37 ········this.mUpstreamPrefixMap·=·new·ArrayMap();32 ········this.mUpstreamPrefixMap·=·new·ArrayMap();
 33 ········this.mTetheringPrefix·=·new·IpPrefix("192.168.0.0/16");
38 ········this.mConnectivityMgr·=·(ConnectivityManager)context.getSystemService("connectivity");34 ········this.mConnectivityMgr·=·(ConnectivityManager)context.getSystemService("connectivity");
39 ········this.mConfig·=·mConfig; 
40 ········(this.mCachedAddresses·=·new·SparseArray()).put(2,·(Object)new·LinkAddress("192.168.44.1/24")); 
41 ········this.mCachedAddresses.put(3,·(Object)new·LinkAddress("192.168.49.1/24")); 
42 ········this.mTetheringPrefixes·=·new·ArrayList(Arrays.asList(new·IpPrefix("192.168.0.0/16"))); 
43 ········if·(mConfig.isSelectAllPrefixRangeEnabled())·{ 
44 ············this.mTetheringPrefixes.add(new·IpPrefix("172.16.0.0/12")); 
45 ············this.mTetheringPrefixes.add(new·IpPrefix("10.0.0.0/8")); 
46 ········} 
47 ····} 
48 ···· 
49 ····private·LinkAddress·chooseDownstreamAddress(IpPrefix·availablePrefixFromRange)·{ 
50 ········final·int·prefixLengthToV4NetmaskIntHTH·=·Inet4AddressUtils.prefixLengthToV4NetmaskIntHTH(availablePrefixFromRange.getPrefixLength()); 
51 ········final·int·prefixBaseAddress·=·this.getPrefixBaseAddress(availablePrefixFromRange); 
52 ········final·int·prefixLengthToV4NetmaskIntHTH2·=·Inet4AddressUtils.prefixLengthToV4NetmaskIntHTH(24); 
53 ········final·int·randomInt·=·this.getRandomInt(); 
54 ········final·int·n·=·~prefixLengthToV4NetmaskIntHTH; 
55 ········final·int·n2·=·randomInt·&·n·&·prefixLengthToV4NetmaskIntHTH2; 
56 ········final·int·sanitizedSubAddr·=·this.getSanitizedSubAddr(~prefixLengthToV4NetmaskIntHTH2); 
57 ········final·IpPrefix·availablePrefixFromRange2·=·this.findAvailablePrefixFromRange(n2,·n·+·1,·prefixBaseAddress,·prefixLengthToV4NetmaskIntHTH); 
58 ········if·(availablePrefixFromRange2·!=·null)·{ 
59 ············return·this.getLinkAddress(availablePrefixFromRange2,·sanitizedSubAddr); 
60 ········} 
61 ········availablePrefixFromRange·=·this.findAvailablePrefixFromRange(0,·n2,·prefixBaseAddress,·prefixLengthToV4NetmaskIntHTH); 
62 ········return·this.getLinkAddress(availablePrefixFromRange,·sanitizedSubAddr); 
63 ····} 
64 ···· 
65 ····private·IpPrefix·findAvailablePrefixFromRange(int·i,·final·int·n,·final·int·n2,·final·int·n3)·{ 
66 ········while·(i·<·n)·{ 
67 ············i·|=·n2; 
68 ············final·IpPrefix·ipPrefix·=·new·IpPrefix((InetAddress)Inet4AddressUtils.intToInet4AddressHTH(i),·24); 
69 ············final·IpPrefix·conflictPrefix·=·this.getConflictPrefix(ipPrefix); 
70 ············if·(conflictPrefix·==·null)·{ 
71 ················return·ipPrefix; 
72 ············} 
73 ············i·=·this.getNextSubPrefix(conflictPrefix,·n3); 
74 ········} 
75 ········return·null; 
76 ····} 
77 ···· 
78 ····private·IpPrefix·getConflictPrefix(final·IpPrefix·ipPrefix)·{ 
79 ········final·IpPrefix·conflictWithUpstream·=·this.getConflictWithUpstream(ipPrefix); 
80 ········if·(conflictWithUpstream·!=·null)·{ 
81 ············return·conflictWithUpstream; 
82 ········} 
83 ········return·this.getInUseDownstreamPrefix(ipPrefix); 
84 ····} 
85 ···· 
86 ····private·IpPrefix·getConflictWithUpstream(final·IpPrefix·ipPrefix)·{ 
87 ········for·(int·i·=·0;·i·<·this.mUpstreamPrefixMap.size();·++i)·{ 
88 ············for·(final·IpPrefix·ipPrefix2·:·(List)this.mUpstreamPrefixMap.valueAt(i))·{ 
89 ················if·(this.isConflictPrefix(ipPrefix,·ipPrefix2))·{ 
90 ····················return·ipPrefix2; 
91 ················} 
92 ············} 
93 ········} 
94 ········return·null; 
95 ····}35 ····}
96 ····36 ····
97 ····private·IpPrefix·getDownstreamPrefix(final·IpServer·ipServer)·{37 ····private·IpPrefix·getDownstreamPrefix(final·IpServer·ipServer)·{
 38 ········final·LinkAddress·address·=·ipServer.getAddress();
 39 ········if·(address·==·null)·{
 40 ············return·null;
98 ········return·PrefixUtils.asIpPrefix(ipServer.getAddress()); 
99 ····} 
100 ···· 
101 ····private·IpPrefix·getInUseDownstreamPrefix(final·IpPrefix·ipPrefix)·{ 
102 ········for·(int·i·=·0;·i·<·this.mCachedAddresses.size();·++i)·{ 
103 ············final·IpPrefix·ipPrefix2·=·PrefixUtils.asIpPrefix((LinkAddress)this.mCachedAddresses.valueAt(i)); 
104 ············if·(this.isConflictPrefix(ipPrefix,·ipPrefix2))·{ 
105 ················return·ipPrefix2; 
106 ············} 
107 ········} 
108 ········final·Iterator·iterator·=·this.mDownstreams.iterator(); 
109 ········while·(iterator.hasNext())·{ 
110 ············final·IpPrefix·downstreamPrefix·=·this.getDownstreamPrefix(iterator.next()); 
111 ············if·(this.isConflictPrefix(ipPrefix,·downstreamPrefix))·{ 
112 ················return·downstreamPrefix; 
113 ············} 
... Open expanded diff ...
786 B
com/android/networkstack/tethering/R$bool.class
692 B
procyon -ec {}
    
Offset 1, 11 lines modifiedOffset 1, 10 lines modified
  
1 package·com.android.networkstack.tethering;1 package·com.android.networkstack.tethering;
  
2 public·final·class·R$bool2 public·final·class·R$bool
3 {3 {
4 ····public·static·final·int·config_tether_enable_bpf_offload·=·2130837504;4 ····public·static·final·int·config_tether_enable_bpf_offload·=·2130837504;
5 ····public·static·final·int·config_tether_enable_legacy_dhcp_server·=·2130837505;5 ····public·static·final·int·config_tether_enable_legacy_dhcp_server·=·2130837505;
6 ····public·static·final·int·config_tether_enable_legacy_wifi_p2p_dedicated_ip·=·2130837506; 
7 ····public·static·final·int·config_tether_upstream_automatic·=·2130837507;6 ····public·static·final·int·config_tether_upstream_automatic·=·2130837506;
8 ····public·static·final·int·config_upstream_roaming_notification·=·2130837508;7 ····public·static·final·int·config_upstream_roaming_notification·=·2130837507;
9 }8 }
8.75 KB
com/android/networkstack/tethering/Tethering.class
8.65 KB
procyon -ec {}
    
Offset 95, 27 lines modifiedOffset 95, 27 lines modified
95 ····private·final·TetheringNotificationUpdater·mNotificationUpdater;95 ····private·final·TetheringNotificationUpdater·mNotificationUpdater;
96 ····private·final·OffloadController·mOffloadController;96 ····private·final·OffloadController·mOffloadController;
97 ····private·int·mOffloadStatus;97 ····private·int·mOffloadStatus;
98 ····private·final·PrivateAddressCoordinator·mPrivateAddressCoordinator;98 ····private·final·PrivateAddressCoordinator·mPrivateAddressCoordinator;
99 ····private·final·Object·mPublicSync;99 ····private·final·Object·mPublicSync;
100 ····private·boolean·mRndisEnabled;100 ····private·boolean·mRndisEnabled;
101 ····private·final·BroadcastReceiver·mStateReceiver;101 ····private·final·BroadcastReceiver·mStateReceiver;
102 ····private·final·StateMachine·mTetherMainSM;102 ····private·final·StateMachine·mTetherMasterSM;
103 ····private·final·ArrayMap·mTetherStates;103 ····private·final·ArrayMap·mTetherStates;
104 ····private·TetherStatesParcel·mTetherStatesParcel;104 ····private·TetherStatesParcel·mTetherStatesParcel;
105 ····private·Network·mTetherUpstream;105 ····private·Network·mTetherUpstream;
106 ····private·final·RemoteCallbackList·mTetheringEventCallbacks;106 ····private·final·RemoteCallbackList·mTetheringEventCallbacks;
107 ····private·final·Tethering$UserRestrictionActionListener·mTetheringRestriction;107 ····private·final·Tethering$UserRestrictionActionListener·mTetheringRestriction;
108 ····private·final·UpstreamNetworkMonitor·mUpstreamNetworkMonitor;108 ····private·final·UpstreamNetworkMonitor·mUpstreamNetworkMonitor;
109 ····private·final·UserManager·mUserManager;109 ····private·final·UserManager·mUserManager;
110 ····private·String·mWifiP2pTetherInterface;110 ····private·String·mWifiP2pTetherInterface;
111 ····private·boolean·mWifiTetherRequested;111 ····private·boolean·mWifiTetherRequested;
112 ····112 ····
113 ····static·{113 ····static·{
114 ········sMagicDecoderRing·=·MessageUtils.findMessageNames(sMessageClasses·=·new·Class[]·{·Tethering.class,·Tethering$TetherMainSM.class,·IpServer.class·});114 ········sMagicDecoderRing·=·MessageUtils.findMessageNames(sMessageClasses·=·new·Class[]·{·Tethering.class,·Tethering$TetherMasterSM.class,·IpServer.class·});
115 ····}115 ····}
116 ····116 ····
117 ····public·Tethering(TetheringDependencies·mDeps)·{117 ····public·Tethering(TetheringDependencies·mDeps)·{
118 ········this.mLog·=·new·SharedLog(Tethering.TAG);118 ········this.mLog·=·new·SharedLog(Tethering.TAG);
119 ········this.mTetheringEventCallbacks·=·new·RemoteCallbackList();119 ········this.mTetheringEventCallbacks·=·new·RemoteCallbackList();
120 ········this.mActiveTetheringRequests·=·new·SparseArray();120 ········this.mActiveTetheringRequests·=·new·SparseArray();
121 ········this.mActiveDataSubId·=·-1;121 ········this.mActiveDataSubId·=·-1;
Offset 129, 38 lines modifiedOffset 129, 37 lines modified
129 ········this.mNetd·=·this.mDeps.getINetd(context);129 ········this.mNetd·=·this.mDeps.getINetd(context);
130 ········final·Looper·tetheringLooper·=·this.mDeps.getTetheringLooper();130 ········final·Looper·tetheringLooper·=·this.mDeps.getTetheringLooper();
131 ········this.mLooper·=·tetheringLooper;131 ········this.mLooper·=·tetheringLooper;
132 ········this.mNotificationUpdater·=·this.mDeps.getNotificationUpdater(this.mContext,·tetheringLooper);132 ········this.mNotificationUpdater·=·this.mDeps.getNotificationUpdater(this.mContext,·tetheringLooper);
133 ········this.mPublicSync·=·new·Object();133 ········this.mPublicSync·=·new·Object();
134 ········this.mTetherStates·=·new·ArrayMap();134 ········this.mTetherStates·=·new·ArrayMap();
135 ········this.mConnectedClientsTracker·=·new·ConnectedClientsTracker();135 ········this.mConnectedClientsTracker·=·new·ConnectedClientsTracker();
136 ········(this.mTetherMainSM·=·(StateMachine)new·Tethering$TetherMainSM(this,·"TetherMain",·this.mLooper,·mDeps)).start();136 ········(this.mTetherMasterSM·=·(StateMachine)new·Tethering$TetherMasterSM(this,·"TetherMaster",·this.mLooper,·mDeps)).start();
137 ········final·Handler·handler·=·this.mTetherMainSM.getHandler();137 ········final·Handler·handler·=·this.mTetherMasterSM.getHandler();
138 ········this.mHandler·=·handler;138 ········this.mHandler·=·handler;
139 ········this.mOffloadController·=·this.mDeps.getOffloadController(handler,·this.mLog,·(OffloadController$Dependencies)new·Tethering$1(this));139 ········this.mOffloadController·=·this.mDeps.getOffloadController(handler,·this.mLog,·(OffloadController$Dependencies)new·Tethering$1(this));
140 ········mDeps·=·this.mDeps;140 ········mDeps·=·this.mDeps;
141 ········this.mUpstreamNetworkMonitor·=·mDeps.getUpstreamNetworkMonitor(this.mContext,·this.mTetherMainSM,·this.mLog,·5);141 ········this.mUpstreamNetworkMonitor·=·mDeps.getUpstreamNetworkMonitor(this.mContext,·this.mTetherMasterSM,·this.mLog,·5);
142 ········this.mForwardedDownstreams·=·new·LinkedHashSet();142 ········this.mForwardedDownstreams·=·new·LinkedHashSet();
143 ········final·IntentFilter·intentFilter·=·new·IntentFilter();143 ········final·IntentFilter·intentFilter·=·new·IntentFilter();
144 ········intentFilter.addAction("android.telephony.action.CARRIER_CONFIG_CHANGED");144 ········intentFilter.addAction("android.telephony.action.CARRIER_CONFIG_CHANGED");
145 ········mDeps·=·this.mDeps;145 ········mDeps·=·this.mDeps;
146 ········(this.mEntitlementMgr·=·mDeps.getEntitlementManager(this.mContext,·this.mHandler,·this.mLog,·(Runnable)new·-$$Lambda$Tethering$kFbDg5fumH6uWvWOX-JoDKX9Zq4(this))).setOnUiEntitlementFailedListener((EntitlementManager$OnUiEntitlementFailedListener)new·-$$Lambda$Tethering$QFNaW1CjiNjZ1tucwWM4UmgI89c(this));146 ········(this.mEntitlementMgr·=·mDeps.getEntitlementManager(this.mContext,·this.mHandler,·this.mLog,·(Runnable)new·-$$Lambda$Tethering$kFbDg5fumH6uWvWOX-JoDKX9Zq4(this))).setOnUiEntitlementFailedListener((EntitlementManager$OnUiEntitlementFailedListener)new·-$$Lambda$Tethering$QFNaW1CjiNjZ1tucwWM4UmgI89c(this));
147 ········this.mEntitlementMgr.setTetheringConfigurationFetcher((EntitlementManager$TetheringConfigurationFetcher)new·-$$Lambda$Tethering$8-Ib-Vl0fbKc9GA57Tv_pqRMDOs(this));147 ········this.mEntitlementMgr.setTetheringConfigurationFetcher((EntitlementManager$TetheringConfigurationFetcher)new·-$$Lambda$Tethering$8-Ib-Vl0fbKc9GA57Tv_pqRMDOs(this));
148 ········this.mCarrierConfigChange·=·new·VersionedBroadcastListener("CarrierConfigChangeListener",·this.mContext,·this.mHandler,·intentFilter,·(Consumer)new·-$$Lambda$Tethering$bXlvpAMLdjY8zDVZz31dr37qjos(this));148 ········this.mCarrierConfigChange·=·new·VersionedBroadcastListener("CarrierConfigChangeListener",·this.mContext,·this.mHandler,·intentFilter,·(Consumer)new·-$$Lambda$Tethering$bXlvpAMLdjY8zDVZz31dr37qjos(this));
149 ········this.mStateReceiver·=·(BroadcastReceiver)new·Tethering$StateReceiver(this,·(Tethering$1)null);149 ········this.mStateReceiver·=·(BroadcastReceiver)new·Tethering$StateReceiver(this,·(Tethering$1)null);
150 ········final·UserManager·mUserManager·=·(UserManager)this.mContext.getSystemService("user");150 ········final·UserManager·mUserManager·=·(UserManager)this.mContext.getSystemService("user");
151 ········this.mUserManager·=·mUserManager;151 ········this.mUserManager·=·mUserManager;
152 ········this.mTetheringRestriction·=·new·Tethering$UserRestrictionActionListener(mUserManager,·this,·this.mNotificationUpdater);152 ········this.mTetheringRestriction·=·new·Tethering$UserRestrictionActionListener(mUserManager,·this,·this.mNotificationUpdater);
153 ········this.mExecutor·=·new·Tethering$TetheringThreadExecutor(this,·this.mHandler);153 ········this.mExecutor·=·new·Tethering$TetheringThreadExecutor(this,·this.mHandler);
154 ········this.mActiveDataSubIdListener·=·new·Tethering$ActiveDataSubIdListener(this,·(Executor)this.mExecutor);154 ········this.mActiveDataSubIdListener·=·new·Tethering$ActiveDataSubIdListener(this,·(Executor)this.mExecutor);
155 ········this.mNetdCallback·=·new·Tethering$NetdCallback(this,·(Tethering$1)null);155 ········this.mNetdCallback·=·new·Tethering$NetdCallback(this,·(Tethering$1)null);
 156 ········this.mPrivateAddressCoordinator·=·new·PrivateAddressCoordinator(this.mContext);
156 ········this.updateConfiguration();157 ········this.updateConfiguration();
157 ········mDeps·=·this.mDeps;158 ········mDeps·=·this.mDeps;
158 ········this.mPrivateAddressCoordinator·=·mDeps.getPrivateAddressCoordinator(this.mContext,·this.mConfig); 
159 ········mDeps·=·this.mDeps; 
160 ········this.mBpfCoordinator·=·mDeps.getBpfCoordinator((BpfCoordinator$Dependencies)new·Tethering$2(this));159 ········this.mBpfCoordinator·=·mDeps.getBpfCoordinator((BpfCoordinator$Dependencies)new·Tethering$2(this));
161 ········this.startStateMachineUpdaters();160 ········this.startStateMachineUpdaters();
162 ····}161 ····}
163 ····162 ····
164 ····private·static·boolean·argsContain(final·String[]·array,·final·String·s)·{163 ····private·static·boolean·argsContain(final·String[]·array,·final·String·s)·{
165 ········for·(int·length·=·array.length,·i·=·0;·i·<·length;·++i)·{164 ········for·(int·length·=·array.length,·i·=·0;·i·<·length;·++i)·{
166 ············if·(s.equals(array[i]))·{165 ············if·(s.equals(array[i]))·{
Offset 349, 15 lines modifiedOffset 348, 15 lines modified
349 ····}348 ····}
350 ····349 ····
351 ····private·WifiManager·getWifiManager()·{350 ····private·WifiManager·getWifiManager()·{
352 ········return·(WifiManager)this.mContext.getSystemService("wifi");351 ········return·(WifiManager)this.mContext.getSystemService("wifi");
353 ····}352 ····}
354 ····353 ····
355 ····private·boolean·hasCallingPermission(final·String·s)·{354 ····private·boolean·hasCallingPermission(final·String·s)·{
356 ········return·this.mContext.checkCallingOrSelfPermission(s)·==·0;355 ········return·this.mContext.checkCallingPermission(s)·==·0;
357 ····}356 ····}
358 ····357 ····
359 ····private·int·ifaceNameToType(final·String·s)·{358 ····private·int·ifaceNameToType(final·String·s)·{
360 ········final·TetheringConfiguration·mConfig·=·this.mConfig;359 ········final·TetheringConfiguration·mConfig·=·this.mConfig;
361 ········if·(mConfig.isWifi(s))·{360 ········if·(mConfig.isWifi(s))·{
362 ············return·0;361 ············return·0;
363 ········}362 ········}
Offset 455, 45 lines modifiedOffset 454, 45 lines modified
455 ············int·n3·=·1;454 ············int·n3·=·1;
456 ············args[n3]·=·value;455 ············args[n3]·=·value;
457 ············final·Integer·value2·=·n;456 ············final·Integer·value2·=·n;
458 ············final·int·n4·=·2;457 ············final·int·n4·=·2;
459 ············args[n4]·=·value2;458 ············args[n4]·=·value2;
460 ············((SharedLog)o).log(String.format("OBSERVED·iface=%s·state=%s·error=%s",·args));459 ············((SharedLog)o).log(String.format("OBSERVED·iface=%s·state=%s·error=%s",·args));
461 ············if·(n·==·5)·{460 ············if·(n·==·5)·{
462 ················this.mTetherMainSM.sendMessage(6,·(Object)obj);461 ················this.mTetherMasterSM.sendMessage(6,·(Object)obj);
463 ············}462 ············}
464 ············if·(i·!=·0·&&·i·!=·n3)·{463 ············if·(i·!=·0·&&·i·!=·n3)·{
465 ················if·(i·!=·n4·&&·i·!=·n2)·{464 ················if·(i·!=·n4·&&·i·!=·n2)·{
466 ····················final·String·tag·=·Tethering.TAG;465 ····················final·String·tag·=·Tethering.TAG;
467 ····················final·StringBuilder·sb·=·new·StringBuilder();466 ····················final·StringBuilder·sb·=·new·StringBuilder();
468 ····················sb.append("Unknown·interface·state:·");467 ····················sb.append("Unknown·interface·state:·");
469 ····················sb.append(i);468 ····················sb.append(i);
470 ····················Log.wtf(tag,·sb.toString());469 ····················Log.wtf(tag,·sb.toString());
471 ····················return;470 ····················return;
472 ················}471 ················}
473 ············}472 ············}
474 ············else·{473 ············else·{
475 ················n3·=·n4;474 ················n3·=·n4;
476 ············}475 ············}
477 ············this.mTetherMainSM.sendMessage(n3,·i,·0,·(Object)obj);476 ············this.mTetherMasterSM.sendMessage(n3,·i,·0,·(Object)obj);
478 ············this.sendTetherStateChangedBroadcast();477 ············this.sendTetherStateChangedBroadcast();
479 ········}478 ········}
480 ····}479 ····}
481 ····480 ····
482 ····private·void·notifyLinkPropertiesChanged(final·IpServer·obj,·final·LinkProperties·linkProperties)·{481 ····private·void·notifyLinkPropertiesChanged(final·IpServer·obj,·final·LinkProperties·linkProperties)·{
483 ········final·String·interfaceName·=·obj.interfaceName();482 ········final·String·interfaceName·=·obj.interfaceName();
484 ········Object·o·=·this.mPublicSync;483 ········Object·o·=·this.mPublicSync;
485 ········synchronized·(o)·{484 ········synchronized·(o)·{
486 ············final·Tethering$TetherState·tethering$TetherState·=·(Tethering$TetherState)this.mTetherStates.get((Object)interfaceName);485 ············final·Tethering$TetherState·tethering$TetherState·=·(Tethering$TetherState)this.mTetherStates.get((Object)interfaceName);
487 ············if·(tethering$TetherState·!=·null·&&·tethering$TetherState.ipServer.equals(obj))·{486 ············if·(tethering$TetherState·!=·null·&&·tethering$TetherState.ipServer.equals(obj))·{
488 ················final·int·lastState·=·tethering$TetherState.lastState;487 ················final·int·lastState·=·tethering$TetherState.lastState;
489 ················//·monitorexit(o)488 ················//·monitorexit(o)
490 ················o·=·this.mLog;489 ················o·=·this.mLog;
491 ················((SharedLog)o).log(String.format("OBSERVED·LinkProperties·update·iface=%s·state=%s·lp=%s",·interfaceName,·IpServer.getStateString(lastState),·linkProperties));490 ················((SharedLog)o).log(String.format("OBSERVED·LinkProperties·update·iface=%s·state=%s·lp=%s",·interfaceName,·IpServer.getStateString(lastState),·linkProperties));
492 ················this.mTetherMainSM.sendMessage(7,·lastState,·0,·(Object)linkProperties);491 ················this.mTetherMasterSM.sendMessage(7,·lastState,·0,·(Object)linkProperties);
493 ················return;492 ················return;
494 ············}493 ············}
495 ············final·SharedLog·mLog·=·this.mLog;494 ············final·SharedLog·mLog·=·this.mLog;
496 ············final·StringBuilder·sb·=·new·StringBuilder();495 ············final·StringBuilder·sb·=·new·StringBuilder();
497 ············sb.append("got·notification·from·stale·iface·");496 ············sb.append("got·notification·from·stale·iface·");
... Open expanded diff ...
4.47 KB
com/android/networkstack/tethering/TetheringConfiguration.class
4.35 KB
procyon -ec {}
    
Offset 25, 16 lines modifiedOffset 25, 14 lines modified
25 ····public·final·int·activeDataSubId;25 ····public·final·int·activeDataSubId;
26 ····public·final·boolean·chooseUpstreamAutomatically;26 ····public·final·boolean·chooseUpstreamAutomatically;
27 ····public·final·String[]·defaultIPv4DNS;27 ····public·final·String[]·defaultIPv4DNS;
28 ····public·final·boolean·enableLegacyDhcpServer;28 ····public·final·boolean·enableLegacyDhcpServer;
29 ····public·final·boolean·isDunRequired;29 ····public·final·boolean·isDunRequired;
30 ····public·final·String[]·legacyDhcpRanges;30 ····public·final·String[]·legacyDhcpRanges;
31 ····private·final·boolean·mEnableBpfOffload;31 ····private·final·boolean·mEnableBpfOffload;
32 ····private·final·boolean·mEnableSelectAllPrefixRange; 
33 ····private·final·boolean·mEnableWifiP2pDedicatedIp; 
34 ····private·final·int·mOffloadPollInterval;32 ····private·final·int·mOffloadPollInterval;
35 ····public·final·Collection·preferredUpstreamIfaceTypes;33 ····public·final·Collection·preferredUpstreamIfaceTypes;
36 ····public·final·String[]·provisioningApp;34 ····public·final·String[]·provisioningApp;
37 ····public·final·String·provisioningAppNoUi;35 ····public·final·String·provisioningAppNoUi;
38 ····public·final·int·provisioningCheckPeriod;36 ····public·final·int·provisioningCheckPeriod;
39 ····public·final·String·provisioningResponse;37 ····public·final·String·provisioningResponse;
40 ····public·final·String[]·tetherableBluetoothRegexs;38 ····public·final·String[]·tetherableBluetoothRegexs;
Offset 68, 16 lines modifiedOffset 66, 14 lines modified
68 ········this.mEnableBpfOffload·=·this.getEnableBpfOffload(resources);66 ········this.mEnableBpfOffload·=·this.getEnableBpfOffload(resources);
69 ········this.enableLegacyDhcpServer·=·this.getEnableLegacyDhcpServer(resources);67 ········this.enableLegacyDhcpServer·=·this.getEnableLegacyDhcpServer(resources);
70 ········this.provisioningApp·=·getResourceStringArray(resources,·R$array.config_mobile_hotspot_provision_app);68 ········this.provisioningApp·=·getResourceStringArray(resources,·R$array.config_mobile_hotspot_provision_app);
71 ········this.provisioningAppNoUi·=·getResourceString(resources,·R$string.config_mobile_hotspot_provision_app_no_ui);69 ········this.provisioningAppNoUi·=·getResourceString(resources,·R$string.config_mobile_hotspot_provision_app_no_ui);
72 ········this.provisioningCheckPeriod·=·getResourceInteger(resources,·R$integer.config_mobile_hotspot_provision_check_period,·0);70 ········this.provisioningCheckPeriod·=·getResourceInteger(resources,·R$integer.config_mobile_hotspot_provision_check_period,·0);
73 ········this.provisioningResponse·=·getResourceString(resources,·R$string.config_mobile_hotspot_provision_response);71 ········this.provisioningResponse·=·getResourceString(resources,·R$string.config_mobile_hotspot_provision_response);
74 ········this.mOffloadPollInterval·=·getResourceInteger(resources,·R$integer.config_tether_offload_poll_interval,·5000);72 ········this.mOffloadPollInterval·=·getResourceInteger(resources,·R$integer.config_tether_offload_poll_interval,·5000);
75 ········this.mEnableWifiP2pDedicatedIp·=·getResourceBoolean(resources,·R$bool.config_tether_enable_legacy_wifi_p2p_dedicated_ip,·false); 
76 ········this.mEnableSelectAllPrefixRange·=·this.getDeviceConfigBoolean("tether_enable_select_all_prefix_ranges",·true); 
77 ········forSubComponent.log(this.toString());73 ········forSubComponent.log(this.toString());
78 ····}74 ····}
79 ····75 ····
80 ····private·static·void·appendIfNotPresent(final·ArrayList·list,·final·int·n)·{76 ····private·static·void·appendIfNotPresent(final·ArrayList·list,·final·int·n)·{
81 ········if·(list.contains(n))·{77 ········if·(list.contains(n))·{
82 ············return;78 ············return;
83 ········}79 ········}
Offset 308, 18 lines modifiedOffset 304, 14 lines modified
308 ········dumpStringArray(printWriter,·"provisioningApp",·this.provisioningApp);304 ········dumpStringArray(printWriter,·"provisioningApp",·this.provisioningApp);
309 ········printWriter.print("provisioningAppNoUi:·");305 ········printWriter.print("provisioningAppNoUi:·");
310 ········printWriter.println(this.provisioningAppNoUi);306 ········printWriter.println(this.provisioningAppNoUi);
311 ········printWriter.print("enableBpfOffload:·");307 ········printWriter.print("enableBpfOffload:·");
312 ········printWriter.println(this.mEnableBpfOffload);308 ········printWriter.println(this.mEnableBpfOffload);
313 ········printWriter.print("enableLegacyDhcpServer:·");309 ········printWriter.print("enableLegacyDhcpServer:·");
314 ········printWriter.println(this.enableLegacyDhcpServer);310 ········printWriter.println(this.enableLegacyDhcpServer);
315 ········printWriter.print("enableWifiP2pDedicatedIp:·"); 
316 ········printWriter.println(this.mEnableWifiP2pDedicatedIp); 
317 ········printWriter.print("mEnableSelectAllPrefixRange:·"); 
318 ········printWriter.println(this.mEnableSelectAllPrefixRange); 
319 ····}311 ····}
320 ····312 ····
321 ····protected·String·getDeviceConfigProperty(final·String·s)·{313 ····protected·String·getDeviceConfigProperty(final·String·s)·{
322 ········return·DeviceConfig.getProperty("connectivity",·s);314 ········return·DeviceConfig.getProperty("connectivity",·s);
323 ····}315 ····}
324 ····316 ····
325 ····public·int·getOffloadPollInterval()·{317 ····public·int·getOffloadPollInterval()·{
Offset 342, 18 lines modifiedOffset 334, 14 lines modified
342 ········return·this.mEnableBpfOffload;334 ········return·this.mEnableBpfOffload;
343 ····}335 ····}
344 ····336 ····
345 ····public·boolean·isNcm(final·String·s)·{337 ····public·boolean·isNcm(final·String·s)·{
346 ········return·matchesDownstreamRegexs(s,·this.tetherableNcmRegexs);338 ········return·matchesDownstreamRegexs(s,·this.tetherableNcmRegexs);
347 ····}339 ····}
348 ····340 ····
349 ····public·boolean·isSelectAllPrefixRangeEnabled()·{ 
350 ········return·this.mEnableSelectAllPrefixRange; 
351 ····} 
352 ···· 
353 ····public·boolean·isUsb(final·String·s)·{341 ····public·boolean·isUsb(final·String·s)·{
354 ········return·matchesDownstreamRegexs(s,·this.tetherableUsbRegexs);342 ········return·matchesDownstreamRegexs(s,·this.tetherableUsbRegexs);
355 ····}343 ····}
356 ····344 ····
357 ····public·boolean·isWifi(final·String·s)·{345 ····public·boolean·isWifi(final·String·s)·{
358 ········return·matchesDownstreamRegexs(s,·this.tetherableWifiRegexs);346 ········return·matchesDownstreamRegexs(s,·this.tetherableWifiRegexs);
359 ····}347 ····}
Offset 367, 18 lines modifiedOffset 355, 14 lines modified
367 ········return·tetherableWifiP2pRegexs·==·null·||·tetherableWifiP2pRegexs.length·==·0;355 ········return·tetherableWifiP2pRegexs·==·null·||·tetherableWifiP2pRegexs.length·==·0;
368 ····}356 ····}
369 ····357 ····
370 ····public·boolean·isWigig(final·String·s)·{358 ····public·boolean·isWigig(final·String·s)·{
371 ········return·matchesDownstreamRegexs(s,·this.tetherableWigigRegexs);359 ········return·matchesDownstreamRegexs(s,·this.tetherableWigigRegexs);
372 ····}360 ····}
373 ····361 ····
374 ····public·boolean·shouldEnableWifiP2pDedicatedIp()·{ 
375 ········return·this.mEnableWifiP2pDedicatedIp; 
376 ····} 
377 ···· 
378 ····public·TetheringConfigurationParcel·toStableParcelable()·{362 ····public·TetheringConfigurationParcel·toStableParcelable()·{
379 ········final·TetheringConfigurationParcel·tetheringConfigurationParcel·=·new·TetheringConfigurationParcel();363 ········final·TetheringConfigurationParcel·tetheringConfigurationParcel·=·new·TetheringConfigurationParcel();
380 ········tetheringConfigurationParcel.subId·=·this.activeDataSubId;364 ········tetheringConfigurationParcel.subId·=·this.activeDataSubId;
381 ········tetheringConfigurationParcel.tetherableUsbRegexs·=·this.tetherableUsbRegexs;365 ········tetheringConfigurationParcel.tetherableUsbRegexs·=·this.tetherableUsbRegexs;
382 ········tetheringConfigurationParcel.tetherableWifiRegexs·=·this.tetherableWifiRegexs;366 ········tetheringConfigurationParcel.tetherableWifiRegexs·=·this.tetherableWifiRegexs;
383 ········tetheringConfigurationParcel.tetherableBluetoothRegexs·=·this.tetherableBluetoothRegexs;367 ········tetheringConfigurationParcel.tetherableBluetoothRegexs·=·this.tetherableBluetoothRegexs;
384 ········tetheringConfigurationParcel.isDunRequired·=·this.isDunRequired;368 ········tetheringConfigurationParcel.isDunRequired·=·this.isDunRequired;
1.2 KB
com/android/networkstack/tethering/TetheringDependencies.class
1.07 KB
procyon -ec {}
    
Offset 55, 18 lines modifiedOffset 55, 14 lines modified
55 ········return·new·OffloadController(handler,·this.getOffloadHardwareInterface(handler,·sharedLog),·this.getContext().getContentResolver(),·(NetworkStatsManager)this.getContext().getSystemService("netstats"),·sharedLog,·offloadController$Dependencies);55 ········return·new·OffloadController(handler,·this.getOffloadHardwareInterface(handler,·sharedLog),·this.getContext().getContentResolver(),·(NetworkStatsManager)this.getContext().getSystemService("netstats"),·sharedLog,·offloadController$Dependencies);
56 ····}56 ····}
57 ····57 ····
58 ····public·OffloadHardwareInterface·getOffloadHardwareInterface(final·Handler·handler,·final·SharedLog·sharedLog)·{58 ····public·OffloadHardwareInterface·getOffloadHardwareInterface(final·Handler·handler,·final·SharedLog·sharedLog)·{
59 ········return·new·OffloadHardwareInterface(handler,·sharedLog);59 ········return·new·OffloadHardwareInterface(handler,·sharedLog);
60 ····}60 ····}
61 ····61 ····
62 ····public·PrivateAddressCoordinator·getPrivateAddressCoordinator(final·Context·context,·final·TetheringConfiguration·tetheringConfiguration)·{ 
63 ········return·new·PrivateAddressCoordinator(context,·tetheringConfiguration); 
64 ····} 
65 ···· 
66 ····public·abstract·Looper·getTetheringLooper();62 ····public·abstract·Looper·getTetheringLooper();
67 ····63 ····
68 ····public·UpstreamNetworkMonitor·getUpstreamNetworkMonitor(final·Context·context,·final·StateMachine·stateMachine,·final·SharedLog·sharedLog,·final·int·n)·{64 ····public·UpstreamNetworkMonitor·getUpstreamNetworkMonitor(final·Context·context,·final·StateMachine·stateMachine,·final·SharedLog·sharedLog,·final·int·n)·{
69 ········return·new·UpstreamNetworkMonitor(context,·stateMachine,·sharedLog,·n);65 ········return·new·UpstreamNetworkMonitor(context,·stateMachine,·sharedLog,·n);
70 ····}66 ····}
71 ····67 ····
72 ····public·boolean·isTetheringDenied()·{68 ····public·boolean·isTetheringDenied()·{
822 B
com/android/networkstack/tethering/util/Inet4AddressUtils.class
696 B
procyon -ec {}
    
Offset 23, 24 lines modifiedOffset 23, 8 lines modified
23 ············}23 ············}
24 ············catch·(UnknownHostException·ex)·{24 ············catch·(UnknownHostException·ex)·{
25 ················throw·new·AssertionError();25 ················throw·new·AssertionError();
26 ············}26 ············}
27 ········}27 ········}
28 ········catch·(UnknownHostException·ex2)·{}28 ········catch·(UnknownHostException·ex2)·{}
29 ····}29 ····}
30 ···· 
31 ····public·static·int·prefixLengthToV4NetmaskIntHTH(int·n)·{ 
32 ········if·(n·>=·0)·{ 
33 ············final·int·n2·=·32; 
34 ············if·(n·<=·n2)·{ 
35 ················if·(n·==·0)·{ 
36 ····················n·=·0; 
37 ················} 
38 ················else·{ 
39 ····················n·=·-1·<<·n2·-·n; 
40 ················} 
41 ················return·n; 
42 ············} 
43 ········} 
44 ········throw·new·IllegalArgumentException("Invalid·prefix·length·(0·<=·prefix·<=·32)"); 
45 ····} 
46 }30 }
2.47 KB
android/net/ip/IpServer.class
2.42 KB
procyon -ec {}
    
Offset 331, 15 lines modifiedOffset 331, 15 lines modified
331 ········}331 ········}
332 ········this.stopDhcp();332 ········this.stopDhcp();
333 ········return·true;333 ········return·true;
334 ····}334 ····}
335 ····335 ····
336 ····private·boolean·configureIPv4(final·boolean·b)·{336 ····private·boolean·configureIPv4(final·boolean·b)·{
337 ········if·(b)·{337 ········if·(b)·{
338 ············this.mIpv4Address·=·this.requestIpv4Address(true);338 ············this.mIpv4Address·=·this.requestIpv4Address();
339 ········}339 ········}
340 ········final·LinkAddress·mIpv4Address·=·this.mIpv4Address;340 ········final·LinkAddress·mIpv4Address·=·this.mIpv4Address;
341 ········if·(mIpv4Address·==·null)·{341 ········if·(mIpv4Address·==·null)·{
342 ············this.mLog.e("No·available·ipv4·address");342 ············this.mLog.e("No·available·ipv4·address");
343 ············return·false;343 ············return·false;
344 ········}344 ········}
345 ········final·int·mInterfaceType·=·this.mInterfaceType;345 ········final·int·mInterfaceType·=·this.mInterfaceType;
Offset 536, 15 lines modifiedOffset 536, 15 lines modified
536 ········}536 ········}
537 ····}537 ····}
538 ····538 ····
539 ····private·void·handleNewPrefixRequest(final·IpPrefix·obj)·{539 ····private·void·handleNewPrefixRequest(final·IpPrefix·obj)·{
540 ········if·(obj.contains(this.mIpv4Address.getAddress()))·{540 ········if·(obj.contains(this.mIpv4Address.getAddress()))·{
541 ············if·(obj.getPrefixLength()·==·this.mIpv4Address.getPrefixLength())·{541 ············if·(obj.getPrefixLength()·==·this.mIpv4Address.getPrefixLength())·{
542 ················final·LinkAddress·mIpv4Address·=·this.mIpv4Address;542 ················final·LinkAddress·mIpv4Address·=·this.mIpv4Address;
543 ················final·LinkAddress·requestIpv4Address·=·this.requestIpv4Address(false);543 ················final·LinkAddress·requestIpv4Address·=·this.requestIpv4Address();
544 ················if·((this.mIpv4Address·=·requestIpv4Address)·==·null)·{544 ················if·((this.mIpv4Address·=·requestIpv4Address)·==·null)·{
545 ····················this.mLog.e("Fail·to·request·a·new·downstream·prefix");545 ····················this.mLog.e("Fail·to·request·a·new·downstream·prefix");
546 ····················return;546 ····················return;
547 ················}547 ················}
548 ················final·Inet4Address·obj2·=·(Inet4Address)requestIpv4Address.getAddress();548 ················final·Inet4Address·obj2·=·(Inet4Address)requestIpv4Address.getAddress();
549 ················if·(!this.mInterfaceCtrl.addAddress((InetAddress)obj2,·obj.getPrefixLength()))·{549 ················if·(!this.mInterfaceCtrl.addAddress((InetAddress)obj2,·obj.getPrefixLength()))·{
550 ····················final·SharedLog·mLog·=·this.mLog;550 ····················final·SharedLog·mLog·=·this.mLog;
Offset 658, 23 lines modifiedOffset 658, 23 lines modified
658 ········}658 ········}
659 ········final·Iterator<RouteInfo>·iterator·=·list.iterator();659 ········final·Iterator<RouteInfo>·iterator·=·list.iterator();
660 ········while·(iterator.hasNext())·{660 ········while·(iterator.hasNext())·{
661 ············this.mLinkProperties.removeRoute((RouteInfo)iterator.next());661 ············this.mLinkProperties.removeRoute((RouteInfo)iterator.next());
662 ········}662 ········}
663 ····}663 ····}
664 ····664 ····
665 ····private·LinkAddress·requestIpv4Address(final·boolean·b)·{665 ····private·LinkAddress·requestIpv4Address()·{
666 ········final·LinkAddress·mStaticIpv4ServerAddr·=·this.mStaticIpv4ServerAddr;666 ········final·LinkAddress·mStaticIpv4ServerAddr·=·this.mStaticIpv4ServerAddr;
667 ········if·(mStaticIpv4ServerAddr·!=·null)·{667 ········if·(mStaticIpv4ServerAddr·!=·null)·{
668 ············return·mStaticIpv4ServerAddr;668 ············return·mStaticIpv4ServerAddr;
669 ········}669 ········}
670 ········if·(this.mInterfaceType·==·2)·{670 ········if·(this.mInterfaceType·==·2)·{
671 ············return·new·LinkAddress("192.168.44.1/24");671 ············return·new·LinkAddress("192.168.44.1/24");
672 ········}672 ········}
673 ········return·this.mPrivateAddressCoordinator.requestDownstreamAddress(this,·b);673 ········return·this.mPrivateAddressCoordinator.requestDownstreamAddress(this);
674 ····}674 ····}
675 ····675 ····
676 ····private·void·resetLinkProperties()·{676 ····private·void·resetLinkProperties()·{
677 ········this.mLinkProperties.clear();677 ········this.mLinkProperties.clear();
678 ········this.mLinkProperties.setInterfaceName(this.mIfaceName);678 ········this.mLinkProperties.setInterfaceName(this.mIfaceName);
679 ····}679 ····}
680 ····680 ····
502 B
android/net/dhcp/DhcpServerCallbacks.class
418 B
procyon -ec {}
    
Offset 1, 13 lines modifiedOffset 1, 13 lines modified
  
1 package·android.net.dhcp;1 package·android.net.dhcp;
  
2 public·abstract·class·DhcpServerCallbacks·extends·IDhcpServerCallbacks$Stub2 public·abstract·class·DhcpServerCallbacks·extends·IDhcpServerCallbacks$Stub
3 {3 {
4 ····public·String·getInterfaceHash()·{4 ····public·String·getInterfaceHash()·{
5 ········return·"f6e2137b5033902774f78726d429399db3b18cab";5 ········return·"02cd6fd07d5c04eca0c35a350f7b0be576242883";
6 ····}6 ····}
7 ····7 ····
8 ····public·int·getInterfaceVersion()·{8 ····public·int·getInterfaceVersion()·{
9 ········return·8;9 ········return·7;
10 ····}10 ····}
11 }11 }
943 B
android/net/ip/IpServer$DhcpEventCallback.class
849 B
procyon -ec {}
    
Offset 27, 19 lines modifiedOffset 27, 19 lines modified
27 ····final·/*·synthetic·*/·IpServer·this$0;27 ····final·/*·synthetic·*/·IpServer·this$0;
28 ····28 ····
29 ····private·IpServer$DhcpEventCallback(final·IpServer·this$0)·{29 ····private·IpServer$DhcpEventCallback(final·IpServer·this$0)·{
30 ········this.this$0·=·this$0;30 ········this.this$0·=·this$0;
31 ····}31 ····}
32 ····32 ····
33 ····public·String·getInterfaceHash()·{33 ····public·String·getInterfaceHash()·{
34 ········return·"f6e2137b5033902774f78726d429399db3b18cab";34 ········return·"02cd6fd07d5c04eca0c35a350f7b0be576242883";
35 ····}35 ····}
36 ····36 ····
37 ····public·int·getInterfaceVersion()·{37 ····public·int·getInterfaceVersion()·{
38 ········return·8;38 ········return·7;
39 ····}39 ····}
40 ····40 ····
41 ····public·void·onLeasesChanged(final·List·list)·{41 ····public·void·onLeasesChanged(final·List·list)·{
42 ········final·ArrayList<String>·list2·=·new·ArrayList<String>();42 ········final·ArrayList<String>·list2·=·new·ArrayList<String>();
43 ········for·(Object·hostname·:·list)·{43 ········for·(Object·hostname·:·list)·{
44 ············final·Inet4Address·intToInet4AddressHTH·=·Inet4AddressUtils.intToInet4AddressHTH(((DhcpLeaseParcelable)hostname).netAddr);44 ············final·Inet4Address·intToInet4AddressHTH·=·Inet4AddressUtils.intToInet4AddressHTH(((DhcpLeaseParcelable)hostname).netAddr);
45 ············final·int·prefixLength·=·((DhcpLeaseParcelable)hostname).prefixLength;45 ············final·int·prefixLength·=·((DhcpLeaseParcelable)hostname).prefixLength;
800 B
android/net/ip/IpServer$OnHandlerStatusCallback.class
694 B
procyon -ec {}
    
Offset 11, 18 lines modifiedOffset 11, 18 lines modified
11 ····private·IpServer$OnHandlerStatusCallback(final·IpServer·this$0)·{11 ····private·IpServer$OnHandlerStatusCallback(final·IpServer·this$0)·{
12 ········this.this$0·=·this$0;12 ········this.this$0·=·this$0;
13 ····}13 ····}
14 ····14 ····
15 ····public·abstract·void·callback(final·int·p0);15 ····public·abstract·void·callback(final·int·p0);
16 ····16 ····
17 ····public·String·getInterfaceHash()·{17 ····public·String·getInterfaceHash()·{
18 ········return·"f6e2137b5033902774f78726d429399db3b18cab";18 ········return·"02cd6fd07d5c04eca0c35a350f7b0be576242883";
19 ····}19 ····}
20 ····20 ····
21 ····public·int·getInterfaceVersion()·{21 ····public·int·getInterfaceVersion()·{
22 ········return·8;22 ········return·7;
23 ····}23 ····}
24 ····24 ····
25 ····public·void·onStatusAvailable(final·int·n)·{25 ····public·void·onStatusAvailable(final·int·n)·{
26 ········((StateMachine)this.this$0).getHandler().post((Runnable)new·-$$Lambda$IpServer$OnHandlerStatusCallback$czoKoFz-ZQJY8J5O14qT9czTIoo(this,·n));26 ········((StateMachine)this.this$0).getHandler().post((Runnable)new·-$$Lambda$IpServer$OnHandlerStatusCallback$czoKoFz-ZQJY8J5O14qT9czTIoo(this,·n));
27 ····}27 ····}
28 }28 }
795 B
android/net/ip/IpServer$DhcpServerCallbacksImpl.class
689 B
procyon -ec {}
    
Offset 23, 10 lines modifiedOffset 23, 10 lines modified
23 ····private·void·handleError()·{23 ····private·void·handleError()·{
24 ········IpServer.access$102(this.this$0,·12);24 ········IpServer.access$102(this.this$0,·12);
25 ········final·IpServer·this$0·=·this.this$0;25 ········final·IpServer·this$0·=·this.this$0;
26 ········((StateMachine)this$0).transitionTo((IState)IpServer.access$200(this$0));26 ········((StateMachine)this$0).transitionTo((IState)IpServer.access$200(this$0));
27 ····}27 ····}
28 ····28 ····
29 ····public·void·onDhcpServerCreated(final·int·n,·final·IDhcpServer·dhcpServer)·{29 ····public·void·onDhcpServerCreated(final·int·n,·final·IDhcpServer·dhcpServer)·{
30 ········((StateMachine)this.this$0).getHandler().post((Runnable)new·-$$Lambda$IpServer$DhcpServerCallbacksImpl$jOx3aMVF_QeZp19IuEPKpIgN6u4(this,·dhcpServer,·n));30 ········((StateMachine)this.this$0).getHandler().post((Runnable)new·-$$Lambda$IpServer$DhcpServerCallbacksImpl$nBlfeyPZEu2j0KBs4BJklDJTve4(this,·n,·dhcpServer));
31 ····}31 ····}
32 }32 }
1.89 KB
com/android/networkstack/tethering/Tethering$TetherMainSM$OffloadWrapper.class vs.
com/android/networkstack/tethering/Tethering$TetherMasterSM$OffloadWrapper.class
Files 5% similar despite different names
1.69 KB
procyon -ec {}
    
Offset 7, 19 lines modifiedOffset 7, 19 lines modified
7 import·android.net.LinkAddress;7 import·android.net.LinkAddress;
8 import·android.net.IpPrefix;8 import·android.net.IpPrefix;
9 import·java.util.Collection;9 import·java.util.Collection;
10 import·android.net.ip.IpServer;10 import·android.net.ip.IpServer;
11 import·android.net.util.PrefixUtils;11 import·android.net.util.PrefixUtils;
12 import·java.util.Set;12 import·java.util.Set;
  
13 class·Tethering$TetherMainSM$OffloadWrapper13 class·Tethering$TetherMasterSM$OffloadWrapper
14 {14 {
15 ····final·/*·synthetic·*/·Tethering$TetherMainSM·this$1;15 ····final·/*·synthetic·*/·Tethering$TetherMasterSM·this$1;
16 ····16 ····
17 ····Tethering$TetherMainSM$OffloadWrapper(final·Tethering$TetherMainSM·this$1)·{17 ····Tethering$TetherMasterSM$OffloadWrapper(final·Tethering$TetherMasterSM·this$1)·{
18 ········this.this$1·=·this$1;18 ········this.this$1·=·this$1;
19 ····}19 ····}
20 ····20 ····
21 ····private·void·updateOffloadStatus(int·access$5000)·{21 ····private·void·updateOffloadStatus(int·access$5000)·{
22 ········if·(access$5000·==·Tethering.access$5000(this.this$1.this$0))·{22 ········if·(access$5000·==·Tethering.access$5000(this.this$1.this$0))·{
23 ············return;23 ············return;
24 ········}24 ········}
Offset 37, 15 lines modifiedOffset 37, 15 lines modified
37 ····public·void·sendOffloadExemptPrefixes()·{37 ····public·void·sendOffloadExemptPrefixes()·{
38 ········this.sendOffloadExemptPrefixes(Tethering.access$3600(this.this$1.this$0).getLocalPrefixes());38 ········this.sendOffloadExemptPrefixes(Tethering.access$3600(this.this$1.this$0).getLocalPrefixes());
39 ····}39 ····}
40 ····40 ····
41 ····public·void·sendOffloadExemptPrefixes(final·Set·localPrefixes)·{41 ····public·void·sendOffloadExemptPrefixes(final·Set·localPrefixes)·{
42 ········PrefixUtils.addNonForwardablePrefixes(localPrefixes);42 ········PrefixUtils.addNonForwardablePrefixes(localPrefixes);
43 ········localPrefixes.add(PrefixUtils.DEFAULT_WIFI_P2P_PREFIX);43 ········localPrefixes.add(PrefixUtils.DEFAULT_WIFI_P2P_PREFIX);
44 ········for·(final·IpServer·ipServer·:·Tethering$TetherMainSM.access$4700(this.this$1))·{44 ········for·(final·IpServer·ipServer·:·Tethering$TetherMasterSM.access$4700(this.this$1))·{
45 ············final·LinkProperties·linkProperties·=·ipServer.linkProperties();45 ············final·LinkProperties·linkProperties·=·ipServer.linkProperties();
46 ············final·int·servingMode·=·ipServer.servingMode();46 ············final·int·servingMode·=·ipServer.servingMode();
47 ············if·(servingMode·!=·0·&&·servingMode·!=·1)·{47 ············if·(servingMode·!=·0·&&·servingMode·!=·1)·{
48 ················if·(servingMode·!=·2)·{48 ················if·(servingMode·!=·2)·{
49 ····················if·(servingMode·!=·3)·{49 ····················if·(servingMode·!=·3)·{
50 ························continue;50 ························continue;
51 ····················}51 ····················}
13.3 KB
com/android/networkstack/tethering/Tethering$TetherMainSM.class vs.
com/android/networkstack/tethering/Tethering$TetherMasterSM.class
Files 8% similar despite different names
13.1 KB
procyon -ec {}
    
Offset 19, 60 lines modifiedOffset 19, 64 lines modified
19 import·android.util.Log;19 import·android.util.Log;
20 import·android.net.ip.IpServer;20 import·android.net.ip.IpServer;
21 import·android.os.Looper;21 import·android.os.Looper;
22 import·java.util.ArrayList;22 import·java.util.ArrayList;
23 import·com.android.networkstack.tethering.util.State;23 import·com.android.networkstack.tethering.util.State;
24 import·com.android.networkstack.tethering.util.StateMachine;24 import·com.android.networkstack.tethering.util.StateMachine;
  
25 class·Tethering$TetherMainSM·extends·StateMachine25 class·Tethering$TetherMasterSM·extends·StateMachine
26 {26 {
27 ····static·final·int·CMD_CLEAR_ERROR·=·6;27 ····static·final·int·CMD_CLEAR_ERROR·=·6;
28 ····static·final·int·CMD_RETRY_UPSTREAM·=·4;28 ····static·final·int·CMD_RETRY_UPSTREAM·=·4;
29 ····static·final·int·CMD_UPSTREAM_CHANGED·=·3;29 ····static·final·int·CMD_UPSTREAM_CHANGED·=·3;
30 ····static·final·int·EVENT_IFACE_SERVING_STATE_ACTIVE·=·1;30 ····static·final·int·EVENT_IFACE_SERVING_STATE_ACTIVE·=·1;
31 ····static·final·int·EVENT_IFACE_SERVING_STATE_INACTIVE·=·2;31 ····static·final·int·EVENT_IFACE_SERVING_STATE_INACTIVE·=·2;
32 ····static·final·int·EVENT_IFACE_UPDATE_LINKPROPERTIES·=·7;32 ····static·final·int·EVENT_IFACE_UPDATE_LINKPROPERTIES·=·7;
33 ····static·final·int·EVENT_UPSTREAM_CALLBACK·=·5;33 ····static·final·int·EVENT_UPSTREAM_CALLBACK·=·5;
34 ····static·final·int·EVENT_UPSTREAM_PERMISSION_CHANGED·=·8;34 ····static·final·int·EVENT_UPSTREAM_PERMISSION_CHANGED·=·8;
35 ····private·final·IPv6TetheringCoordinator·mIPv6TetheringCoordinator;35 ····private·final·IPv6TetheringCoordinator·mIPv6TetheringCoordinator;
36 ····private·final·State·mInitialState;36 ····private·final·State·mInitialState;
37 ····private·final·ArrayList·mNotifyList;37 ····private·final·ArrayList·mNotifyList;
38 ····private·final·Tethering$TetherMainSM$OffloadWrapper·mOffload;38 ····private·final·Tethering$TetherMasterSM$OffloadWrapper·mOffload;
39 ····private·final·State·mSetDnsForwardersErrorState;39 ····private·final·State·mSetDnsForwardersErrorState;
40 ····private·final·State·mSetIpForwardingDisabledErrorState;40 ····private·final·State·mSetIpForwardingDisabledErrorState;
41 ····private·final·State·mSetIpForwardingEnabledErrorState;41 ····private·final·State·mSetIpForwardingEnabledErrorState;
42 ····private·final·State·mStartTetheringErrorState;42 ····private·final·State·mStartTetheringErrorState;
43 ····private·final·State·mStopTetheringErrorState;43 ····private·final·State·mStopTetheringErrorState;
44 ····private·final·State·mTetherModeAliveState;44 ····private·final·State·mTetherModeAliveState;
45 ····final·/*·synthetic·*/·Tethering·this$0;45 ····final·/*·synthetic·*/·Tethering·this$0;
46 ····46 ····
47 ····Tethering$TetherMainSM(final·Tethering·this$0,·final·String·s,·final·Looper·looper,·final·TetheringDependencies·tetheringDependencies)·{47 ····Tethering$TetherMasterSM(final·Tethering·this$0,·final·String·s,·final·Looper·looper,·final·TetheringDependencies·tetheringDependencies)·{
48 ········this.this$0·=·this$0;48 ········this.this$0·=·this$0;
49 ········super(s,·looper);49 ········super(s,·looper);
50 ········this.mInitialState·=·(State)new·Tethering$TetherMainSM$InitialState(this);50 ········this.mInitialState·=·(State)new·Tethering$TetherMasterSM$InitialState(this);
51 ········this.mTetherModeAliveState·=·(State)new·Tethering$TetherMainSM$TetherModeAliveState(this);51 ········this.mTetherModeAliveState·=·(State)new·Tethering$TetherMasterSM$TetherModeAliveState(this);
52 ········this.mSetIpForwardingEnabledErrorState·=·(State)new·Tethering$TetherMainSM$SetIpForwardingEnabledErrorState(this);52 ········this.mSetIpForwardingEnabledErrorState·=·(State)new·Tethering$TetherMasterSM$SetIpForwardingEnabledErrorState(this);
53 ········this.mSetIpForwardingDisabledErrorState·=·(State)new·Tethering$TetherMainSM$SetIpForwardingDisabledErrorState(this);53 ········this.mSetIpForwardingDisabledErrorState·=·(State)new·Tethering$TetherMasterSM$SetIpForwardingDisabledErrorState(this);
54 ········this.mStartTetheringErrorState·=·(State)new·Tethering$TetherMainSM$StartTetheringErrorState(this);54 ········this.mStartTetheringErrorState·=·(State)new·Tethering$TetherMasterSM$StartTetheringErrorState(this);
55 ········this.mStopTetheringErrorState·=·(State)new·Tethering$TetherMainSM$StopTetheringErrorState(this);55 ········this.mStopTetheringErrorState·=·(State)new·Tethering$TetherMasterSM$StopTetheringErrorState(this);
56 ········this.mSetDnsForwardersErrorState·=·(State)new·Tethering$TetherMainSM$SetDnsForwardersErrorState(this);56 ········this.mSetDnsForwardersErrorState·=·(State)new·Tethering$TetherMasterSM$SetDnsForwardersErrorState(this);
57 ········this.addState(this.mInitialState);57 ········this.addState(this.mInitialState);
58 ········this.addState(this.mTetherModeAliveState);58 ········this.addState(this.mTetherModeAliveState);
59 ········this.addState(this.mSetIpForwardingEnabledErrorState);59 ········this.addState(this.mSetIpForwardingEnabledErrorState);
60 ········this.addState(this.mSetIpForwardingDisabledErrorState);60 ········this.addState(this.mSetIpForwardingDisabledErrorState);
61 ········this.addState(this.mStartTetheringErrorState);61 ········this.addState(this.mStartTetheringErrorState);
62 ········this.addState(this.mStopTetheringErrorState);62 ········this.addState(this.mStopTetheringErrorState);
63 ········this.addState(this.mSetDnsForwardersErrorState);63 ········this.addState(this.mSetDnsForwardersErrorState);
64 ········final·ArrayList·mNotifyList·=·new·ArrayList();64 ········final·ArrayList·mNotifyList·=·new·ArrayList();
65 ········this.mNotifyList·=·mNotifyList;65 ········this.mNotifyList·=·mNotifyList;
66 ········this.mIPv6TetheringCoordinator·=·tetheringDependencies.getIPv6TetheringCoordinator(mNotifyList,·Tethering.access$600(this$0));66 ········this.mIPv6TetheringCoordinator·=·tetheringDependencies.getIPv6TetheringCoordinator(mNotifyList,·Tethering.access$600(this$0));
67 ········this.mOffload·=·new·Tethering$TetherMainSM$OffloadWrapper(this);67 ········this.mOffload·=·new·Tethering$TetherMasterSM$OffloadWrapper(this);
68 ········this.setInitialState(this.mInitialState);68 ········this.setInitialState(this.mInitialState);
69 ····}69 ····}
70 ····70 ····
 71 ····private·void·addUpstreamPrefixes(final·UpstreamNetworkState·upstreamNetworkState)·{
 72 ········Tethering.access$4300(this.this$0).updateUpstreamPrefix(upstreamNetworkState.network,·upstreamNetworkState.linkProperties);
 73 ····}
 74 ····
71 ····private·void·handleInterfaceServingStateActive(int·i,·final·IpServer·ipServer)·{75 ····private·void·handleInterfaceServingStateActive(int·i,·final·IpServer·ipServer)·{
72 ········if·(this.mNotifyList.indexOf(ipServer)·<·0)·{76 ········if·(this.mNotifyList.indexOf(ipServer)·<·0)·{
73 ············this.mNotifyList.add(ipServer);77 ············this.mNotifyList.add(ipServer);
74 ············this.mIPv6TetheringCoordinator.addActiveDownstream(ipServer,·i);78 ············this.mIPv6TetheringCoordinator.addActiveDownstream(ipServer,·i);
75 ········}79 ········}
76 ········final·int·n·=·2;80 ········final·int·n·=·2;
77 ········if·(i·==·n)·{81 ········if·(i·==·n)·{
Offset 116, 14 lines modifiedOffset 120, 18 lines modified
116 ············}120 ············}
117 ············else·{121 ············else·{
118 ················Tethering.access$4200(this.this$0).updateInterfaceIpState(ipServer.interfaceName(),·-1);122 ················Tethering.access$4200(this.this$0).updateInterfaceIpState(ipServer.interfaceName(),·-1);
119 ············}123 ············}
120 ········}124 ········}
121 ····}125 ····}
122 ····126 ····
 127 ····private·void·removeUpstreamPrefixes(final·UpstreamNetworkState·upstreamNetworkState)·{
 128 ········Tethering.access$4300(this.this$0).removeUpstreamPrefix(upstreamNetworkState.network);
 129 ····}
 130 ····
123 ····protected·void·chooseUpstreamType(final·boolean·b)·{131 ····protected·void·chooseUpstreamType(final·boolean·b)·{
124 ········Tethering.access$3500(this.this$0);132 ········Tethering.access$3500(this.this$0);
125 ········final·TetheringConfiguration·access$000·=·Tethering.access$000(this.this$0);133 ········final·TetheringConfiguration·access$000·=·Tethering.access$000(this.this$0);
126 ········UpstreamNetworkState·upstreamNetwork;134 ········UpstreamNetworkState·upstreamNetwork;
127 ········if·(access$000.chooseUpstreamAutomatically)·{135 ········if·(access$000.chooseUpstreamAutomatically)·{
128 ············upstreamNetwork·=·Tethering.access$3600(this.this$0).getCurrentPreferredUpstream();136 ············upstreamNetwork·=·Tethering.access$3600(this.this$0).getCurrentPreferredUpstream();
129 ········}137 ········}
Offset 164, 19 lines modifiedOffset 172, 19 lines modified
164 ············return;172 ············return;
165 ········}173 ········}
166 ········final·UpstreamNetworkState·upstreamNetworkState·=·(UpstreamNetworkState)o;174 ········final·UpstreamNetworkState·upstreamNetworkState·=·(UpstreamNetworkState)o;
167 ········final·int·n·=·3;175 ········final·int·n·=·3;
168 ········final·int·n2·=·2;176 ········final·int·n2·=·2;
169 ········if·(equals·!=·n2)·{177 ········if·(equals·!=·n2)·{
170 ············if·(equals·==·n)·{178 ············if·(equals·==·n)·{
171 ················Tethering.access$4300(this.this$0).removeUpstreamPrefix(upstreamNetworkState.network);179 ················this.removeUpstreamPrefixes(upstreamNetworkState);
172 ············}180 ············}
173 ········}181 ········}
174 ········else·{182 ········else·{
175 ············Tethering.access$4300(this.this$0).updateUpstreamPrefix(upstreamNetworkState);183 ············this.addUpstreamPrefixes(upstreamNetworkState);
176 ········}184 ········}
177 ········if·(upstreamNetworkState·!=·null·&&·Tethering.access$3900(this.this$0,·upstreamNetworkState))·{185 ········if·(upstreamNetworkState·!=·null·&&·Tethering.access$3900(this.this$0,·upstreamNetworkState))·{
178 ············if·(equals·!=·1)·{186 ············if·(equals·!=·1)·{
179 ················if·(equals·!=·n2)·{187 ················if·(equals·!=·n2)·{
180 ····················if·(equals·!=·n)·{188 ····················if·(equals·!=·n)·{
181 ························final·SharedLog·access$600·=·Tethering.access$600(this.this$0);189 ························final·SharedLog·access$600·=·Tethering.access$600(this.this$0);
182 ························o·=·new·StringBuilder();190 ························o·=·new·StringBuilder();
Offset 299, 29 lines modifiedOffset 307, 29 lines modified
299 ············this.handleNewUpstreamNetworkState(upstreamNetworkState);307 ············this.handleNewUpstreamNetworkState(upstreamNetworkState);
300 ········}308 ········}
301 ········else·if·(Tethering.access$4000(this.this$0)·==·null)·{309 ········else·if·(Tethering.access$4000(this.this$0)·==·null)·{
302 ············this.handleNewUpstreamNetworkState(null);310 ············this.handleNewUpstreamNetworkState(null);
303 ········}311 ········}
304 ····}312 ····}
305 ····313 ····
306 ····protected·boolean·turnOffMainTetherSettings()·{314 ····protected·boolean·turnOffMasterTetherSettings()·{
307 ········try·{315 ········try·{
308 ············final·Tethering·this$0·=·this.this$0;316 ············final·Tethering·this$0·=·this.this$0;
309 ············try·{317 ············try·{
310 ················final·INetd·access$400·=·Tethering.access$400(this$0);318 ················final·INetd·access$400·=·Tethering.access$400(this$0);
311 ················try·{319 ················try·{
312 ····················access$400.tetherStop();320 ····················access$400.tetherStop();
313 ····················try·{321 ····················try·{
314 ························final·Tethering·this$2·=·this.this$0;322 ························final·Tethering·this$2·=·this.this$0;
315 ························try·{323 ························try·{
316 ····························final·INetd·access$401·=·Tethering.access$400(this$2);324 ····························final·INetd·access$401·=·Tethering.access$400(this$2);
317 ····························try·{325 ····························try·{
318 ································access$401.ipfwdDisableForwarding(Tethering.access$3400());326 ································access$401.ipfwdDisableForwarding(Tethering.access$3400());
319 ································this.transitionTo((IState)this.mInitialState);327 ································this.transitionTo((IState)this.mInitialState);
320 ································Tethering.access$600(this.this$0).log("SET·main·tether·settings:·OFF");328 ································Tethering.access$600(this.this$0).log("SET·master·tether·settings:·OFF");
321 ································return·true;329 ································return·true;
... Open expanded diff ...
2.19 KB
com/android/networkstack/tethering/Tethering$TetherMainSM$ErrorState.class vs.
com/android/networkstack/tethering/Tethering$TetherMasterSM$ErrorState.class
Files 13% similar despite different names
2.01 KB
procyon -ec {}
    
Offset 4, 42 lines modifiedOffset 4, 42 lines modified
4 import·com.android.networkstack.tethering.util.StateMachine;4 import·com.android.networkstack.tethering.util.StateMachine;
5 import·com.android.networkstack.tethering.util.IState;5 import·com.android.networkstack.tethering.util.IState;
6 import·android.os.Message;6 import·android.os.Message;
7 import·java.util.Iterator;7 import·java.util.Iterator;
8 import·android.net.ip.IpServer;8 import·android.net.ip.IpServer;
9 import·com.android.networkstack.tethering.util.State;9 import·com.android.networkstack.tethering.util.State;
  
10 class·Tethering$TetherMainSM$ErrorState·extends·State10 class·Tethering$TetherMasterSM$ErrorState·extends·State
11 {11 {
12 ····private·int·mErrorNotification;12 ····private·int·mErrorNotification;
13 ····final·/*·synthetic·*/·Tethering$TetherMainSM·this$1;13 ····final·/*·synthetic·*/·Tethering$TetherMasterSM·this$1;
14 ····14 ····
15 ····Tethering$TetherMainSM$ErrorState(final·Tethering$TetherMainSM·this$1)·{15 ····Tethering$TetherMasterSM$ErrorState(final·Tethering$TetherMasterSM·this$1)·{
16 ········this.this$1·=·this$1;16 ········this.this$1·=·this$1;
17 ····}17 ····}
18 ····18 ····
19 ····void·notify(final·int·mErrorNotification)·{19 ····void·notify(final·int·mErrorNotification)·{
20 ········this.mErrorNotification·=·mErrorNotification;20 ········this.mErrorNotification·=·mErrorNotification;
21 ········final·Iterator<IpServer>·iterator·=·Tethering$TetherMainSM.access$4700(this.this$1).iterator();21 ········final·Iterator<IpServer>·iterator·=·Tethering$TetherMasterSM.access$4700(this.this$1).iterator();
22 ········while·(iterator.hasNext())·{22 ········while·(iterator.hasNext())·{
23 ············((StateMachine)iterator.next()).sendMessage(mErrorNotification);23 ············((StateMachine)iterator.next()).sendMessage(mErrorNotification);
24 ········}24 ········}
25 ····}25 ····}
26 ····26 ····
27 ····public·boolean·processMessage(final·Message·message)·{27 ····public·boolean·processMessage(final·Message·message)·{
28 ········final·int·what·=·message.what;28 ········final·int·what·=·message.what;
29 ········boolean·b·=·false;29 ········boolean·b·=·false;
30 ········final·boolean·b2·=·true;30 ········final·boolean·b2·=·true;
31 ········if·(what·!=·(b2·?·1·:·0))·{31 ········if·(what·!=·(b2·?·1·:·0))·{
32 ············if·(what·!=·6)·{32 ············if·(what·!=·6)·{
33 ················return·b;33 ················return·b;
34 ············}34 ············}
35 ············this.mErrorNotification·=·0;35 ············this.mErrorNotification·=·0;
36 ············final·Tethering$TetherMainSM·this$1·=·this.this$1;36 ············final·Tethering$TetherMasterSM·this$1·=·this.this$1;
37 ············((StateMachine)this$1).transitionTo((IState)Tethering$TetherMainSM.access$4800(this$1));37 ············((StateMachine)this$1).transitionTo((IState)Tethering$TetherMasterSM.access$4800(this$1));
38 ········}38 ········}
39 ········else·{39 ········else·{
40 ············((StateMachine)message.obj).sendMessage(this.mErrorNotification);40 ············((StateMachine)message.obj).sendMessage(this.mErrorNotification);
41 ········}41 ········}
42 ········b·=·b2;42 ········b·=·b2;
43 ········return·b;43 ········return·b;
44 ····}44 ····}
2.08 KB
com/android/networkstack/tethering/Tethering$TetherMainSM$InitialState.class vs.
com/android/networkstack/tethering/Tethering$TetherMasterSM$InitialState.class
Files 14% similar despite different names
1.89 KB
procyon -ec {}
    
Offset 3, 37 lines modifiedOffset 3, 37 lines modified
  
3 import·com.android.networkstack.tethering.util.StateMachine;3 import·com.android.networkstack.tethering.util.StateMachine;
4 import·com.android.networkstack.tethering.util.IState;4 import·com.android.networkstack.tethering.util.IState;
5 import·android.net.ip.IpServer;5 import·android.net.ip.IpServer;
6 import·android.os.Message;6 import·android.os.Message;
7 import·com.android.networkstack.tethering.util.State;7 import·com.android.networkstack.tethering.util.State;
  
8 class·Tethering$TetherMainSM$InitialState·extends·State8 class·Tethering$TetherMasterSM$InitialState·extends·State
9 {9 {
10 ····final·/*·synthetic·*/·Tethering$TetherMainSM·this$1;10 ····final·/*·synthetic·*/·Tethering$TetherMasterSM·this$1;
11 ····11 ····
12 ····Tethering$TetherMainSM$InitialState(final·Tethering$TetherMainSM·this$1)·{12 ····Tethering$TetherMasterSM$InitialState(final·Tethering$TetherMasterSM·this$1)·{
13 ········this.this$1·=·this$1;13 ········this.this$1·=·this$1;
14 ····}14 ····}
15 ····15 ····
16 ····public·boolean·processMessage(final·Message·message)·{16 ····public·boolean·processMessage(final·Message·message)·{
17 ········Tethering.access$3000(this.this$1.this$0,·(State)this,·message.what);17 ········Tethering.access$3000(this.this$1.this$0,·(State)this,·message.what);
18 ········final·int·what·=·message.what;18 ········final·int·what·=·message.what;
19 ········final·boolean·b·=·true;19 ········final·boolean·b·=·true;
20 ········if·(what·!=·(b·?·1·:·0))·{20 ········if·(what·!=·(b·?·1·:·0))·{
21 ············if·(what·!=·2)·{21 ············if·(what·!=·2)·{
22 ················if·(what·!=·7)·{22 ················if·(what·!=·7)·{
23 ····················return·false;23 ····················return·false;
24 ················}24 ················}
25 ············}25 ············}
26 ············else·{26 ············else·{
27 ················Tethering$TetherMainSM.access$3300(this.this$1,·(IpServer)message.obj);27 ················Tethering$TetherMasterSM.access$3300(this.this$1,·(IpServer)message.obj);
28 ············}28 ············}
29 ········}29 ········}
30 ········else·{30 ········else·{
31 ············Tethering$TetherMainSM.access$3100(this.this$1,·message.arg1,·(IpServer)message.obj);31 ············Tethering$TetherMasterSM.access$3100(this.this$1,·message.arg1,·(IpServer)message.obj);
32 ············final·Tethering$TetherMainSM·this$1·=·this.this$1;32 ············final·Tethering$TetherMasterSM·this$1·=·this.this$1;
33 ············((StateMachine)this$1).transitionTo((IState)Tethering$TetherMainSM.access$3200(this$1));33 ············((StateMachine)this$1).transitionTo((IState)Tethering$TetherMasterSM.access$3200(this$1));
34 ········}34 ········}
35 ········return·b;35 ········return·b;
36 ····}36 ····}
37 }37 }
5.78 KB
com/android/networkstack/tethering/Tethering$TetherMainSM$TetherModeAliveState.class vs.
com/android/networkstack/tethering/Tethering$TetherMasterSM$TetherModeAliveState.class
Files 17% similar despite different names
5.58 KB
procyon -ec {}
    
Offset 5, 59 lines modifiedOffset 5, 58 lines modified
5 import·android.net.ip.IpServer;5 import·android.net.ip.IpServer;
6 import·android.net.LinkProperties;6 import·android.net.LinkProperties;
7 import·android.os.Message;7 import·android.os.Message;
8 import·android.net.Network;8 import·android.net.Network;
9 import·android.net.util.InterfaceSet;9 import·android.net.util.InterfaceSet;
10 import·com.android.networkstack.tethering.util.State;10 import·com.android.networkstack.tethering.util.State;
  
11 class·Tethering$TetherMainSM$TetherModeAliveState·extends·State11 class·Tethering$TetherMasterSM$TetherModeAliveState·extends·State
12 {12 {
13 ····boolean·mTryCell;13 ····boolean·mTryCell;
14 ····boolean·mUpstreamWanted;14 ····boolean·mUpstreamWanted;
15 ····final·/*·synthetic·*/·Tethering$TetherMainSM·this$1;15 ····final·/*·synthetic·*/·Tethering$TetherMasterSM·this$1;
16 ····16 ····
17 ····Tethering$TetherMainSM$TetherModeAliveState(final·Tethering$TetherMainSM·this$1)·{17 ····Tethering$TetherMasterSM$TetherModeAliveState(final·Tethering$TetherMasterSM·this$1)·{
18 ········this.this$1·=·this$1;18 ········this.this$1·=·this$1;
19 ········this.mUpstreamWanted·=·false;19 ········this.mUpstreamWanted·=·false;
20 ········this.mTryCell·=·true;20 ········this.mTryCell·=·true;
21 ····}21 ····}
22 ····22 ····
23 ····private·boolean·updateUpstreamWanted()·{23 ····private·boolean·updateUpstreamWanted()·{
24 ········final·boolean·mUpstreamWanted·=·this.mUpstreamWanted;24 ········final·boolean·mUpstreamWanted·=·this.mUpstreamWanted;
25 ········final·boolean·access$4400·=·Tethering.access$4400(this.this$1.this$0);25 ········final·boolean·access$4400·=·Tethering.access$4400(this.this$1.this$0);
26 ········this.mUpstreamWanted·=·access$4400;26 ········this.mUpstreamWanted·=·access$4400;
27 ········if·(access$4400·!=·mUpstreamWanted)·{27 ········if·(access$4400·!=·mUpstreamWanted)·{
28 ············if·(access$4400)·{28 ············if·(access$4400)·{
29 ················Tethering$TetherMainSM.access$4500(this.this$1).start();29 ················Tethering$TetherMasterSM.access$4500(this.this$1).start();
30 ············}30 ············}
31 ············else·{31 ············else·{
32 ················Tethering$TetherMainSM.access$4500(this.this$1).stop();32 ················Tethering$TetherMasterSM.access$4500(this.this$1).stop();
33 ············}33 ············}
34 ········}34 ········}
35 ········return·mUpstreamWanted;35 ········return·mUpstreamWanted;
36 ····}36 ····}
37 ····37 ····
38 ····public·void·enter()·{38 ····public·void·enter()·{
39 ········if·(!this.this$1.turnOnMainTetherSettings())·{39 ········if·(!this.this$1.turnOnMasterTetherSettings())·{
40 ············return;40 ············return;
41 ········}41 ········}
42 ········Tethering.access$4300(this.this$1.this$0).maybeRemoveDeprecatedUpstreams(); 
43 ········Tethering.access$3600(this.this$1.this$0).startObserveAllNetworks();42 ········Tethering.access$3600(this.this$1.this$0).startObserveAllNetworks();
44 ········if·(Tethering.access$4400(this.this$1.this$0))·{43 ········if·(Tethering.access$4400(this.this$1.this$0))·{
45 ············final·boolean·mUpstreamWanted·=·true;44 ············final·boolean·mUpstreamWanted·=·true;
46 ············this.mUpstreamWanted·=·mUpstreamWanted;45 ············this.mUpstreamWanted·=·mUpstreamWanted;
47 ············Tethering$TetherMainSM.access$4500(this.this$1).start();46 ············Tethering$TetherMasterSM.access$4500(this.this$1).start();
48 ············this.this$1.chooseUpstreamType(mUpstreamWanted);47 ············this.this$1.chooseUpstreamType(mUpstreamWanted);
49 ············this.mTryCell·=·false;48 ············this.mTryCell·=·false;
50 ········}49 ········}
51 ········Tethering.access$4600(this.this$1.this$0).startPolling();50 ········Tethering.access$4600(this.this$1.this$0).startPolling();
52 ····}51 ····}
53 ····52 ····
54 ····public·void·exit()·{53 ····public·void·exit()·{
55 ········Tethering$TetherMainSM.access$4500(this.this$1).stop();54 ········Tethering$TetherMasterSM.access$4500(this.this$1).stop();
56 ········Tethering.access$3600(this.this$1.this$0).stop();55 ········Tethering.access$3600(this.this$1.this$0).stop();
57 ········this.this$1.notifyDownstreamsOfNewUpstreamIface((InterfaceSet)null);56 ········this.this$1.notifyDownstreamsOfNewUpstreamIface((InterfaceSet)null);
58 ········this.this$1.handleNewUpstreamNetworkState((UpstreamNetworkState)null);57 ········this.this$1.handleNewUpstreamNetworkState((UpstreamNetworkState)null);
59 ········if·(Tethering.access$3700(this.this$1.this$0)·!=·null)·{58 ········if·(Tethering.access$3700(this.this$1.this$0)·!=·null)·{
60 ············Tethering.access$3702(this.this$1.this$0,·(Network)null);59 ············Tethering.access$3702(this.this$1.this$0,·(Network)null);
61 ············Tethering.access$3800(this.this$1.this$0,·(UpstreamNetworkState)null);60 ············Tethering.access$3800(this.this$1.this$0,·(UpstreamNetworkState)null);
62 ········}61 ········}
Offset 72, 18 lines modifiedOffset 71, 18 lines modified
72 ········switch·(what)·{71 ········switch·(what)·{
73 ············default:·{72 ············default:·{
74 ················return·b;73 ················return·b;
75 ············}74 ············}
76 ············case·7:·{75 ············case·7:·{
77 ················final·LinkProperties·linkProperties·=·(LinkProperties)message.obj;76 ················final·LinkProperties·linkProperties·=·(LinkProperties)message.obj;
78 ················if·(message.arg1·==·2)·{77 ················if·(message.arg1·==·2)·{
79 ····················Tethering$TetherMainSM.access$4500(this.this$1).updateDownstreamLinkProperties(linkProperties);78 ····················Tethering$TetherMasterSM.access$4500(this.this$1).updateDownstreamLinkProperties(linkProperties);
80 ····················break;79 ····················break;
81 ················}80 ················}
82 ················Tethering$TetherMainSM.access$4500(this.this$1).excludeDownstreamInterface(linkProperties.getInterfaceName());81 ················Tethering$TetherMasterSM.access$4500(this.this$1).excludeDownstreamInterface(linkProperties.getInterfaceName());
83 ················break;82 ················break;
84 ············}83 ············}
85 ············case·5:·{84 ············case·5:·{
86 ················this.updateUpstreamWanted();85 ················this.updateUpstreamWanted();
87 ················if·(this.mUpstreamWanted)·{86 ················if·(this.mUpstreamWanted)·{
88 ····················this.this$1.handleUpstreamNetworkMonitorCallback(message.arg1,·message.obj);87 ····················this.this$1.handleUpstreamNetworkMonitorCallback(message.arg1,·message.obj);
89 ····················break;88 ····················break;
Offset 106, 28 lines modifiedOffset 105, 28 lines modified
106 ····················break;105 ····················break;
107 ················}106 ················}
108 ················this.this$1.chooseUpstreamType(b2);107 ················this.this$1.chooseUpstreamType(b2);
109 ················this.mTryCell·=·false;108 ················this.mTryCell·=·false;
110 ················break;109 ················break;
111 ············}110 ············}
112 ············case·2:·{111 ············case·2:·{
113 ················Tethering$TetherMainSM.access$3300(this.this$1,·(IpServer)message.obj);112 ················Tethering$TetherMasterSM.access$3300(this.this$1,·(IpServer)message.obj);
114 ················if·(Tethering$TetherMainSM.access$4700(this.this$1).isEmpty())·{113 ················if·(Tethering$TetherMasterSM.access$4700(this.this$1).isEmpty())·{
115 ····················this.this$1.turnOffMainTetherSettings();114 ····················this.this$1.turnOffMasterTetherSettings();
116 ····················break;115 ····················break;
117 ················}116 ················}
118 ················if·(this.updateUpstreamWanted()·&&·!this.mUpstreamWanted)·{117 ················if·(this.updateUpstreamWanted()·&&·!this.mUpstreamWanted)·{
119 ····················Tethering.access$3600(this.this$1.this$0).releaseMobileNetworkRequest();118 ····················Tethering.access$3600(this.this$1.this$0).releaseMobileNetworkRequest();
120 ····················break;119 ····················break;
121 ················}120 ················}
122 ················break;121 ················break;
123 ············}122 ············}
124 ············case·1:·{123 ············case·1:·{
125 ················final·IpServer·ipServer·=·(IpServer)message.obj;124 ················final·IpServer·ipServer·=·(IpServer)message.obj;
126 ················Tethering$TetherMainSM.access$3100(this.this$1,·message.arg1,·ipServer);125 ················Tethering$TetherMasterSM.access$3100(this.this$1,·message.arg1,·ipServer);
127 ················((StateMachine)ipServer).sendMessage(109,·(Object)Tethering.access$4000(this.this$1.this$0));126 ················((StateMachine)ipServer).sendMessage(109,·(Object)Tethering.access$4000(this.this$1.this$0));
128 ················if·(!this.updateUpstreamWanted()·&&·this.mUpstreamWanted)·{127 ················if·(!this.updateUpstreamWanted()·&&·this.mUpstreamWanted)·{
129 ····················this.this$1.chooseUpstreamType(b2);128 ····················this.this$1.chooseUpstreamType(b2);
130 ····················break;129 ····················break;
131 ················}130 ················}
132 ················break;131 ················break;
133 ············}132 ············}
3.84 KB
com/android/networkstack/tethering/Tethering$TetherMainSM$SetDnsForwardersErrorState.class vs.
com/android/networkstack/tethering/Tethering$TetherMasterSM$SetDnsForwardersErrorState.class
Files 16% similar despite different names
3.62 KB
procyon -ec {}
    
Offset 1, 15 lines modifiedOffset 1, 15 lines modified
  
1 package·com.android.networkstack.tethering;1 package·com.android.networkstack.tethering;
  
2 class·Tethering$TetherMainSM$SetDnsForwardersErrorState·extends·Tethering$TetherMainSM$ErrorState2 class·Tethering$TetherMasterSM$SetDnsForwardersErrorState·extends·Tethering$TetherMasterSM$ErrorState
3 {3 {
4 ····final·/*·synthetic·*/·Tethering$TetherMainSM·this$1;4 ····final·/*·synthetic·*/·Tethering$TetherMasterSM·this$1;
5 ····5 ····
6 ····Tethering$TetherMainSM$SetDnsForwardersErrorState(final·Tethering$TetherMainSM·this$1)·{6 ····Tethering$TetherMasterSM$SetDnsForwardersErrorState(final·Tethering$TetherMasterSM·this$1)·{
7 ········this.this$1·=·this$1;7 ········this.this$1·=·this$1;
8 ········super(this$1);8 ········super(this$1);
9 ····}9 ····}
10 ····10 ····
11 ····public·void·enter()·{11 ····public·void·enter()·{
12 ········//·12 ········//·
13 ········//·This·method·could·not·be·decompiled.13 ········//·This·method·could·not·be·decompiled.
Offset 23, 31 lines modifiedOffset 23, 31 lines modified
23 ········//·····8:·aload_2········23 ········//·····8:·aload_2········
24 ········//·····9:·invokestatic····android/util/Log.e:(Ljava/lang/String;Ljava/lang/String;)I24 ········//·····9:·invokestatic····android/util/Log.e:(Ljava/lang/String;Ljava/lang/String;)I
25 ········//····12:·pop············25 ········//····12:·pop············
26 ········//····13:·bipush··········10826 ········//····13:·bipush··········108
27 ········//····15:·istore_3·······27 ········//····15:·istore_3·······
28 ········//····16:·aload_0········28 ········//····16:·aload_0········
29 ········//····17:·iload_3········29 ········//····17:·iload_3········
30 ········//····18:·invokevirtual···com/android/networkstack/tethering/Tethering$TetherMainSM$ErrorState.notify:(I)V30 ········//····18:·invokevirtual···com/android/networkstack/tethering/Tethering$TetherMasterSM$ErrorState.notify:(I)V
31 ········//····21:·aload_0········31 ········//····21:·aload_0········
32 ········//····22:·getfield········com/android/networkstack/tethering/Tethering$TetherMainSM$SetDnsForwardersErrorState.this$1:Lcom/android/networkstack/tethering/Tethering$TetherMainSM;32 ········//····22:·getfield········com/android/networkstack/tethering/Tethering$TetherMasterSM$SetDnsForwardersErrorState.this$1:Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;
33 ········//····25:·astore_1·······33 ········//····25:·astore_1·······
34 ········//····26:·aload_1········34 ········//····26:·aload_1········
35 ········//····27:·getfield········com/android/networkstack/tethering/Tethering$TetherMainSM.this$0:Lcom/android/networkstack/tethering/Tethering;35 ········//····27:·getfield········com/android/networkstack/tethering/Tethering$TetherMasterSM.this$0:Lcom/android/networkstack/tethering/Tethering;
36 ········//····30:·astore_1·······36 ········//····30:·astore_1·······
37 ········//····31:·aload_1········37 ········//····31:·aload_1········
38 ········//····32:·invokestatic····com/android/networkstack/tethering/Tethering.access$400:(Lcom/android/networkstack/tethering/Tethering;)Landroid/net/INetd;38 ········//····32:·invokestatic····com/android/networkstack/tethering/Tethering.access$400:(Lcom/android/networkstack/tethering/Tethering;)Landroid/net/INetd;
39 ········//····35:·astore_1·······39 ········//····35:·astore_1·······
40 ········//····36:·aload_1········40 ········//····36:·aload_1········
41 ········//····37:·invokeinterface·android/net/INetd.tetherStop:()V41 ········//····37:·invokeinterface·android/net/INetd.tetherStop:()V
42 ········//····42:·aload_0········42 ········//····42:·aload_0········
43 ········//····43:·getfield········com/android/networkstack/tethering/Tethering$TetherMainSM$SetDnsForwardersErrorState.this$1:Lcom/android/networkstack/tethering/Tethering$TetherMainSM;43 ········//····43:·getfield········com/android/networkstack/tethering/Tethering$TetherMasterSM$SetDnsForwardersErrorState.this$1:Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;
44 ········//····46:·astore_0·······44 ········//····46:·astore_0·······
45 ········//····47:·aload_0········45 ········//····47:·aload_0········
46 ········//····48:·getfield········com/android/networkstack/tethering/Tethering$TetherMainSM.this$0:Lcom/android/networkstack/tethering/Tethering;46 ········//····48:·getfield········com/android/networkstack/tethering/Tethering$TetherMasterSM.this$0:Lcom/android/networkstack/tethering/Tethering;
47 ········//····51:·astore_0·······47 ········//····51:·astore_0·······
48 ········//····52:·aload_0········48 ········//····52:·aload_0········
49 ········//····53:·invokestatic····com/android/networkstack/tethering/Tethering.access$400:(Lcom/android/networkstack/tethering/Tethering;)Landroid/net/INetd;49 ········//····53:·invokestatic····com/android/networkstack/tethering/Tethering.access$400:(Lcom/android/networkstack/tethering/Tethering;)Landroid/net/INetd;
50 ········//····56:·astore_0·······50 ········//····56:·astore_0·······
51 ········//····57:·invokestatic····com/android/networkstack/tethering/Tethering.access$3400:()Ljava/lang/String;51 ········//····57:·invokestatic····com/android/networkstack/tethering/Tethering.access$3400:()Ljava/lang/String;
52 ········//····60:·astore_1·······52 ········//····60:·astore_1·······
53 ········//····61:·aload_0········53 ········//····61:·aload_0········
1.13 KB
com/android/networkstack/tethering/Tethering$TetherMainSM$SetIpForwardingDisabledErrorState.class vs.
com/android/networkstack/tethering/Tethering$TetherMasterSM$SetIpForwardingEnabledErrorState.class
Files 14% similar despite different names
919 B
procyon -ec {}
    
Offset 1, 16 lines modifiedOffset 1, 16 lines modified
  
1 package·com.android.networkstack.tethering;1 package·com.android.networkstack.tethering;
  
2 import·android.util.Log;2 import·android.util.Log;
  
3 class·Tethering$TetherMainSM$SetIpForwardingDisabledErrorState·extends·Tethering$TetherMainSM$ErrorState3 class·Tethering$TetherMasterSM$SetIpForwardingEnabledErrorState·extends·Tethering$TetherMasterSM$ErrorState
4 {4 {
5 ····Tethering$TetherMainSM$SetIpForwardingDisabledErrorState(final·Tethering$TetherMainSM·tethering$TetherMainSM)·{5 ····Tethering$TetherMasterSM$SetIpForwardingEnabledErrorState(final·Tethering$TetherMasterSM·tethering$TetherMasterSM)·{
6 ········super(tethering$TetherMainSM);6 ········super(tethering$TetherMasterSM);
7 ····}7 ····}
8 ····8 ····
9 ····public·void·enter()·{9 ····public·void·enter()·{
10 ········Log.e(Tethering.access$3400(),·"Error·in·setIpForwardingDisabled");10 ········Log.e(Tethering.access$3400(),·"Error·in·setIpForwardingEnabled");
11 ········this.notify(105);11 ········this.notify(104);
12 ····}12 ····}
13 }13 }
1.13 KB
com/android/networkstack/tethering/Tethering$TetherMainSM$SetIpForwardingEnabledErrorState.class vs.
com/android/networkstack/tethering/Tethering$TetherMasterSM$SetIpForwardingDisabledErrorState.class
Files 25% similar despite different names
919 B
procyon -ec {}
    
Offset 1, 16 lines modifiedOffset 1, 16 lines modified
  
1 package·com.android.networkstack.tethering;1 package·com.android.networkstack.tethering;
  
2 import·android.util.Log;2 import·android.util.Log;
  
3 class·Tethering$TetherMainSM$SetIpForwardingEnabledErrorState·extends·Tethering$TetherMainSM$ErrorState3 class·Tethering$TetherMasterSM$SetIpForwardingDisabledErrorState·extends·Tethering$TetherMasterSM$ErrorState
4 {4 {
5 ····Tethering$TetherMainSM$SetIpForwardingEnabledErrorState(final·Tethering$TetherMainSM·tethering$TetherMainSM)·{5 ····Tethering$TetherMasterSM$SetIpForwardingDisabledErrorState(final·Tethering$TetherMasterSM·tethering$TetherMasterSM)·{
6 ········super(tethering$TetherMainSM);6 ········super(tethering$TetherMasterSM);
7 ····}7 ····}
8 ····8 ····
9 ····public·void·enter()·{9 ····public·void·enter()·{
10 ········Log.e(Tethering.access$3400(),·"Error·in·setIpForwardingEnabled");10 ········Log.e(Tethering.access$3400(),·"Error·in·setIpForwardingDisabled");
11 ········this.notify(104);11 ········this.notify(105);
12 ····}12 ····}
13 }13 }
1.57 KB
com/android/networkstack/tethering/Tethering$TetherMainSM$StartTetheringErrorState.class vs.
com/android/networkstack/tethering/Tethering$TetherMasterSM$StartTetheringErrorState.class
Files 18% similar despite different names
1.35 KB
procyon -ec {}
    
Offset 2, 28 lines modifiedOffset 2, 28 lines modified
2 package·com.android.networkstack.tethering;2 package·com.android.networkstack.tethering;
  
3 import·android.net.INetd;3 import·android.net.INetd;
4 import·android.os.ServiceSpecificException;4 import·android.os.ServiceSpecificException;
5 import·android.os.RemoteException;5 import·android.os.RemoteException;
6 import·android.util.Log;6 import·android.util.Log;
  
7 class·Tethering$TetherMainSM$StartTetheringErrorState·extends·Tethering$TetherMainSM$ErrorState7 class·Tethering$TetherMasterSM$StartTetheringErrorState·extends·Tethering$TetherMasterSM$ErrorState
8 {8 {
9 ····final·/*·synthetic·*/·Tethering$TetherMainSM·this$1;9 ····final·/*·synthetic·*/·Tethering$TetherMasterSM·this$1;
10 ····10 ····
11 ····Tethering$TetherMainSM$StartTetheringErrorState(final·Tethering$TetherMainSM·this$1)·{11 ····Tethering$TetherMasterSM$StartTetheringErrorState(final·Tethering$TetherMasterSM·this$1)·{
12 ········this.this$1·=·this$1;12 ········this.this$1·=·this$1;
13 ········super(this$1);13 ········super(this$1);
14 ····}14 ····}
15 ····15 ····
16 ····public·void·enter()·{16 ····public·void·enter()·{
17 ········Log.e(Tethering.access$3400(),·"Error·in·startTethering");17 ········Log.e(Tethering.access$3400(),·"Error·in·startTethering");
18 ········this.notify(106);18 ········this.notify(106);
19 ········try·{19 ········try·{
20 ············final·Tethering$TetherMainSM·this$1·=·this.this$1;20 ············final·Tethering$TetherMasterSM·this$1·=·this.this$1;
21 ············try·{21 ············try·{
22 ················final·Tethering·this$2·=·this$1.this$0;22 ················final·Tethering·this$2·=·this$1.this$0;
23 ················try·{23 ················try·{
24 ····················final·INetd·access$400·=·Tethering.access$400(this$2);24 ····················final·INetd·access$400·=·Tethering.access$400(this$2);
25 ····················try·{25 ····················try·{
26 ························access$400.ipfwdDisableForwarding(Tethering.access$3400());26 ························access$400.ipfwdDisableForwarding(Tethering.access$3400());
27 ····················}27 ····················}
1.56 KB
com/android/networkstack/tethering/Tethering$TetherMainSM$StopTetheringErrorState.class vs.
com/android/networkstack/tethering/Tethering$TetherMasterSM$StopTetheringErrorState.class
Files 18% similar despite different names
1.35 KB
procyon -ec {}
    
Offset 2, 28 lines modifiedOffset 2, 28 lines modified
2 package·com.android.networkstack.tethering;2 package·com.android.networkstack.tethering;
  
3 import·android.net.INetd;3 import·android.net.INetd;
4 import·android.os.ServiceSpecificException;4 import·android.os.ServiceSpecificException;
5 import·android.os.RemoteException;5 import·android.os.RemoteException;
6 import·android.util.Log;6 import·android.util.Log;
  
7 class·Tethering$TetherMainSM$StopTetheringErrorState·extends·Tethering$TetherMainSM$ErrorState7 class·Tethering$TetherMasterSM$StopTetheringErrorState·extends·Tethering$TetherMasterSM$ErrorState
8 {8 {
9 ····final·/*·synthetic·*/·Tethering$TetherMainSM·this$1;9 ····final·/*·synthetic·*/·Tethering$TetherMasterSM·this$1;
10 ····10 ····
11 ····Tethering$TetherMainSM$StopTetheringErrorState(final·Tethering$TetherMainSM·this$1)·{11 ····Tethering$TetherMasterSM$StopTetheringErrorState(final·Tethering$TetherMasterSM·this$1)·{
12 ········this.this$1·=·this$1;12 ········this.this$1·=·this$1;
13 ········super(this$1);13 ········super(this$1);
14 ····}14 ····}
15 ····15 ····
16 ····public·void·enter()·{16 ····public·void·enter()·{
17 ········Log.e(Tethering.access$3400(),·"Error·in·stopTethering");17 ········Log.e(Tethering.access$3400(),·"Error·in·stopTethering");
18 ········this.notify(107);18 ········this.notify(107);
19 ········try·{19 ········try·{
20 ············final·Tethering$TetherMainSM·this$1·=·this.this$1;20 ············final·Tethering$TetherMasterSM·this$1·=·this.this$1;
21 ············try·{21 ············try·{
22 ················final·Tethering·this$2·=·this$1.this$0;22 ················final·Tethering·this$2·=·this$1.this$0;
23 ················try·{23 ················try·{
24 ····················final·INetd·access$400·=·Tethering.access$400(this$2);24 ····················final·INetd·access$400·=·Tethering.access$400(this$2);
25 ····················try·{25 ····················try·{
26 ························access$400.ipfwdDisableForwarding(Tethering.access$3400());26 ························access$400.ipfwdDisableForwarding(Tethering.access$3400());
27 ····················}27 ····················}
1010 KB
resources.arsc
    
Offset 1, 10 lines modifiedOffset 1, 10 lines modified
00000000:·0200·0c00·e4db·0100·0100·0000·0100·1c00··................00000000:·0200·0c00·b0db·0100·0100·0000·0100·1c00··................
00000010:·f0d0·0000·4603·0000·0000·0000·0001·0000··....F...........00000010:·18d1·0000·4903·0000·0000·0000·0001·0000··....I...........
00000020:·340d·0000·0000·0000·0000·0000·0300·0000··4...............00000020:·400d·0000·0000·0000·0000·0000·0300·0000··@...............
00000030:·2400·0000·4100·0000·5200·0000·6a00·0000··$...A...R...j...00000030:·2400·0000·4100·0000·5200·0000·6a00·0000··$...A...R...j...
00000040:·8800·0000·9100·0000·c300·0000·d200·0000··................00000040:·8800·0000·9100·0000·c300·0000·d200·0000··................
00000050:·da00·0000·0f01·0000·4201·0000·7101·0000··........B...q...00000050:·da00·0000·0f01·0000·4201·0000·7101·0000··........B...q...
00000060:·a601·0000·d901·0000·0802·0000·3d02·0000··............=...00000060:·a601·0000·d901·0000·0802·0000·3d02·0000··............=...
00000070:·7002·0000·9f02·0000·d502·0000·0903·0000··p...............00000070:·7002·0000·9f02·0000·d502·0000·0903·0000··p...............
00000080:·3903·0000·7003·0000·a503·0000·d603·0000··9...p...........00000080:·3903·0000·7003·0000·a503·0000·d603·0000··9...p...........
00000090:·e003·0000·eb03·0000·f303·0000·fd03·0000··................00000090:·e003·0000·eb03·0000·f303·0000·fd03·0000··................
Offset 37, 7518 lines modifiedOffset 37, 7518 lines modified
00000240:·531f·0000·a21f·0000·c71f·0000·f41f·0000··S...............00000240:·531f·0000·a21f·0000·c71f·0000·f41f·0000··S...............
00000250:·1220·0000·4120·0000·5e20·0000·ad20·0000··.·..A·..^·...·..00000250:·1220·0000·4120·0000·5e20·0000·ad20·0000··.·..A·..^·...·..
00000260:·e820·0000·1d21·0000·5821·0000·b821·0000··.·...!..X!...!..00000260:·e820·0000·1d21·0000·5821·0000·b821·0000··.·...!..X!...!..
00000270:·1f22·0000·5f22·0000·b422·0000·dc22·0000··.".._"..."..."..00000270:·1f22·0000·5f22·0000·b422·0000·dc22·0000··.".._"..."..."..
00000280:·3023·0000·5b23·0000·8823·0000·bc23·0000··0#..[#...#...#..00000280:·3023·0000·5b23·0000·8823·0000·bc23·0000··0#..[#...#...#..
00000290:·ec23·0000·0424·0000·8524·0000·fe24·0000··.#...$...$...$..00000290:·ec23·0000·0424·0000·8524·0000·fe24·0000··.#...$...$...$..
Offset 7599, 17 lines modifiedOffset 7599, 13 lines modified
3.64 KB
smali/android/net/INetworkStackConnector$Stub$Proxy.smali
    
Offset 25, 130 lines modifiedOffset 25, 130 lines modified
25 .field·private·mRemote:Landroid/os/IBinder;25 .field·private·mRemote:Landroid/os/IBinder;
  
  
26 #·direct·methods26 #·direct·methods
27 .method·constructor·<init>(Landroid/os/IBinder;)V27 .method·constructor·<init>(Landroid/os/IBinder;)V
28 ····.locals·028 ····.locals·0
  
29 ····.line·17129 ····.line·158
30 ····invoke-direct·{p0},·Ljava/lang/Object;-><init>()V30 ····invoke-direct·{p0},·Ljava/lang/Object;-><init>()V
  
31 ····.line·17231 ····.line·159
32 ····iput-object·p1,·p0,·Landroid/net/INetworkStackConnector$Stub$Proxy;->mRemote:Landroid/os/IBinder;32 ····iput-object·p1,·p0,·Landroid/net/INetworkStackConnector$Stub$Proxy;->mRemote:Landroid/os/IBinder;
  
33 ····return-void33 ····return-void
34 .end·method34 .end·method
  
  
35 #·virtual·methods35 #·virtual·methods
36 .method·public·asBinder()Landroid/os/IBinder;36 .method·public·asBinder()Landroid/os/IBinder;
37 ····.locals·037 ····.locals·0
  
38 ····.line·17838 ····.line·165
39 ····iget-object·p0,·p0,·Landroid/net/INetworkStackConnector$Stub$Proxy;->mRemote:Landroid/os/IBinder;39 ····iget-object·p0,·p0,·Landroid/net/INetworkStackConnector$Stub$Proxy;->mRemote:Landroid/os/IBinder;
  
40 ····return-object·p040 ····return-object·p0
41 .end·method41 .end·method
  
42 .method·public·makeDhcpServer(Ljava/lang/String;Landroid/net/dhcp/DhcpServingParamsParcel;Landroid/net/dhcp/IDhcpServerCallbacks;)V42 .method·public·makeDhcpServer(Ljava/lang/String;Landroid/net/dhcp/DhcpServingParamsParcel;Landroid/net/dhcp/IDhcpServerCallbacks;)V
43 ····.locals·443 ····.locals·4
44 ····.annotation·system·Ldalvik/annotation/Throws;44 ····.annotation·system·Ldalvik/annotation/Throws;
45 ········value·=·{45 ········value·=·{
46 ············Landroid/os/RemoteException;46 ············Landroid/os/RemoteException;
47 ········}47 ········}
48 ····.end·annotation48 ····.end·annotation
  
49 ····.line·18649 ····.line·173
50 ····invoke-static·{},·Landroid/os/Parcel;->obtain()Landroid/os/Parcel;50 ····invoke-static·{},·Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
  
51 ····move-result-object·v051 ····move-result-object·v0
  
52 ····.line·18852 ····.line·175
53 ····:try_start_053 ····:try_start_0
54 ····invoke-static·{},·Landroid/net/INetworkStackConnector$Stub;->access$000()Ljava/lang/String;54 ····invoke-static·{},·Landroid/net/INetworkStackConnector$Stub;->access$000()Ljava/lang/String;
  
55 ····move-result-object·v155 ····move-result-object·v1
  
56 ····invoke-virtual·{v0,·v1},·Landroid/os/Parcel;->writeInterfaceToken(Ljava/lang/String;)V56 ····invoke-virtual·{v0,·v1},·Landroid/os/Parcel;->writeInterfaceToken(Ljava/lang/String;)V
  
57 ····.line·18957 ····.line·176
58 ····invoke-virtual·{v0,·p1},·Landroid/os/Parcel;->writeString(Ljava/lang/String;)V58 ····invoke-virtual·{v0,·p1},·Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
  
59 ····const/4·v1,·0x059 ····const/4·v1,·0x0
  
60 ····const/4·v2,·0x160 ····const/4·v2,·0x1
  
61 ····if-eqz·p2,·:cond_061 ····if-eqz·p2,·:cond_0
  
62 ····.line·19162 ····.line·178
63 ····invoke-virtual·{v0,·v2},·Landroid/os/Parcel;->writeInt(I)V63 ····invoke-virtual·{v0,·v2},·Landroid/os/Parcel;->writeInt(I)V
  
64 ····.line·19264 ····.line·179
65 ····invoke-virtual·{p2,·v0,·v1},·Landroid/net/dhcp/DhcpServingParamsParcel;->writeToParcel(Landroid/os/Parcel;I)V65 ····invoke-virtual·{p2,·v0,·v1},·Landroid/net/dhcp/DhcpServingParamsParcel;->writeToParcel(Landroid/os/Parcel;I)V
  
66 ····goto·:goto_066 ····goto·:goto_0
  
67 ····.line·19567 ····.line·182
68 ····:cond_068 ····:cond_0
69 ····invoke-virtual·{v0,·v1},·Landroid/os/Parcel;->writeInt(I)V69 ····invoke-virtual·{v0,·v1},·Landroid/os/Parcel;->writeInt(I)V
  
70 ····:goto_070 ····:goto_0
71 ····const/4·v1,·0x071 ····const/4·v1,·0x0
  
72 ····if-eqz·p3,·:cond_172 ····if-eqz·p3,·:cond_1
  
73 ····.line·19773 ····.line·184
74 ····invoke-interface·{p3},·Landroid/os/IInterface;->asBinder()Landroid/os/IBinder;74 ····invoke-interface·{p3},·Landroid/os/IInterface;->asBinder()Landroid/os/IBinder;
  
75 ····move-result-object·v375 ····move-result-object·v3
  
76 ····goto·:goto_176 ····goto·:goto_1
  
77 ····:cond_177 ····:cond_1
78 ····move-object·v3,·v178 ····move-object·v3,·v1
  
79 ····:goto_179 ····:goto_1
80 ····invoke-virtual·{v0,·v3},·Landroid/os/Parcel;->writeStrongBinder(Landroid/os/IBinder;)V80 ····invoke-virtual·{v0,·v3},·Landroid/os/Parcel;->writeStrongBinder(Landroid/os/IBinder;)V
  
81 ····.line·19881 ····.line·185
82 ····iget-object·p0,·p0,·Landroid/net/INetworkStackConnector$Stub$Proxy;->mRemote:Landroid/os/IBinder;82 ····iget-object·p0,·p0,·Landroid/net/INetworkStackConnector$Stub$Proxy;->mRemote:Landroid/os/IBinder;
  
83 ····invoke-interface·{p0,·v2,·v0,·v1,·v2},·Landroid/os/IBinder;->transact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z83 ····invoke-interface·{p0,·v2,·v0,·v1,·v2},·Landroid/os/IBinder;->transact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
  
84 ····move-result·p084 ····move-result·p0
  
85 ····if-nez·p0,·:cond_285 ····if-nez·p0,·:cond_2
  
86 ····.line·19986 ····.line·186
87 ····invoke-static·{},·Landroid/net/INetworkStackConnector$Stub;->getDefaultImpl()Landroid/net/INetworkStackConnector;87 ····invoke-static·{},·Landroid/net/INetworkStackConnector$Stub;->getDefaultImpl()Landroid/net/INetworkStackConnector;
  
88 ····move-result-object·p088 ····move-result-object·p0
  
89 ····if-eqz·p0,·:cond_289 ····if-eqz·p0,·:cond_2
  
90 ····.line·20090 ····.line·187
91 ····invoke-static·{},·Landroid/net/INetworkStackConnector$Stub;->getDefaultImpl()Landroid/net/INetworkStackConnector;91 ····invoke-static·{},·Landroid/net/INetworkStackConnector$Stub;->getDefaultImpl()Landroid/net/INetworkStackConnector;
  
92 ····move-result-object·p092 ····move-result-object·p0
  
93 ····invoke-interface·{p0,·p1,·p2,·p3},·Landroid/net/INetworkStackConnector;->makeDhcpServer(Ljava/lang/String;Landroid/net/dhcp/DhcpServingParamsParcel;Landroid/net/dhcp/IDhcpServerCallbacks;)V93 ····invoke-interface·{p0,·p1,·p2,·p3},·Landroid/net/INetworkStackConnector;->makeDhcpServer(Ljava/lang/String;Landroid/net/dhcp/DhcpServingParamsParcel;Landroid/net/dhcp/IDhcpServerCallbacks;)V
94 ····:try_end_094 ····:try_end_0
95 ····.catchall·{:try_start_0·..·:try_end_0}·:catchall_095 ····.catchall·{:try_start_0·..·:try_end_0}·:catchall_0
  
96 ····.line·20596 ····.line·192
97 ····invoke-virtual·{v0},·Landroid/os/Parcel;->recycle()V97 ····invoke-virtual·{v0},·Landroid/os/Parcel;->recycle()V
  
98 ····return-void98 ····return-void
  
99 ····:cond_299 ····:cond_2
100 ····invoke-virtual·{v0},·Landroid/os/Parcel;->recycle()V100 ····invoke-virtual·{v0},·Landroid/os/Parcel;->recycle()V
  
101 ····return-void101 ····return-void
  
102 ····:catchall_0102 ····:catchall_0
103 ····move-exception·p0103 ····move-exception·p0
  
104 ····invoke-virtual·{v0},·Landroid/os/Parcel;->recycle()V104 ····invoke-virtual·{v0},·Landroid/os/Parcel;->recycle()V
  
... Open expanded diff ...
1.96 KB
smali/android/net/INetworkStackConnector$Stub.smali
    
Offset 33, 72 lines modifiedOffset 33, 72 lines modified
  
33 ····const-string·v0,·"android$net$INetworkStackConnector"33 ····const-string·v0,·"android$net$INetworkStackConnector"
  
34 ····const/16·v1,·0x2434 ····const/16·v1,·0x24
  
35 ····const/16·v2,·0x2e35 ····const/16·v2,·0x2e
  
36 ····.line·5036 ····.line·47
37 ····invoke-virtual·{v0,·v1,·v2},·Ljava/lang/String;->replace(CC)Ljava/lang/String;37 ····invoke-virtual·{v0,·v1,·v2},·Ljava/lang/String;->replace(CC)Ljava/lang/String;
  
38 ····move-result-object·v038 ····move-result-object·v0
  
39 ····sput-object·v0,·Landroid/net/INetworkStackConnector$Stub;->DESCRIPTOR:Ljava/lang/String;39 ····sput-object·v0,·Landroid/net/INetworkStackConnector$Stub;->DESCRIPTOR:Ljava/lang/String;
  
40 ····return-void40 ····return-void
41 .end·method41 .end·method
  
42 .method·static·synthetic·access$000()Ljava/lang/String;42 .method·static·synthetic·access$000()Ljava/lang/String;
43 ····.locals·143 ····.locals·1
  
44 ····.line·4844 ····.line·45
45 ····sget-object·v0,·Landroid/net/INetworkStackConnector$Stub;->DESCRIPTOR:Ljava/lang/String;45 ····sget-object·v0,·Landroid/net/INetworkStackConnector$Stub;->DESCRIPTOR:Ljava/lang/String;
  
46 ····return-object·v046 ····return-object·v0
47 .end·method47 .end·method
  
48 .method·public·static·asInterface(Landroid/os/IBinder;)Landroid/net/INetworkStackConnector;48 .method·public·static·asInterface(Landroid/os/IBinder;)Landroid/net/INetworkStackConnector;
49 ····.locals·249 ····.locals·2
  
50 ····if-nez·p0,·:cond_050 ····if-nez·p0,·:cond_0
  
51 ····const/4·p0,·0x051 ····const/4·p0,·0x0
  
52 ····return-object·p052 ····return-object·p0
  
53 ····.line·6553 ····.line·62
54 ····:cond_054 ····:cond_0
55 ····sget-object·v0,·Landroid/net/INetworkStackConnector$Stub;->DESCRIPTOR:Ljava/lang/String;55 ····sget-object·v0,·Landroid/net/INetworkStackConnector$Stub;->DESCRIPTOR:Ljava/lang/String;
  
56 ····invoke-interface·{p0,·v0},·Landroid/os/IBinder;->queryLocalInterface(Ljava/lang/String;)Landroid/os/IInterface;56 ····invoke-interface·{p0,·v0},·Landroid/os/IBinder;->queryLocalInterface(Ljava/lang/String;)Landroid/os/IInterface;
  
57 ····move-result-object·v057 ····move-result-object·v0
  
58 ····if-eqz·v0,·:cond_158 ····if-eqz·v0,·:cond_1
  
59 ····.line·6659 ····.line·63
60 ····instance-of·v1,·v0,·Landroid/net/INetworkStackConnector;60 ····instance-of·v1,·v0,·Landroid/net/INetworkStackConnector;
  
61 ····if-eqz·v1,·:cond_161 ····if-eqz·v1,·:cond_1
  
62 ····.line·6762 ····.line·64
63 ····check-cast·v0,·Landroid/net/INetworkStackConnector;63 ····check-cast·v0,·Landroid/net/INetworkStackConnector;
  
64 ····return-object·v064 ····return-object·v0
  
65 ····.line·6965 ····.line·66
66 ····:cond_166 ····:cond_1
67 ····new-instance·v0,·Landroid/net/INetworkStackConnector$Stub$Proxy;67 ····new-instance·v0,·Landroid/net/INetworkStackConnector$Stub$Proxy;
  
68 ····invoke-direct·{v0,·p0},·Landroid/net/INetworkStackConnector$Stub$Proxy;-><init>(Landroid/os/IBinder;)V68 ····invoke-direct·{v0,·p0},·Landroid/net/INetworkStackConnector$Stub$Proxy;-><init>(Landroid/os/IBinder;)V
  
69 ····return-object·v069 ····return-object·v0
70 .end·method70 .end·method
  
71 .method·public·static·getDefaultImpl()Landroid/net/INetworkStackConnector;71 .method·public·static·getDefaultImpl()Landroid/net/INetworkStackConnector;
72 ····.locals·172 ····.locals·1
  
73 ····.line·34973 ····.line·318
74 ····sget-object·v0,·Landroid/net/INetworkStackConnector$Stub$Proxy;->sDefaultImpl:Landroid/net/INetworkStackConnector;74 ····sget-object·v0,·Landroid/net/INetworkStackConnector$Stub$Proxy;->sDefaultImpl:Landroid/net/INetworkStackConnector;
  
75 ····return-object·v075 ····return-object·v0
76 .end·method76 .end·method
520 B
smali/android/net/dhcp/DhcpServerCallbacks.smali
    
Offset 14, 19 lines modifiedOffset 14, 19 lines modified
14 .end·method14 .end·method
  
  
15 #·virtual·methods15 #·virtual·methods
16 .method·public·getInterfaceHash()Ljava/lang/String;16 .method·public·getInterfaceHash()Ljava/lang/String;
17 ····.locals·017 ····.locals·0
  
18 ····const-string·p0,·"f6e2137b5033902774f78726d429399db3b18cab"18 ····const-string·p0,·"02cd6fd07d5c04eca0c35a350f7b0be576242883"
  
19 ····return-object·p019 ····return-object·p0
20 .end·method20 .end·method
  
21 .method·public·getInterfaceVersion()I21 .method·public·getInterfaceVersion()I
22 ····.locals·022 ····.locals·0
  
23 ····const/16·p0,·0x823 ····const/4·p0,·0x7
  
24 ····return·p024 ····return·p0
25 .end·method25 .end·method
4.99 KB
smali/android/net/ip/IpServer$InitialState.smali
    
Offset 18, 48 lines modifiedOffset 18, 48 lines modified
18 .field·final·synthetic·this$0:Landroid/net/ip/IpServer;18 .field·final·synthetic·this$0:Landroid/net/ip/IpServer;
  
  
19 #·direct·methods19 #·direct·methods
20 .method·constructor·<init>(Landroid/net/ip/IpServer;)V20 .method·constructor·<init>(Landroid/net/ip/IpServer;)V
21 ····.locals·021 ····.locals·0
  
22 ····.line·104722 ····.line·1039
23 ····iput-object·p1,·p0,·Landroid/net/ip/IpServer$InitialState;->this$0:Landroid/net/ip/IpServer;23 ····iput-object·p1,·p0,·Landroid/net/ip/IpServer$InitialState;->this$0:Landroid/net/ip/IpServer;
  
24 ····invoke-direct·{p0},·Lcom/android/networkstack/tethering/util/State;-><init>()V24 ····invoke-direct·{p0},·Lcom/android/networkstack/tethering/util/State;-><init>()V
  
25 ····return-void25 ····return-void
26 .end·method26 .end·method
  
  
27 #·virtual·methods27 #·virtual·methods
28 .method·public·enter()V28 .method·public·enter()V
29 ····.locals·129 ····.locals·1
  
30 ····.line·105030 ····.line·1042
31 ····iget-object·p0,·p0,·Landroid/net/ip/IpServer$InitialState;->this$0:Landroid/net/ip/IpServer;31 ····iget-object·p0,·p0,·Landroid/net/ip/IpServer$InitialState;->this$0:Landroid/net/ip/IpServer;
  
32 ····const/4·v0,·0x132 ····const/4·v0,·0x1
  
33 ····invoke-static·{p0,·v0},·Landroid/net/ip/IpServer;->access$1300(Landroid/net/ip/IpServer;I)V33 ····invoke-static·{p0,·v0},·Landroid/net/ip/IpServer;->access$1300(Landroid/net/ip/IpServer;I)V
  
34 ····return-void34 ····return-void
35 .end·method35 .end·method
  
36 .method·public·processMessage(Landroid/os/Message;)Z36 .method·public·processMessage(Landroid/os/Message;)Z
37 ····.locals·337 ····.locals·3
  
38 ····.line·105538 ····.line·1047
39 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer$InitialState;->this$0:Landroid/net/ip/IpServer;39 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer$InitialState;->this$0:Landroid/net/ip/IpServer;
  
40 ····iget·v1,·p1,·Landroid/os/Message;->what:I40 ····iget·v1,·p1,·Landroid/os/Message;->what:I
  
41 ····invoke-static·{v0,·p0,·v1},·Landroid/net/ip/IpServer;->access$1400(Landroid/net/ip/IpServer;Lcom/android/networkstack/tethering/util/State;I)V41 ····invoke-static·{v0,·p0,·v1},·Landroid/net/ip/IpServer;->access$1400(Landroid/net/ip/IpServer;Lcom/android/networkstack/tethering/util/State;I)V
  
42 ····.line·105642 ····.line·1048
43 ····iget·v0,·p1,·Landroid/os/Message;->what:I43 ····iget·v0,·p1,·Landroid/os/Message;->what:I
  
44 ····const/16·v1,·0x6544 ····const/16·v1,·0x65
  
45 ····const/4·v2,·0x045 ····const/4·v2,·0x0
  
46 ····if-eq·v0,·v1,·:cond_246 ····if-eq·v0,·v1,·:cond_2
Offset 70, 102 lines modifiedOffset 70, 102 lines modified
  
70 ····const/16·v1,·0x6e70 ····const/16·v1,·0x6e
  
71 ····if-eq·v0,·v1,·:cond_071 ····if-eq·v0,·v1,·:cond_0
  
72 ····return·v272 ····return·v2
  
73 ····.line·107673 ····.line·1068
74 ····:cond_074 ····:cond_0
75 ····iget-object·p0,·p0,·Landroid/net/ip/IpServer$InitialState;->this$0:Landroid/net/ip/IpServer;75 ····iget-object·p0,·p0,·Landroid/net/ip/IpServer$InitialState;->this$0:Landroid/net/ip/IpServer;
  
76 ····iget-object·v0,·p1,·Landroid/os/Message;->obj:Ljava/lang/Object;76 ····iget-object·v0,·p1,·Landroid/os/Message;->obj:Ljava/lang/Object;
  
77 ····check-cast·v0,·Landroid/net/LinkProperties;77 ····check-cast·v0,·Landroid/net/LinkProperties;
  
78 ····iget·p1,·p1,·Landroid/os/Message;->arg1:I78 ····iget·p1,·p1,·Landroid/os/Message;->arg1:I
  
79 ····invoke-static·{p0,·v0,·p1},·Landroid/net/ip/IpServer;->access$1900(Landroid/net/ip/IpServer;Landroid/net/LinkProperties;I)V79 ····invoke-static·{p0,·v0,·p1},·Landroid/net/ip/IpServer;->access$1900(Landroid/net/ip/IpServer;Landroid/net/LinkProperties;I)V
  
80 ····goto·:goto_080 ····goto·:goto_0
  
81 ····.line·107381 ····.line·1065
82 ····:cond_182 ····:cond_1
83 ····iget-object·p0,·p0,·Landroid/net/ip/IpServer$InitialState;->this$0:Landroid/net/ip/IpServer;83 ····iget-object·p0,·p0,·Landroid/net/ip/IpServer$InitialState;->this$0:Landroid/net/ip/IpServer;
  
84 ····invoke-static·{p0},·Landroid/net/ip/IpServer;->access$1800(Landroid/net/ip/IpServer;)Lcom/android/networkstack/tethering/util/State;84 ····invoke-static·{p0},·Landroid/net/ip/IpServer;->access$1800(Landroid/net/ip/IpServer;)Lcom/android/networkstack/tethering/util/State;
  
85 ····move-result-object·p185 ····move-result-object·p1
  
86 ····invoke-virtual·{p0,·p1},·Lcom/android/networkstack/tethering/util/StateMachine;->transitionTo(Lcom/android/networkstack/tethering/util/IState;)V86 ····invoke-virtual·{p0,·p1},·Lcom/android/networkstack/tethering/util/StateMachine;->transitionTo(Lcom/android/networkstack/tethering/util/IState;)V
  
87 ····goto·:goto_087 ····goto·:goto_0
  
88 ····.line·105888 ····.line·1050
89 ····:cond_289 ····:cond_2
90 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer$InitialState;->this$0:Landroid/net/ip/IpServer;90 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer$InitialState;->this$0:Landroid/net/ip/IpServer;
  
91 ····invoke-static·{v0,·v2},·Landroid/net/ip/IpServer;->access$102(Landroid/net/ip/IpServer;I)I91 ····invoke-static·{v0,·v2},·Landroid/net/ip/IpServer;->access$102(Landroid/net/ip/IpServer;I)I
  
92 ····.line·105992 ····.line·1051
93 ····iget·v0,·p1,·Landroid/os/Message;->arg1:I93 ····iget·v0,·p1,·Landroid/os/Message;->arg1:I
  
94 ····const/4·v1,·0x294 ····const/4·v1,·0x2
  
95 ····if-eq·v0,·v1,·:cond_495 ····if-eq·v0,·v1,·:cond_4
  
96 ····const/4·v1,·0x396 ····const/4·v1,·0x3
  
97 ····if-eq·v0,·v1,·:cond_397 ····if-eq·v0,·v1,·:cond_3
  
98 ····.line·106998 ····.line·1061
99 ····iget-object·p0,·p0,·Landroid/net/ip/IpServer$InitialState;->this$0:Landroid/net/ip/IpServer;99 ····iget-object·p0,·p0,·Landroid/net/ip/IpServer$InitialState;->this$0:Landroid/net/ip/IpServer;
  
100 ····invoke-static·{p0},·Landroid/net/ip/IpServer;->access$400(Landroid/net/ip/IpServer;)Landroid/net/util/SharedLog;100 ····invoke-static·{p0},·Landroid/net/ip/IpServer;->access$400(Landroid/net/ip/IpServer;)Landroid/net/util/SharedLog;
  
101 ····move-result-object·p0101 ····move-result-object·p0
  
102 ····const-string·p1,·"Invalid·tethering·interface·serving·state·specified."102 ····const-string·p1,·"Invalid·tethering·interface·serving·state·specified."
  
103 ····invoke-virtual·{p0,·p1},·Landroid/net/util/SharedLog;->e(Ljava/lang/String;)V103 ····invoke-virtual·{p0,·p1},·Landroid/net/util/SharedLog;->e(Ljava/lang/String;)V
  
104 ····goto·:goto_0104 ····goto·:goto_0
  
105 ····.line·1061105 ····.line·1053
106 ····:cond_3106 ····:cond_3
107 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer$InitialState;->this$0:Landroid/net/ip/IpServer;107 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer$InitialState;->this$0:Landroid/net/ip/IpServer;
  
108 ····iget-object·p1,·p1,·Landroid/os/Message;->obj:Ljava/lang/Object;108 ····iget-object·p1,·p1,·Landroid/os/Message;->obj:Ljava/lang/Object;
  
109 ····check-cast·p1,·Landroid/net/TetheringRequestParcel;109 ····check-cast·p1,·Landroid/net/TetheringRequestParcel;
  
110 ····invoke-static·{v0,·p1},·Landroid/net/ip/IpServer;->access$1500(Landroid/net/ip/IpServer;Landroid/net/TetheringRequestParcel;)V110 ····invoke-static·{v0,·p1},·Landroid/net/ip/IpServer;->access$1500(Landroid/net/ip/IpServer;Landroid/net/TetheringRequestParcel;)V
  
111 ····.line·1062111 ····.line·1054
112 ····iget-object·p0,·p0,·Landroid/net/ip/IpServer$InitialState;->this$0:Landroid/net/ip/IpServer;112 ····iget-object·p0,·p0,·Landroid/net/ip/IpServer$InitialState;->this$0:Landroid/net/ip/IpServer;
  
113 ····invoke-static·{p0},·Landroid/net/ip/IpServer;->access$1600(Landroid/net/ip/IpServer;)Lcom/android/networkstack/tethering/util/State;113 ····invoke-static·{p0},·Landroid/net/ip/IpServer;->access$1600(Landroid/net/ip/IpServer;)Lcom/android/networkstack/tethering/util/State;
  
... Open expanded diff ...
14.7 KB
smali/android/net/ip/IpServer$TetheredState.smali
    
Offset 18, 37 lines modifiedOffset 18, 37 lines modified
18 .field·final·synthetic·this$0:Landroid/net/ip/IpServer;18 .field·final·synthetic·this$0:Landroid/net/ip/IpServer;
  
  
19 #·direct·methods19 #·direct·methods
20 .method·constructor·<init>(Landroid/net/ip/IpServer;)V20 .method·constructor·<init>(Landroid/net/ip/IpServer;)V
21 ····.locals·021 ····.locals·0
  
22 ····.line·120722 ····.line·1199
23 ····iput-object·p1,·p0,·Landroid/net/ip/IpServer$TetheredState;->this$0:Landroid/net/ip/IpServer;23 ····iput-object·p1,·p0,·Landroid/net/ip/IpServer$TetheredState;->this$0:Landroid/net/ip/IpServer;
  
24 ····invoke-direct·{p0,·p1},·Landroid/net/ip/IpServer$BaseServingState;-><init>(Landroid/net/ip/IpServer;)V24 ····invoke-direct·{p0,·p1},·Landroid/net/ip/IpServer$BaseServingState;-><init>(Landroid/net/ip/IpServer;)V
  
25 ····return-void25 ····return-void
26 .end·method26 .end·method
  
27 .method·private·cleanupUpstream()V27 .method·private·cleanupUpstream()V
28 ····.locals·228 ····.locals·2
  
29 ····.line·122629 ····.line·1218
30 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer$TetheredState;->this$0:Landroid/net/ip/IpServer;30 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer$TetheredState;->this$0:Landroid/net/ip/IpServer;
  
31 ····invoke-static·{v0},·Landroid/net/ip/IpServer;->access$3100(Landroid/net/ip/IpServer;)Landroid/net/util/InterfaceSet;31 ····invoke-static·{v0},·Landroid/net/ip/IpServer;->access$3100(Landroid/net/ip/IpServer;)Landroid/net/util/InterfaceSet;
  
32 ····move-result-object·v032 ····move-result-object·v0
  
33 ····if-nez·v0,·:cond_033 ····if-nez·v0,·:cond_0
  
34 ····return-void34 ····return-void
  
35 ····.line·122835 ····.line·1220
36 ····:cond_036 ····:cond_0
37 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer$TetheredState;->this$0:Landroid/net/ip/IpServer;37 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer$TetheredState;->this$0:Landroid/net/ip/IpServer;
  
38 ····invoke-static·{v0},·Landroid/net/ip/IpServer;->access$3100(Landroid/net/ip/IpServer;)Landroid/net/util/InterfaceSet;38 ····invoke-static·{v0},·Landroid/net/ip/IpServer;->access$3100(Landroid/net/ip/IpServer;)Landroid/net/util/InterfaceSet;
  
39 ····move-result-object·v039 ····move-result-object·v0
  
Offset 71, 34 lines modifiedOffset 71, 34 lines modified
  
71 ····check-cast·v1,·Ljava/lang/String;71 ····check-cast·v1,·Ljava/lang/String;
  
72 ····invoke-direct·{p0,·v1},·Landroid/net/ip/IpServer$TetheredState;->cleanupUpstreamInterface(Ljava/lang/String;)V72 ····invoke-direct·{p0,·v1},·Landroid/net/ip/IpServer$TetheredState;->cleanupUpstreamInterface(Ljava/lang/String;)V
  
73 ····goto·:goto_073 ····goto·:goto_0
  
74 ····.line·122974 ····.line·1221
75 ····:cond_175 ····:cond_1
76 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer$TetheredState;->this$0:Landroid/net/ip/IpServer;76 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer$TetheredState;->this$0:Landroid/net/ip/IpServer;
  
77 ····const/4·v1,·0x077 ····const/4·v1,·0x0
  
78 ····invoke-static·{v0,·v1},·Landroid/net/ip/IpServer;->access$3102(Landroid/net/ip/IpServer;Landroid/net/util/InterfaceSet;)Landroid/net/util/InterfaceSet;78 ····invoke-static·{v0,·v1},·Landroid/net/ip/IpServer;->access$3102(Landroid/net/ip/IpServer;Landroid/net/util/InterfaceSet;)Landroid/net/util/InterfaceSet;
  
79 ····.line·123079 ····.line·1222
80 ····iget-object·p0,·p0,·Landroid/net/ip/IpServer$TetheredState;->this$0:Landroid/net/ip/IpServer;80 ····iget-object·p0,·p0,·Landroid/net/ip/IpServer$TetheredState;->this$0:Landroid/net/ip/IpServer;
  
81 ····invoke-static·{p0},·Landroid/net/ip/IpServer;->access$3200(Landroid/net/ip/IpServer;)V81 ····invoke-static·{p0},·Landroid/net/ip/IpServer;->access$3200(Landroid/net/ip/IpServer;)V
  
82 ····return-void82 ····return-void
83 .end·method83 .end·method
  
84 .method·private·cleanupUpstreamInterface(Ljava/lang/String;)V84 .method·private·cleanupUpstreamInterface(Ljava/lang/String;)V
85 ····.locals·485 ····.locals·4
  
86 ····.line·123986 ····.line·1231
87 ····:try_start_087 ····:try_start_0
88 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer$TetheredState;->this$0:Landroid/net/ip/IpServer;88 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer$TetheredState;->this$0:Landroid/net/ip/IpServer;
  
89 ····invoke-static·{v0},·Landroid/net/ip/IpServer;->access$2100(Landroid/net/ip/IpServer;)Landroid/net/INetd;89 ····invoke-static·{v0},·Landroid/net/ip/IpServer;->access$2100(Landroid/net/ip/IpServer;)Landroid/net/INetd;
  
90 ····move-result-object·v090 ····move-result-object·v0
  
Offset 114, 15 lines modifiedOffset 114, 15 lines modified
114 ····.catch·Landroid/os/ServiceSpecificException;·{:try_start_0·..·:try_end_0}·:catch_0114 ····.catch·Landroid/os/ServiceSpecificException;·{:try_start_0·..·:try_end_0}·:catch_0
  
115 ····goto·:goto_0115 ····goto·:goto_0
  
116 ····:catch_0116 ····:catch_0
117 ····move-exception·v0117 ····move-exception·v0
  
118 ····.line·1241118 ····.line·1233
119 ····iget-object·v1,·p0,·Landroid/net/ip/IpServer$TetheredState;->this$0:Landroid/net/ip/IpServer;119 ····iget-object·v1,·p0,·Landroid/net/ip/IpServer$TetheredState;->this$0:Landroid/net/ip/IpServer;
  
120 ····invoke-static·{v1},·Landroid/net/ip/IpServer;->access$400(Landroid/net/ip/IpServer;)Landroid/net/util/SharedLog;120 ····invoke-static·{v1},·Landroid/net/ip/IpServer;->access$400(Landroid/net/ip/IpServer;)Landroid/net/util/SharedLog;
  
121 ····move-result-object·v1121 ····move-result-object·v1
  
122 ····new-instance·v2,·Ljava/lang/StringBuilder;122 ····new-instance·v2,·Ljava/lang/StringBuilder;
Offset 141, 15 lines modifiedOffset 141, 15 lines modified
  
141 ····invoke-virtual·{v2},·Ljava/lang/StringBuilder;->toString()Ljava/lang/String;141 ····invoke-virtual·{v2},·Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
  
142 ····move-result-object·v0142 ····move-result-object·v0
  
143 ····invoke-virtual·{v1,·v0},·Landroid/net/util/SharedLog;->e(Ljava/lang/String;)V143 ····invoke-virtual·{v1,·v0},·Landroid/net/util/SharedLog;->e(Ljava/lang/String;)V
  
144 ····.line·1244144 ····.line·1236
145 ····:goto_0145 ····:goto_0
146 ····:try_start_1146 ····:try_start_1
147 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer$TetheredState;->this$0:Landroid/net/ip/IpServer;147 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer$TetheredState;->this$0:Landroid/net/ip/IpServer;
  
148 ····invoke-static·{v0},·Landroid/net/ip/IpServer;->access$2100(Landroid/net/ip/IpServer;)Landroid/net/INetd;148 ····invoke-static·{v0},·Landroid/net/ip/IpServer;->access$2100(Landroid/net/ip/IpServer;)Landroid/net/INetd;
  
149 ····move-result-object·v0149 ····move-result-object·v0
Offset 166, 15 lines modifiedOffset 166, 15 lines modified
166 ····.catch·Landroid/os/ServiceSpecificException;·{:try_start_1·..·:try_end_1}·:catch_1166 ····.catch·Landroid/os/ServiceSpecificException;·{:try_start_1·..·:try_end_1}·:catch_1
  
167 ····goto·:goto_1167 ····goto·:goto_1
  
168 ····:catch_1168 ····:catch_1
169 ····move-exception·p1169 ····move-exception·p1
  
170 ····.line·1246170 ····.line·1238
171 ····iget-object·p0,·p0,·Landroid/net/ip/IpServer$TetheredState;->this$0:Landroid/net/ip/IpServer;171 ····iget-object·p0,·p0,·Landroid/net/ip/IpServer$TetheredState;->this$0:Landroid/net/ip/IpServer;
  
172 ····invoke-static·{p0},·Landroid/net/ip/IpServer;->access$400(Landroid/net/ip/IpServer;)Landroid/net/util/SharedLog;172 ····invoke-static·{p0},·Landroid/net/ip/IpServer;->access$400(Landroid/net/ip/IpServer;)Landroid/net/util/SharedLog;
  
173 ····move-result-object·p0173 ····move-result-object·p0
  
174 ····new-instance·v0,·Ljava/lang/StringBuilder;174 ····new-instance·v0,·Ljava/lang/StringBuilder;
Offset 200, 42 lines modifiedOffset 200, 42 lines modified
200 ····:goto_1200 ····:goto_1
201 ····return-void201 ····return-void
202 .end·method202 .end·method
  
203 .method·private·noChangeInUpstreamIfaceSet(Landroid/net/util/InterfaceSet;)Z203 .method·private·noChangeInUpstreamIfaceSet(Landroid/net/util/InterfaceSet;)Z
204 ····.locals·1204 ····.locals·1
... Open expanded diff ...
2.88 KB
smali/android/net/ip/IpServer$LocalHotspotState.smali
    
Offset 18, 97 lines modifiedOffset 18, 97 lines modified
18 .field·final·synthetic·this$0:Landroid/net/ip/IpServer;18 .field·final·synthetic·this$0:Landroid/net/ip/IpServer;
  
  
19 #·direct·methods19 #·direct·methods
20 .method·constructor·<init>(Landroid/net/ip/IpServer;)V20 .method·constructor·<init>(Landroid/net/ip/IpServer;)V
21 ····.locals·021 ····.locals·0
  
22 ····.line·117122 ····.line·1163
23 ····iput-object·p1,·p0,·Landroid/net/ip/IpServer$LocalHotspotState;->this$0:Landroid/net/ip/IpServer;23 ····iput-object·p1,·p0,·Landroid/net/ip/IpServer$LocalHotspotState;->this$0:Landroid/net/ip/IpServer;
  
24 ····invoke-direct·{p0,·p1},·Landroid/net/ip/IpServer$BaseServingState;-><init>(Landroid/net/ip/IpServer;)V24 ····invoke-direct·{p0,·p1},·Landroid/net/ip/IpServer$BaseServingState;-><init>(Landroid/net/ip/IpServer;)V
  
25 ····return-void25 ····return-void
26 .end·method26 .end·method
  
  
27 #·virtual·methods27 #·virtual·methods
28 .method·public·enter()V28 .method·public·enter()V
29 ····.locals·229 ····.locals·2
  
30 ····.line·117430 ····.line·1166
31 ····invoke-super·{p0},·Landroid/net/ip/IpServer$BaseServingState;->enter()V31 ····invoke-super·{p0},·Landroid/net/ip/IpServer$BaseServingState;->enter()V
  
32 ····.line·117532 ····.line·1167
33 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer$LocalHotspotState;->this$0:Landroid/net/ip/IpServer;33 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer$LocalHotspotState;->this$0:Landroid/net/ip/IpServer;
  
34 ····invoke-static·{v0},·Landroid/net/ip/IpServer;->access$100(Landroid/net/ip/IpServer;)I34 ····invoke-static·{v0},·Landroid/net/ip/IpServer;->access$100(Landroid/net/ip/IpServer;)I
  
35 ····move-result·v035 ····move-result·v0
  
36 ····if-eqz·v0,·:cond_036 ····if-eqz·v0,·:cond_0
  
37 ····.line·117637 ····.line·1168
38 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer$LocalHotspotState;->this$0:Landroid/net/ip/IpServer;38 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer$LocalHotspotState;->this$0:Landroid/net/ip/IpServer;
  
39 ····invoke-static·{v0},·Landroid/net/ip/IpServer;->access$200(Landroid/net/ip/IpServer;)Lcom/android/networkstack/tethering/util/State;39 ····invoke-static·{v0},·Landroid/net/ip/IpServer;->access$200(Landroid/net/ip/IpServer;)Lcom/android/networkstack/tethering/util/State;
  
40 ····move-result-object·v140 ····move-result-object·v1
  
41 ····invoke-virtual·{v0,·v1},·Lcom/android/networkstack/tethering/util/StateMachine;->transitionTo(Lcom/android/networkstack/tethering/util/IState;)V41 ····invoke-virtual·{v0,·v1},·Lcom/android/networkstack/tethering/util/StateMachine;->transitionTo(Lcom/android/networkstack/tethering/util/IState;)V
  
42 ····.line·118042 ····.line·1172
43 ····:cond_043 ····:cond_0
44 ····iget-object·p0,·p0,·Landroid/net/ip/IpServer$LocalHotspotState;->this$0:Landroid/net/ip/IpServer;44 ····iget-object·p0,·p0,·Landroid/net/ip/IpServer$LocalHotspotState;->this$0:Landroid/net/ip/IpServer;
  
45 ····const/4·v0,·0x345 ····const/4·v0,·0x3
  
46 ····invoke-static·{p0,·v0},·Landroid/net/ip/IpServer;->access$1300(Landroid/net/ip/IpServer;I)V46 ····invoke-static·{p0,·v0},·Landroid/net/ip/IpServer;->access$1300(Landroid/net/ip/IpServer;I)V
  
47 ····return-void47 ····return-void
48 .end·method48 .end·method
  
49 .method·public·processMessage(Landroid/os/Message;)Z49 .method·public·processMessage(Landroid/os/Message;)Z
50 ····.locals·350 ····.locals·3
  
51 ····.line·118551 ····.line·1177
52 ····invoke-super·{p0,·p1},·Landroid/net/ip/IpServer$BaseServingState;->processMessage(Landroid/os/Message;)Z52 ····invoke-super·{p0,·p1},·Landroid/net/ip/IpServer$BaseServingState;->processMessage(Landroid/os/Message;)Z
  
53 ····move-result·v053 ····move-result·v0
  
54 ····const/4·v1,·0x154 ····const/4·v1,·0x1
  
55 ····if-eqz·v0,·:cond_055 ····if-eqz·v0,·:cond_0
  
56 ····return·v156 ····return·v1
  
57 ····.line·118757 ····.line·1179
58 ····:cond_058 ····:cond_0
59 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer$LocalHotspotState;->this$0:Landroid/net/ip/IpServer;59 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer$LocalHotspotState;->this$0:Landroid/net/ip/IpServer;
  
60 ····iget·v2,·p1,·Landroid/os/Message;->what:I60 ····iget·v2,·p1,·Landroid/os/Message;->what:I
  
61 ····invoke-static·{v0,·p0,·v2},·Landroid/net/ip/IpServer;->access$1400(Landroid/net/ip/IpServer;Lcom/android/networkstack/tethering/util/State;I)V61 ····invoke-static·{v0,·p0,·v2},·Landroid/net/ip/IpServer;->access$1400(Landroid/net/ip/IpServer;Lcom/android/networkstack/tethering/util/State;I)V
  
62 ····.line·118862 ····.line·1180
63 ····iget·p1,·p1,·Landroid/os/Message;->what:I63 ····iget·p1,·p1,·Landroid/os/Message;->what:I
  
64 ····const/16·v0,·0x6564 ····const/16·v0,·0x65
  
65 ····if-eq·p1,·v0,·:cond_165 ····if-eq·p1,·v0,·:cond_1
  
66 ····const/16·p0,·0x6d66 ····const/16·p0,·0x6d
  
67 ····if-eq·p1,·p0,·:cond_267 ····if-eq·p1,·p0,·:cond_2
  
68 ····const/4·p0,·0x068 ····const/4·p0,·0x0
  
69 ····return·p069 ····return·p0
  
70 ····.line·119070 ····.line·1182
71 ····:cond_171 ····:cond_1
72 ····iget-object·p0,·p0,·Landroid/net/ip/IpServer$LocalHotspotState;->this$0:Landroid/net/ip/IpServer;72 ····iget-object·p0,·p0,·Landroid/net/ip/IpServer$LocalHotspotState;->this$0:Landroid/net/ip/IpServer;
  
73 ····invoke-static·{p0},·Landroid/net/ip/IpServer;->access$400(Landroid/net/ip/IpServer;)Landroid/net/util/SharedLog;73 ····invoke-static·{p0},·Landroid/net/ip/IpServer;->access$400(Landroid/net/ip/IpServer;)Landroid/net/util/SharedLog;
  
74 ····move-result-object·p074 ····move-result-object·p0
  
2.46 KB
smali/android/net/ip/IpServer$DhcpServerCallbacksImpl$1.smali
    
Offset 1, 15 lines modifiedOffset 1, 15 lines modified
1 .class·Landroid/net/ip/IpServer$DhcpServerCallbacksImpl$1;1 .class·Landroid/net/ip/IpServer$DhcpServerCallbacksImpl$1;
2 .super·Landroid/net/ip/IpServer$OnHandlerStatusCallback;2 .super·Landroid/net/ip/IpServer$OnHandlerStatusCallback;
3 .source·"IpServer.java"3 .source·"IpServer.java"
  
  
4 #·annotations4 #·annotations
5 .annotation·system·Ldalvik/annotation/EnclosingMethod;5 .annotation·system·Ldalvik/annotation/EnclosingMethod;
6 ····value·=·Landroid/net/ip/IpServer$DhcpServerCallbacksImpl;->lambda$onDhcpServerCreated$0(Landroid/net/dhcp/IDhcpServer;I)V6 ····value·=·Landroid/net/ip/IpServer$DhcpServerCallbacksImpl;->lambda$onDhcpServerCreated$0(ILandroid/net/dhcp/IDhcpServer;)V
7 .end·annotation7 .end·annotation
  
8 .annotation·system·Ldalvik/annotation/InnerClass;8 .annotation·system·Ldalvik/annotation/InnerClass;
9 ····accessFlags·=·0x09 ····accessFlags·=·0x0
10 ····name·=·null10 ····name·=·null
11 .end·annotation11 .end·annotation
  
Offset 18, 15 lines modifiedOffset 18, 15 lines modified
18 .field·final·synthetic·this$1:Landroid/net/ip/IpServer$DhcpServerCallbacksImpl;18 .field·final·synthetic·this$1:Landroid/net/ip/IpServer$DhcpServerCallbacksImpl;
  
  
19 #·direct·methods19 #·direct·methods
20 .method·constructor·<init>(Landroid/net/ip/IpServer$DhcpServerCallbacksImpl;)V20 .method·constructor·<init>(Landroid/net/ip/IpServer$DhcpServerCallbacksImpl;)V
21 ····.locals·121 ····.locals·1
  
22 ····.line·44822 ····.line·440
23 ····iput-object·p1,·p0,·Landroid/net/ip/IpServer$DhcpServerCallbacksImpl$1;->this$1:Landroid/net/ip/IpServer$DhcpServerCallbacksImpl;23 ····iput-object·p1,·p0,·Landroid/net/ip/IpServer$DhcpServerCallbacksImpl$1;->this$1:Landroid/net/ip/IpServer$DhcpServerCallbacksImpl;
  
24 ····iget-object·p1,·p1,·Landroid/net/ip/IpServer$DhcpServerCallbacksImpl;->this$0:Landroid/net/ip/IpServer;24 ····iget-object·p1,·p1,·Landroid/net/ip/IpServer$DhcpServerCallbacksImpl;->this$0:Landroid/net/ip/IpServer;
  
25 ····const/4·v0,·0x025 ····const/4·v0,·0x0
  
26 ····invoke-direct·{p0,·p1,·v0},·Landroid/net/ip/IpServer$OnHandlerStatusCallback;-><init>(Landroid/net/ip/IpServer;Landroid/net/ip/IpServer$1;)V26 ····invoke-direct·{p0,·p1,·v0},·Landroid/net/ip/IpServer$OnHandlerStatusCallback;-><init>(Landroid/net/ip/IpServer;Landroid/net/ip/IpServer$1;)V
Offset 39, 15 lines modifiedOffset 39, 15 lines modified
39 .method·public·callback(I)V39 .method·public·callback(I)V
40 ····.locals·340 ····.locals·3
  
41 ····const/4·v0,·0x141 ····const/4·v0,·0x1
  
42 ····if-eq·p1,·v0,·:cond_042 ····if-eq·p1,·v0,·:cond_0
  
43 ····.line·45243 ····.line·444
44 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer$DhcpServerCallbacksImpl$1;->this$1:Landroid/net/ip/IpServer$DhcpServerCallbacksImpl;44 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer$DhcpServerCallbacksImpl$1;->this$1:Landroid/net/ip/IpServer$DhcpServerCallbacksImpl;
  
45 ····iget-object·v0,·v0,·Landroid/net/ip/IpServer$DhcpServerCallbacksImpl;->this$0:Landroid/net/ip/IpServer;45 ····iget-object·v0,·v0,·Landroid/net/ip/IpServer$DhcpServerCallbacksImpl;->this$0:Landroid/net/ip/IpServer;
  
46 ····invoke-static·{v0},·Landroid/net/ip/IpServer;->access$400(Landroid/net/ip/IpServer;)Landroid/net/util/SharedLog;46 ····invoke-static·{v0},·Landroid/net/ip/IpServer;->access$400(Landroid/net/ip/IpServer;)Landroid/net/util/SharedLog;
  
47 ····move-result-object·v047 ····move-result-object·v0
Offset 64, 15 lines modifiedOffset 64, 15 lines modified
  
64 ····invoke-virtual·{v1},·Ljava/lang/StringBuilder;->toString()Ljava/lang/String;64 ····invoke-virtual·{v1},·Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
  
65 ····move-result-object·p165 ····move-result-object·p1
  
66 ····invoke-virtual·{v0,·p1},·Landroid/net/util/SharedLog;->e(Ljava/lang/String;)V66 ····invoke-virtual·{v0,·p1},·Landroid/net/util/SharedLog;->e(Ljava/lang/String;)V
  
67 ····.line·45367 ····.line·445
68 ····iget-object·p0,·p0,·Landroid/net/ip/IpServer$DhcpServerCallbacksImpl$1;->this$1:Landroid/net/ip/IpServer$DhcpServerCallbacksImpl;68 ····iget-object·p0,·p0,·Landroid/net/ip/IpServer$DhcpServerCallbacksImpl$1;->this$1:Landroid/net/ip/IpServer$DhcpServerCallbacksImpl;
  
69 ····invoke-static·{p0},·Landroid/net/ip/IpServer$DhcpServerCallbacksImpl;->access$700(Landroid/net/ip/IpServer$DhcpServerCallbacksImpl;)V69 ····invoke-static·{p0},·Landroid/net/ip/IpServer$DhcpServerCallbacksImpl;->access$700(Landroid/net/ip/IpServer$DhcpServerCallbacksImpl;)V
  
70 ····:cond_070 ····:cond_0
71 ····return-void71 ····return-void
72 .end·method72 .end·method
65.2 KB
smali/android/net/ip/IpServer.smali
    
Offset 173, 92 lines modifiedOffset 173, 92 lines modified
  
173 ····return-void173 ····return-void
174 .end·method174 .end·method
  
175 .method·public·constructor·<init>(Ljava/lang/String;Landroid/os/Looper;ILandroid/net/util/SharedLog;Landroid/net/INetd;Lcom/android/networkstack/tethering/BpfCoordinator;Landroid/net/ip/IpServer$Callback;ZZLcom/android/networkstack/tethering/PrivateAddressCoordinator;Landroid/net/ip/IpServer$Dependencies;)V175 .method·public·constructor·<init>(Ljava/lang/String;Landroid/os/Looper;ILandroid/net/util/SharedLog;Landroid/net/INetd;Lcom/android/networkstack/tethering/BpfCoordinator;Landroid/net/ip/IpServer$Callback;ZZLcom/android/networkstack/tethering/PrivateAddressCoordinator;Landroid/net/ip/IpServer$Dependencies;)V
176 ····.locals·1176 ····.locals·1
  
177 ····.line·290177 ····.line·286
178 ····invoke-direct·{p0,·p1,·p2},·Lcom/android/networkstack/tethering/util/StateMachine;-><init>(Ljava/lang/String;Landroid/os/Looper;)V178 ····invoke-direct·{p0,·p1,·p2},·Lcom/android/networkstack/tethering/util/StateMachine;-><init>(Ljava/lang/String;Landroid/os/Looper;)V
  
179 ····const/4·p2,·0x0179 ····const/4·p2,·0x0
  
180 ····.line·261180 ····.line·257
181 ····iput·p2,·p0,·Landroid/net/ip/IpServer;->mDhcpServerStartIndex:I181 ····iput·p2,·p0,·Landroid/net/ip/IpServer;->mDhcpServerStartIndex:I
  
182 ····.line·269182 ····.line·265
183 ····invoke-static·{},·Ljava/util/Collections;->emptyList()Ljava/util/List;183 ····invoke-static·{},·Ljava/util/Collections;->emptyList()Ljava/util/List;
  
184 ····move-result-object·v0184 ····move-result-object·v0
  
185 ····iput-object·v0,·p0,·Landroid/net/ip/IpServer;->mDhcpLeases:Ljava/util/List;185 ····iput-object·v0,·p0,·Landroid/net/ip/IpServer;->mDhcpLeases:Ljava/util/List;
  
186 ····.line·271186 ····.line·267
187 ····iput·p2,·p0,·Landroid/net/ip/IpServer;->mLastIPv6UpstreamIfindex:I187 ····iput·p2,·p0,·Landroid/net/ip/IpServer;->mLastIPv6UpstreamIfindex:I
  
188 ····.line·291188 ····.line·287
189 ····invoke-virtual·{p4,·p1},·Landroid/net/util/SharedLog;->forSubComponent(Ljava/lang/String;)Landroid/net/util/SharedLog;189 ····invoke-virtual·{p4,·p1},·Landroid/net/util/SharedLog;->forSubComponent(Ljava/lang/String;)Landroid/net/util/SharedLog;
  
190 ····move-result-object·p4190 ····move-result-object·p4
  
191 ····iput-object·p4,·p0,·Landroid/net/ip/IpServer;->mLog:Landroid/net/util/SharedLog;191 ····iput-object·p4,·p0,·Landroid/net/ip/IpServer;->mLog:Landroid/net/util/SharedLog;
  
192 ····.line·292192 ····.line·288
193 ····iput-object·p5,·p0,·Landroid/net/ip/IpServer;->mNetd:Landroid/net/INetd;193 ····iput-object·p5,·p0,·Landroid/net/ip/IpServer;->mNetd:Landroid/net/INetd;
  
194 ····.line·293194 ····.line·289
195 ····iput-object·p6,·p0,·Landroid/net/ip/IpServer;->mBpfCoordinator:Lcom/android/networkstack/tethering/BpfCoordinator;195 ····iput-object·p6,·p0,·Landroid/net/ip/IpServer;->mBpfCoordinator:Lcom/android/networkstack/tethering/BpfCoordinator;
  
196 ····.line·294196 ····.line·290
197 ····iput-object·p7,·p0,·Landroid/net/ip/IpServer;->mCallback:Landroid/net/ip/IpServer$Callback;197 ····iput-object·p7,·p0,·Landroid/net/ip/IpServer;->mCallback:Landroid/net/ip/IpServer$Callback;
  
198 ····.line·295198 ····.line·291
199 ····new-instance·p6,·Landroid/net/ip/InterfaceController;199 ····new-instance·p6,·Landroid/net/ip/InterfaceController;
  
200 ····invoke-direct·{p6,·p1,·p5,·p4},·Landroid/net/ip/InterfaceController;-><init>(Ljava/lang/String;Landroid/net/INetd;Landroid/net/util/SharedLog;)V200 ····invoke-direct·{p6,·p1,·p5,·p4},·Landroid/net/ip/InterfaceController;-><init>(Ljava/lang/String;Landroid/net/INetd;Landroid/net/util/SharedLog;)V
  
201 ····iput-object·p6,·p0,·Landroid/net/ip/IpServer;->mInterfaceCtrl:Landroid/net/ip/InterfaceController;201 ····iput-object·p6,·p0,·Landroid/net/ip/IpServer;->mInterfaceCtrl:Landroid/net/ip/InterfaceController;
  
202 ····.line·296202 ····.line·292
203 ····iput-object·p1,·p0,·Landroid/net/ip/IpServer;->mIfaceName:Ljava/lang/String;203 ····iput-object·p1,·p0,·Landroid/net/ip/IpServer;->mIfaceName:Ljava/lang/String;
  
204 ····.line·297204 ····.line·293
205 ····iput·p3,·p0,·Landroid/net/ip/IpServer;->mInterfaceType:I205 ····iput·p3,·p0,·Landroid/net/ip/IpServer;->mInterfaceType:I
  
206 ····.line·298206 ····.line·294
207 ····new-instance·p1,·Landroid/net/LinkProperties;207 ····new-instance·p1,·Landroid/net/LinkProperties;
  
208 ····invoke-direct·{p1},·Landroid/net/LinkProperties;-><init>()V208 ····invoke-direct·{p1},·Landroid/net/LinkProperties;-><init>()V
  
209 ····iput-object·p1,·p0,·Landroid/net/ip/IpServer;->mLinkProperties:Landroid/net/LinkProperties;209 ····iput-object·p1,·p0,·Landroid/net/ip/IpServer;->mLinkProperties:Landroid/net/LinkProperties;
  
210 ····.line·299210 ····.line·295
211 ····iput-boolean·p8,·p0,·Landroid/net/ip/IpServer;->mUsingLegacyDhcp:Z211 ····iput-boolean·p8,·p0,·Landroid/net/ip/IpServer;->mUsingLegacyDhcp:Z
  
212 ····.line·300212 ····.line·296
213 ····iput-boolean·p9,·p0,·Landroid/net/ip/IpServer;->mUsingBpfOffload:Z213 ····iput-boolean·p9,·p0,·Landroid/net/ip/IpServer;->mUsingBpfOffload:Z
  
214 ····.line·301214 ····.line·297
215 ····iput-object·p10,·p0,·Landroid/net/ip/IpServer;->mPrivateAddressCoordinator:Lcom/android/networkstack/tethering/PrivateAddressCoordinator;215 ····iput-object·p10,·p0,·Landroid/net/ip/IpServer;->mPrivateAddressCoordinator:Lcom/android/networkstack/tethering/PrivateAddressCoordinator;
  
216 ····.line·302216 ····.line·298
217 ····iput-object·p11,·p0,·Landroid/net/ip/IpServer;->mDeps:Landroid/net/ip/IpServer$Dependencies;217 ····iput-object·p11,·p0,·Landroid/net/ip/IpServer;->mDeps:Landroid/net/ip/IpServer$Dependencies;
  
218 ····.line·303218 ····.line·299
219 ····invoke-direct·{p0},·Landroid/net/ip/IpServer;->resetLinkProperties()V219 ····invoke-direct·{p0},·Landroid/net/ip/IpServer;->resetLinkProperties()V
  
220 ····.line·304220 ····.line·300
221 ····iput·p2,·p0,·Landroid/net/ip/IpServer;->mLastError:I221 ····iput·p2,·p0,·Landroid/net/ip/IpServer;->mLastError:I
  
222 ····const/4·p1,·0x1222 ····const/4·p1,·0x1
  
223 ····.line·305223 ····.line·301
224 ····iput·p1,·p0,·Landroid/net/ip/IpServer;->mServingMode:I224 ····iput·p1,·p0,·Landroid/net/ip/IpServer;->mServingMode:I
  
225 ····.line·307225 ····.line·303
226 ····iget-object·p1,·p0,·Landroid/net/ip/IpServer;->mDeps:Landroid/net/ip/IpServer$Dependencies;226 ····iget-object·p1,·p0,·Landroid/net/ip/IpServer;->mDeps:Landroid/net/ip/IpServer$Dependencies;
  
227 ····invoke-virtual·{p0},·Lcom/android/networkstack/tethering/util/StateMachine;->getHandler()Landroid/os/Handler;227 ····invoke-virtual·{p0},·Lcom/android/networkstack/tethering/util/StateMachine;->getHandler()Landroid/os/Handler;
  
228 ····move-result-object·p2228 ····move-result-object·p2
  
229 ····iget-object·p3,·p0,·Landroid/net/ip/IpServer;->mLog:Landroid/net/util/SharedLog;229 ····iget-object·p3,·p0,·Landroid/net/ip/IpServer;->mLog:Landroid/net/util/SharedLog;
Offset 271, 26 lines modifiedOffset 271, 26 lines modified
  
271 ····invoke-virtual·{p1,·p2,·p3,·p4},·Landroid/net/ip/IpServer$Dependencies;->getIpNeighborMonitor(Landroid/os/Handler;Landroid/net/util/SharedLog;Landroid/net/ip/IpNeighborMonitor$NeighborEventConsumer;)Landroid/net/ip/IpNeighborMonitor;271 ····invoke-virtual·{p1,·p2,·p3,·p4},·Landroid/net/ip/IpServer$Dependencies;->getIpNeighborMonitor(Landroid/os/Handler;Landroid/net/util/SharedLog;Landroid/net/ip/IpNeighborMonitor$NeighborEventConsumer;)Landroid/net/ip/IpNeighborMonitor;
  
272 ····move-result-object·p1272 ····move-result-object·p1
  
273 ····iput-object·p1,·p0,·Landroid/net/ip/IpServer;->mIpNeighborMonitor:Landroid/net/ip/IpNeighborMonitor;273 ····iput-object·p1,·p0,·Landroid/net/ip/IpServer;->mIpNeighborMonitor:Landroid/net/ip/IpNeighborMonitor;
  
274 ····.line·314274 ····.line·310
275 ····iget-boolean·p2,·p0,·Landroid/net/ip/IpServer;->mUsingBpfOffload:Z275 ····iget-boolean·p2,·p0,·Landroid/net/ip/IpServer;->mUsingBpfOffload:Z
  
276 ····if-eqz·p2,·:cond_0276 ····if-eqz·p2,·:cond_0
  
277 ····invoke-virtual·{p1},·Landroid/net/util/FdEventsReader;->start()Z277 ····invoke-virtual·{p1},·Landroid/net/util/FdEventsReader;->start()Z
  
278 ····move-result·p1278 ····move-result·p1
  
279 ····if-nez·p1,·:cond_0279 ····if-nez·p1,·:cond_0
  
280 ····.line·315280 ····.line·311
281 ····iget-object·p1,·p0,·Landroid/net/ip/IpServer;->mLog:Landroid/net/util/SharedLog;281 ····iget-object·p1,·p0,·Landroid/net/ip/IpServer;->mLog:Landroid/net/util/SharedLog;
  
282 ····new-instance·p2,·Ljava/lang/StringBuilder;282 ····new-instance·p2,·Ljava/lang/StringBuilder;
  
283 ····invoke-direct·{p2},·Ljava/lang/StringBuilder;-><init>()V283 ····invoke-direct·{p2},·Ljava/lang/StringBuilder;-><init>()V
  
284 ····const-string·p3,·"Failed·to·create·IpNeighborMonitor·on·"284 ····const-string·p3,·"Failed·to·create·IpNeighborMonitor·on·"
Offset 303, 78 lines modifiedOffset 303, 78 lines modified
  
303 ····invoke-virtual·{p2},·Ljava/lang/StringBuilder;->toString()Ljava/lang/String;303 ····invoke-virtual·{p2},·Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
  
304 ····move-result-object·p2304 ····move-result-object·p2
  
305 ····invoke-virtual·{p1,·p2},·Landroid/net/util/SharedLog;->e(Ljava/lang/String;)V305 ····invoke-virtual·{p1,·p2},·Landroid/net/util/SharedLog;->e(Ljava/lang/String;)V
  
... Open expanded diff (truncated) ...
6.57 KB
smali/android/net/ip/IpServer$DhcpEventCallback.smali
    
Offset 18, 40 lines modifiedOffset 18, 40 lines modified
18 .field·final·synthetic·this$0:Landroid/net/ip/IpServer;18 .field·final·synthetic·this$0:Landroid/net/ip/IpServer;
  
  
19 #·direct·methods19 #·direct·methods
20 .method·private·constructor·<init>(Landroid/net/ip/IpServer;)V20 .method·private·constructor·<init>(Landroid/net/ip/IpServer;)V
21 ····.locals·021 ····.locals·0
  
22 ····.line·46922 ····.line·461
23 ····iput-object·p1,·p0,·Landroid/net/ip/IpServer$DhcpEventCallback;->this$0:Landroid/net/ip/IpServer;23 ····iput-object·p1,·p0,·Landroid/net/ip/IpServer$DhcpEventCallback;->this$0:Landroid/net/ip/IpServer;
  
24 ····invoke-direct·{p0},·Landroid/net/dhcp/IDhcpEventCallbacks$Stub;-><init>()V24 ····invoke-direct·{p0},·Landroid/net/dhcp/IDhcpEventCallbacks$Stub;-><init>()V
  
25 ····return-void25 ····return-void
26 .end·method26 .end·method
  
27 .method·synthetic·constructor·<init>(Landroid/net/ip/IpServer;Landroid/net/ip/IpServer$1;)V27 .method·synthetic·constructor·<init>(Landroid/net/ip/IpServer;Landroid/net/ip/IpServer$1;)V
28 ····.locals·028 ····.locals·0
  
29 ····.line·46929 ····.line·461
30 ····invoke-direct·{p0,·p1},·Landroid/net/ip/IpServer$DhcpEventCallback;-><init>(Landroid/net/ip/IpServer;)V30 ····invoke-direct·{p0,·p1},·Landroid/net/ip/IpServer$DhcpEventCallback;-><init>(Landroid/net/ip/IpServer;)V
  
31 ····return-void31 ····return-void
32 .end·method32 .end·method
  
33 .method·private·synthetic·lambda$onLeasesChanged$0(Ljava/util/ArrayList;)V33 .method·private·synthetic·lambda$onLeasesChanged$0(Ljava/util/ArrayList;)V
34 ····.locals·134 ····.locals·1
  
35 ····.line·49735 ····.line·489
36 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer$DhcpEventCallback;->this$0:Landroid/net/ip/IpServer;36 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer$DhcpEventCallback;->this$0:Landroid/net/ip/IpServer;
  
37 ····invoke-static·{v0,·p1},·Landroid/net/ip/IpServer;->access$1002(Landroid/net/ip/IpServer;Ljava/util/List;)Ljava/util/List;37 ····invoke-static·{v0,·p1},·Landroid/net/ip/IpServer;->access$1002(Landroid/net/ip/IpServer;Ljava/util/List;)Ljava/util/List;
  
38 ····.line·49838 ····.line·490
39 ····iget-object·p0,·p0,·Landroid/net/ip/IpServer$DhcpEventCallback;->this$0:Landroid/net/ip/IpServer;39 ····iget-object·p0,·p0,·Landroid/net/ip/IpServer$DhcpEventCallback;->this$0:Landroid/net/ip/IpServer;
  
40 ····invoke-static·{p0},·Landroid/net/ip/IpServer;->access$1100(Landroid/net/ip/IpServer;)Landroid/net/ip/IpServer$Callback;40 ····invoke-static·{p0},·Landroid/net/ip/IpServer;->access$1100(Landroid/net/ip/IpServer;)Landroid/net/ip/IpServer$Callback;
  
41 ····move-result-object·p041 ····move-result-object·p0
  
42 ····invoke-virtual·{p0},·Landroid/net/ip/IpServer$Callback;->dhcpLeasesChanged()V42 ····invoke-virtual·{p0},·Landroid/net/ip/IpServer$Callback;->dhcpLeasesChanged()V
Offset 65, 23 lines modifiedOffset 65, 23 lines modified
65 ····.locals·065 ····.locals·0
66 ····.annotation·system·Ldalvik/annotation/Throws;66 ····.annotation·system·Ldalvik/annotation/Throws;
67 ········value·=·{67 ········value·=·{
68 ············Landroid/os/RemoteException;68 ············Landroid/os/RemoteException;
69 ········}69 ········}
70 ····.end·annotation70 ····.end·annotation
  
71 ····const-string·p0,·"f6e2137b5033902774f78726d429399db3b18cab"71 ····const-string·p0,·"02cd6fd07d5c04eca0c35a350f7b0be576242883"
  
72 ····return-object·p072 ····return-object·p0
73 .end·method73 .end·method
  
74 .method·public·getInterfaceVersion()I74 .method·public·getInterfaceVersion()I
75 ····.locals·075 ····.locals·0
  
76 ····const/16·p0,·0x876 ····const/4·p0,·0x7
  
77 ····return·p077 ····return·p0
78 .end·method78 .end·method
  
79 .method·public·synthetic·lambda$onLeasesChanged$0$IpServer$DhcpEventCallback(Ljava/util/ArrayList;)V79 .method·public·synthetic·lambda$onLeasesChanged$0$IpServer$DhcpEventCallback(Ljava/util/ArrayList;)V
80 ····.locals·080 ····.locals·0
  
Offset 97, 20 lines modifiedOffset 97, 20 lines modified
97 ············"(",97 ············"(",
98 ············"Ljava/util/List<",98 ············"Ljava/util/List<",
99 ············"Landroid/net/dhcp/DhcpLeaseParcelable;",99 ············"Landroid/net/dhcp/DhcpLeaseParcelable;",
100 ············">;)V"100 ············">;)V"
101 ········}101 ········}
102 ····.end·annotation102 ····.end·annotation
  
103 ····.line·472103 ····.line·464
104 ····new-instance·v0,·Ljava/util/ArrayList;104 ····new-instance·v0,·Ljava/util/ArrayList;
  
105 ····invoke-direct·{v0},·Ljava/util/ArrayList;-><init>()V105 ····invoke-direct·{v0},·Ljava/util/ArrayList;-><init>()V
  
106 ····.line·473106 ····.line·465
107 ····invoke-interface·{p1},·Ljava/util/List;->iterator()Ljava/util/Iterator;107 ····invoke-interface·{p1},·Ljava/util/List;->iterator()Ljava/util/Iterator;
  
108 ····move-result-object·p1108 ····move-result-object·p1
  
109 ····:goto_0109 ····:goto_0
110 ····invoke-interface·{p1},·Ljava/util/Iterator;->hasNext()Z110 ····invoke-interface·{p1},·Ljava/util/Iterator;->hasNext()Z
  
Offset 120, 20 lines modifiedOffset 120, 20 lines modified
  
120 ····invoke-interface·{p1},·Ljava/util/Iterator;->next()Ljava/lang/Object;120 ····invoke-interface·{p1},·Ljava/util/Iterator;->next()Ljava/lang/Object;
  
121 ····move-result-object·v1121 ····move-result-object·v1
  
122 ····check-cast·v1,·Landroid/net/dhcp/DhcpLeaseParcelable;122 ····check-cast·v1,·Landroid/net/dhcp/DhcpLeaseParcelable;
  
123 ····.line·474123 ····.line·466
124 ····new-instance·v11,·Landroid/net/LinkAddress;124 ····new-instance·v11,·Landroid/net/LinkAddress;
  
125 ····iget·v2,·v1,·Landroid/net/dhcp/DhcpLeaseParcelable;->netAddr:I125 ····iget·v2,·v1,·Landroid/net/dhcp/DhcpLeaseParcelable;->netAddr:I
  
126 ····.line·475126 ····.line·467
127 ····invoke-static·{v2},·Lcom/android/networkstack/tethering/util/Inet4AddressUtils;->intToInet4AddressHTH(I)Ljava/net/Inet4Address;127 ····invoke-static·{v2},·Lcom/android/networkstack/tethering/util/Inet4AddressUtils;->intToInet4AddressHTH(I)Ljava/net/Inet4Address;
  
128 ····move-result-object·v3128 ····move-result-object·v3
  
129 ····iget·v4,·v1,·Landroid/net/dhcp/DhcpLeaseParcelable;->prefixLength:I129 ····iget·v4,·v1,·Landroid/net/dhcp/DhcpLeaseParcelable;->prefixLength:I
  
130 ····const/4·v5,·0x0130 ····const/4·v5,·0x0
Offset 144, 84 lines modifiedOffset 144, 84 lines modified
  
144 ····move-object·v2,·v11144 ····move-object·v2,·v11
  
145 ····move-wide·v7,·v9145 ····move-wide·v7,·v9
  
146 ····invoke-direct/range·{v2·..·v10},·Landroid/net/LinkAddress;-><init>(Ljava/net/InetAddress;IIIJJ)V146 ····invoke-direct/range·{v2·..·v10},·Landroid/net/LinkAddress;-><init>(Ljava/net/InetAddress;IIIJJ)V
  
147 ····.line·481147 ····.line·473
148 ····:try_start_0148 ····:try_start_0
149 ····iget-object·v2,·v1,·Landroid/net/dhcp/DhcpLeaseParcelable;->hwAddr:[B149 ····iget-object·v2,·v1,·Landroid/net/dhcp/DhcpLeaseParcelable;->hwAddr:[B
  
150 ····invoke-static·{v2},·Landroid/net/MacAddress;->fromBytes([B)Landroid/net/MacAddress;150 ····invoke-static·{v2},·Landroid/net/MacAddress;->fromBytes([B)Landroid/net/MacAddress;
  
151 ····move-result-object·v2151 ····move-result-object·v2
152 ····:try_end_0152 ····:try_end_0
153 ····.catch·Ljava/lang/IllegalArgumentException;·{:try_start_0·..·:try_end_0}·:catch_0153 ····.catch·Ljava/lang/IllegalArgumentException;·{:try_start_0·..·:try_end_0}·:catch_0
  
154 ····.line·488154 ····.line·480
155 ····new-instance·v3,·Landroid/net/TetheredClient$AddressInfo;155 ····new-instance·v3,·Landroid/net/TetheredClient$AddressInfo;
  
... Open expanded diff ...
2.08 KB
smali/android/net/ip/IpServer$OnHandlerStatusCallback.smali
    
Offset 18, 57 lines modifiedOffset 18, 57 lines modified
18 .field·final·synthetic·this$0:Landroid/net/ip/IpServer;18 .field·final·synthetic·this$0:Landroid/net/ip/IpServer;
  
  
19 #·direct·methods19 #·direct·methods
20 .method·private·constructor·<init>(Landroid/net/ip/IpServer;)V20 .method·private·constructor·<init>(Landroid/net/ip/IpServer;)V
21 ····.locals·021 ····.locals·0
  
22 ····.line·39922 ····.line·395
23 ····iput-object·p1,·p0,·Landroid/net/ip/IpServer$OnHandlerStatusCallback;->this$0:Landroid/net/ip/IpServer;23 ····iput-object·p1,·p0,·Landroid/net/ip/IpServer$OnHandlerStatusCallback;->this$0:Landroid/net/ip/IpServer;
  
24 ····invoke-direct·{p0},·Landroid/net/INetworkStackStatusCallback$Stub;-><init>()V24 ····invoke-direct·{p0},·Landroid/net/INetworkStackStatusCallback$Stub;-><init>()V
  
25 ····return-void25 ····return-void
26 .end·method26 .end·method
  
27 .method·synthetic·constructor·<init>(Landroid/net/ip/IpServer;Landroid/net/ip/IpServer$1;)V27 .method·synthetic·constructor·<init>(Landroid/net/ip/IpServer;Landroid/net/ip/IpServer$1;)V
28 ····.locals·028 ····.locals·0
  
29 ····.line·39929 ····.line·395
30 ····invoke-direct·{p0,·p1},·Landroid/net/ip/IpServer$OnHandlerStatusCallback;-><init>(Landroid/net/ip/IpServer;)V30 ····invoke-direct·{p0,·p1},·Landroid/net/ip/IpServer$OnHandlerStatusCallback;-><init>(Landroid/net/ip/IpServer;)V
  
31 ····return-void31 ····return-void
32 .end·method32 .end·method
  
33 .method·private·synthetic·lambda$onStatusAvailable$0(I)V33 .method·private·synthetic·lambda$onStatusAvailable$0(I)V
34 ····.locals·034 ····.locals·0
  
35 ····.line·40235 ····.line·398
36 ····invoke-virtual·{p0,·p1},·Landroid/net/ip/IpServer$OnHandlerStatusCallback;->callback(I)V36 ····invoke-virtual·{p0,·p1},·Landroid/net/ip/IpServer$OnHandlerStatusCallback;->callback(I)V
  
37 ····return-void37 ····return-void
38 .end·method38 .end·method
  
  
39 #·virtual·methods39 #·virtual·methods
40 .method·public·abstract·callback(I)V40 .method·public·abstract·callback(I)V
41 .end·method41 .end·method
  
42 .method·public·getInterfaceHash()Ljava/lang/String;42 .method·public·getInterfaceHash()Ljava/lang/String;
43 ····.locals·043 ····.locals·0
  
44 ····const-string·p0,·"f6e2137b5033902774f78726d429399db3b18cab"44 ····const-string·p0,·"02cd6fd07d5c04eca0c35a350f7b0be576242883"
  
45 ····return-object·p045 ····return-object·p0
46 .end·method46 .end·method
  
47 .method·public·getInterfaceVersion()I47 .method·public·getInterfaceVersion()I
48 ····.locals·048 ····.locals·0
  
49 ····const/16·p0,·0x849 ····const/4·p0,·0x7
  
50 ····return·p050 ····return·p0
51 .end·method51 .end·method
  
52 .method·public·synthetic·lambda$onStatusAvailable$0$IpServer$OnHandlerStatusCallback(I)V52 .method·public·synthetic·lambda$onStatusAvailable$0$IpServer$OnHandlerStatusCallback(I)V
53 ····.locals·053 ····.locals·0
  
Offset 76, 15 lines modifiedOffset 76, 15 lines modified
  
76 ····return-void76 ····return-void
77 .end·method77 .end·method
  
78 .method·public·onStatusAvailable(I)V78 .method·public·onStatusAvailable(I)V
79 ····.locals·279 ····.locals·2
  
80 ····.line·40280 ····.line·398
81 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer$OnHandlerStatusCallback;->this$0:Landroid/net/ip/IpServer;81 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer$OnHandlerStatusCallback;->this$0:Landroid/net/ip/IpServer;
  
82 ····invoke-virtual·{v0},·Lcom/android/networkstack/tethering/util/StateMachine;->getHandler()Landroid/os/Handler;82 ····invoke-virtual·{v0},·Lcom/android/networkstack/tethering/util/StateMachine;->getHandler()Landroid/os/Handler;
  
83 ····move-result-object·v083 ····move-result-object·v0
  
84 ····new-instance·v1,·Landroid/net/ip/-$$Lambda$IpServer$OnHandlerStatusCallback$czoKoFz-ZQJY8J5O14qT9czTIoo;84 ····new-instance·v1,·Landroid/net/ip/-$$Lambda$IpServer$OnHandlerStatusCallback$czoKoFz-ZQJY8J5O14qT9czTIoo;
1.44 KB
smali/android/net/ip/IpServer$UnavailableState.smali
    
Offset 18, 43 lines modifiedOffset 18, 43 lines modified
18 .field·final·synthetic·this$0:Landroid/net/ip/IpServer;18 .field·final·synthetic·this$0:Landroid/net/ip/IpServer;
  
  
19 #·direct·methods19 #·direct·methods
20 .method·constructor·<init>(Landroid/net/ip/IpServer;)V20 .method·constructor·<init>(Landroid/net/ip/IpServer;)V
21 ····.locals·021 ····.locals·0
  
22 ····.line·133222 ····.line·1324
23 ····iput-object·p1,·p0,·Landroid/net/ip/IpServer$UnavailableState;->this$0:Landroid/net/ip/IpServer;23 ····iput-object·p1,·p0,·Landroid/net/ip/IpServer$UnavailableState;->this$0:Landroid/net/ip/IpServer;
  
24 ····invoke-direct·{p0},·Lcom/android/networkstack/tethering/util/State;-><init>()V24 ····invoke-direct·{p0},·Lcom/android/networkstack/tethering/util/State;-><init>()V
  
25 ····return-void25 ····return-void
26 .end·method26 .end·method
  
  
27 #·virtual·methods27 #·virtual·methods
28 .method·public·enter()V28 .method·public·enter()V
29 ····.locals·229 ····.locals·2
  
30 ····.line·133530 ····.line·1327
31 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer$UnavailableState;->this$0:Landroid/net/ip/IpServer;31 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer$UnavailableState;->this$0:Landroid/net/ip/IpServer;
  
32 ····invoke-static·{v0},·Landroid/net/ip/IpServer;->access$3400(Landroid/net/ip/IpServer;)Landroid/net/ip/IpNeighborMonitor;32 ····invoke-static·{v0},·Landroid/net/ip/IpServer;->access$3400(Landroid/net/ip/IpServer;)Landroid/net/ip/IpNeighborMonitor;
  
33 ····move-result-object·v033 ····move-result-object·v0
  
34 ····invoke-virtual·{v0},·Landroid/net/util/FdEventsReader;->stop()V34 ····invoke-virtual·{v0},·Landroid/net/util/FdEventsReader;->stop()V
  
35 ····.line·133635 ····.line·1328
36 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer$UnavailableState;->this$0:Landroid/net/ip/IpServer;36 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer$UnavailableState;->this$0:Landroid/net/ip/IpServer;
  
37 ····const/4·v1,·0x037 ····const/4·v1,·0x0
  
38 ····invoke-static·{v0,·v1},·Landroid/net/ip/IpServer;->access$102(Landroid/net/ip/IpServer;I)I38 ····invoke-static·{v0,·v1},·Landroid/net/ip/IpServer;->access$102(Landroid/net/ip/IpServer;I)I
  
39 ····.line·133739 ····.line·1329
40 ····iget-object·p0,·p0,·Landroid/net/ip/IpServer$UnavailableState;->this$0:Landroid/net/ip/IpServer;40 ····iget-object·p0,·p0,·Landroid/net/ip/IpServer$UnavailableState;->this$0:Landroid/net/ip/IpServer;
  
41 ····invoke-static·{p0,·v1},·Landroid/net/ip/IpServer;->access$1300(Landroid/net/ip/IpServer;I)V41 ····invoke-static·{p0,·v1},·Landroid/net/ip/IpServer;->access$1300(Landroid/net/ip/IpServer;I)V
  
42 ····return-void42 ····return-void
43 .end·method43 .end·method
4.18 KB
smali/android/net/ip/IpServer$WaitingForRestartState.smali
    
Offset 18, 35 lines modifiedOffset 18, 35 lines modified
18 .field·final·synthetic·this$0:Landroid/net/ip/IpServer;18 .field·final·synthetic·this$0:Landroid/net/ip/IpServer;
  
  
19 #·direct·methods19 #·direct·methods
20 .method·constructor·<init>(Landroid/net/ip/IpServer;)V20 .method·constructor·<init>(Landroid/net/ip/IpServer;)V
21 ····.locals·021 ····.locals·0
  
22 ····.line·134122 ····.line·1333
23 ····iput-object·p1,·p0,·Landroid/net/ip/IpServer$WaitingForRestartState;->this$0:Landroid/net/ip/IpServer;23 ····iput-object·p1,·p0,·Landroid/net/ip/IpServer$WaitingForRestartState;->this$0:Landroid/net/ip/IpServer;
  
24 ····invoke-direct·{p0},·Lcom/android/networkstack/tethering/util/State;-><init>()V24 ····invoke-direct·{p0},·Lcom/android/networkstack/tethering/util/State;-><init>()V
  
25 ····return-void25 ····return-void
26 .end·method26 .end·method
  
  
27 #·virtual·methods27 #·virtual·methods
28 .method·public·processMessage(Landroid/os/Message;)Z28 .method·public·processMessage(Landroid/os/Message;)Z
29 ····.locals·329 ····.locals·3
  
30 ····.line·134430 ····.line·1336
31 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer$WaitingForRestartState;->this$0:Landroid/net/ip/IpServer;31 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer$WaitingForRestartState;->this$0:Landroid/net/ip/IpServer;
  
32 ····iget·v1,·p1,·Landroid/os/Message;->what:I32 ····iget·v1,·p1,·Landroid/os/Message;->what:I
  
33 ····invoke-static·{v0,·p0,·v1},·Landroid/net/ip/IpServer;->access$1400(Landroid/net/ip/IpServer;Lcom/android/networkstack/tethering/util/State;I)V33 ····invoke-static·{v0,·p0,·v1},·Landroid/net/ip/IpServer;->access$1400(Landroid/net/ip/IpServer;Lcom/android/networkstack/tethering/util/State;I)V
  
34 ····.line·134534 ····.line·1337
35 ····iget·p1,·p1,·Landroid/os/Message;->what:I35 ····iget·p1,·p1,·Landroid/os/Message;->what:I
  
36 ····const/16·v0,·0x6636 ····const/16·v0,·0x66
  
37 ····const/4·v1,·0x137 ····const/4·v1,·0x1
  
38 ····if-eq·p1,·v0,·:cond_138 ····if-eq·p1,·v0,·:cond_1
Offset 55, 25 lines modifiedOffset 55, 25 lines modified
  
55 ····if-eq·p1,·v0,·:cond_055 ····if-eq·p1,·v0,·:cond_0
  
56 ····const/4·p0,·0x056 ····const/4·p0,·0x0
  
57 ····return·p057 ····return·p0
  
58 ····.line·135258 ····.line·1344
59 ····:cond_059 ····:cond_0
60 ····iget-object·p1,·p0,·Landroid/net/ip/IpServer$WaitingForRestartState;->this$0:Landroid/net/ip/IpServer;60 ····iget-object·p1,·p0,·Landroid/net/ip/IpServer$WaitingForRestartState;->this$0:Landroid/net/ip/IpServer;
  
61 ····invoke-static·{p1},·Landroid/net/ip/IpServer;->access$1800(Landroid/net/ip/IpServer;)Lcom/android/networkstack/tethering/util/State;61 ····invoke-static·{p1},·Landroid/net/ip/IpServer;->access$1800(Landroid/net/ip/IpServer;)Lcom/android/networkstack/tethering/util/State;
  
62 ····move-result-object·v062 ····move-result-object·v0
  
63 ····invoke-virtual·{p1,·v0},·Lcom/android/networkstack/tethering/util/StateMachine;->transitionTo(Lcom/android/networkstack/tethering/util/IState;)V63 ····invoke-virtual·{p1,·v0},·Lcom/android/networkstack/tethering/util/StateMachine;->transitionTo(Lcom/android/networkstack/tethering/util/IState;)V
  
64 ····.line·135364 ····.line·1345
65 ····iget-object·p1,·p0,·Landroid/net/ip/IpServer$WaitingForRestartState;->this$0:Landroid/net/ip/IpServer;65 ····iget-object·p1,·p0,·Landroid/net/ip/IpServer$WaitingForRestartState;->this$0:Landroid/net/ip/IpServer;
  
66 ····invoke-static·{p1},·Landroid/net/ip/IpServer;->access$400(Landroid/net/ip/IpServer;)Landroid/net/util/SharedLog;66 ····invoke-static·{p1},·Landroid/net/ip/IpServer;->access$400(Landroid/net/ip/IpServer;)Landroid/net/util/SharedLog;
  
67 ····move-result-object·p167 ····move-result-object·p1
  
68 ····new-instance·v0,·Ljava/lang/StringBuilder;68 ····new-instance·v0,·Ljava/lang/StringBuilder;
Offset 94, 15 lines modifiedOffset 94, 15 lines modified
  
94 ····invoke-virtual·{v0},·Ljava/lang/StringBuilder;->toString()Ljava/lang/String;94 ····invoke-virtual·{v0},·Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
  
95 ····move-result-object·v095 ····move-result-object·v0
  
96 ····invoke-virtual·{p1,·v0},·Landroid/net/util/SharedLog;->i(Ljava/lang/String;)V96 ····invoke-virtual·{p1,·v0},·Landroid/net/util/SharedLog;->i(Ljava/lang/String;)V
  
97 ····.line·135497 ····.line·1346
98 ····iget-object·p1,·p0,·Landroid/net/ip/IpServer$WaitingForRestartState;->this$0:Landroid/net/ip/IpServer;98 ····iget-object·p1,·p0,·Landroid/net/ip/IpServer$WaitingForRestartState;->this$0:Landroid/net/ip/IpServer;
  
99 ····invoke-static·{p1},·Landroid/net/ip/IpServer;->access$1100(Landroid/net/ip/IpServer;)Landroid/net/ip/IpServer$Callback;99 ····invoke-static·{p1},·Landroid/net/ip/IpServer;->access$1100(Landroid/net/ip/IpServer;)Landroid/net/ip/IpServer$Callback;
  
100 ····move-result-object·p1100 ····move-result-object·p1
  
101 ····iget-object·p0,·p0,·Landroid/net/ip/IpServer$WaitingForRestartState;->this$0:Landroid/net/ip/IpServer;101 ····iget-object·p0,·p0,·Landroid/net/ip/IpServer$WaitingForRestartState;->this$0:Landroid/net/ip/IpServer;
Offset 111, 25 lines modifiedOffset 111, 25 lines modified
  
111 ····move-result·p0111 ····move-result·p0
  
112 ····invoke-virtual·{p1,·p0,·v1},·Landroid/net/ip/IpServer$Callback;->requestEnableTethering(IZ)V112 ····invoke-virtual·{p1,·p0,·v1},·Landroid/net/ip/IpServer$Callback;->requestEnableTethering(IZ)V
  
113 ····goto·:goto_0113 ····goto·:goto_0
  
114 ····.line·1347114 ····.line·1339
115 ····:cond_1115 ····:cond_1
116 ····iget-object·p1,·p0,·Landroid/net/ip/IpServer$WaitingForRestartState;->this$0:Landroid/net/ip/IpServer;116 ····iget-object·p1,·p0,·Landroid/net/ip/IpServer$WaitingForRestartState;->this$0:Landroid/net/ip/IpServer;
  
117 ····invoke-static·{p1},·Landroid/net/ip/IpServer;->access$200(Landroid/net/ip/IpServer;)Lcom/android/networkstack/tethering/util/State;117 ····invoke-static·{p1},·Landroid/net/ip/IpServer;->access$200(Landroid/net/ip/IpServer;)Lcom/android/networkstack/tethering/util/State;
  
118 ····move-result-object·v0118 ····move-result-object·v0
  
119 ····invoke-virtual·{p1,·v0},·Lcom/android/networkstack/tethering/util/StateMachine;->transitionTo(Lcom/android/networkstack/tethering/util/IState;)V119 ····invoke-virtual·{p1,·v0},·Lcom/android/networkstack/tethering/util/StateMachine;->transitionTo(Lcom/android/networkstack/tethering/util/IState;)V
  
120 ····.line·1348120 ····.line·1340
121 ····iget-object·p1,·p0,·Landroid/net/ip/IpServer$WaitingForRestartState;->this$0:Landroid/net/ip/IpServer;121 ····iget-object·p1,·p0,·Landroid/net/ip/IpServer$WaitingForRestartState;->this$0:Landroid/net/ip/IpServer;
  
122 ····invoke-static·{p1},·Landroid/net/ip/IpServer;->access$400(Landroid/net/ip/IpServer;)Landroid/net/util/SharedLog;122 ····invoke-static·{p1},·Landroid/net/ip/IpServer;->access$400(Landroid/net/ip/IpServer;)Landroid/net/util/SharedLog;
  
123 ····move-result-object·p1123 ····move-result-object·p1
  
124 ····new-instance·v0,·Ljava/lang/StringBuilder;124 ····new-instance·v0,·Ljava/lang/StringBuilder;
Offset 150, 15 lines modifiedOffset 150, 15 lines modified
  
150 ····invoke-virtual·{v0},·Ljava/lang/StringBuilder;->toString()Ljava/lang/String;150 ····invoke-virtual·{v0},·Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
  
151 ····move-result-object·v0151 ····move-result-object·v0
  
152 ····invoke-virtual·{p1,·v0},·Landroid/net/util/SharedLog;->i(Ljava/lang/String;)V152 ····invoke-virtual·{p1,·v0},·Landroid/net/util/SharedLog;->i(Ljava/lang/String;)V
  
153 ····.line·1349153 ····.line·1341
154 ····iget-object·p1,·p0,·Landroid/net/ip/IpServer$WaitingForRestartState;->this$0:Landroid/net/ip/IpServer;154 ····iget-object·p1,·p0,·Landroid/net/ip/IpServer$WaitingForRestartState;->this$0:Landroid/net/ip/IpServer;
  
155 ····invoke-static·{p1},·Landroid/net/ip/IpServer;->access$1100(Landroid/net/ip/IpServer;)Landroid/net/ip/IpServer$Callback;155 ····invoke-static·{p1},·Landroid/net/ip/IpServer;->access$1100(Landroid/net/ip/IpServer;)Landroid/net/ip/IpServer$Callback;
  
156 ····move-result-object·p1156 ····move-result-object·p1
  
157 ····iget-object·p0,·p0,·Landroid/net/ip/IpServer$WaitingForRestartState;->this$0:Landroid/net/ip/IpServer;157 ····iget-object·p0,·p0,·Landroid/net/ip/IpServer$WaitingForRestartState;->this$0:Landroid/net/ip/IpServer;
987 B
smali/android/net/ip/IpServer$2.smali
    
Offset 18, 15 lines modifiedOffset 18, 15 lines modified
18 .field·final·synthetic·this$0:Landroid/net/ip/IpServer;18 .field·final·synthetic·this$0:Landroid/net/ip/IpServer;
  
  
19 #·direct·methods19 #·direct·methods
20 .method·constructor·<init>(Landroid/net/ip/IpServer;)V20 .method·constructor·<init>(Landroid/net/ip/IpServer;)V
21 ····.locals·121 ····.locals·1
  
22 ····.line·97122 ····.line·963
23 ····iput-object·p1,·p0,·Landroid/net/ip/IpServer$2;->this$0:Landroid/net/ip/IpServer;23 ····iput-object·p1,·p0,·Landroid/net/ip/IpServer$2;->this$0:Landroid/net/ip/IpServer;
  
24 ····const/4·v0,·0x024 ····const/4·v0,·0x0
  
25 ····invoke-direct·{p0,·p1,·v0},·Landroid/net/ip/IpServer$OnHandlerStatusCallback;-><init>(Landroid/net/ip/IpServer;Landroid/net/ip/IpServer$1;)V25 ····invoke-direct·{p0,·p1,·v0},·Landroid/net/ip/IpServer$OnHandlerStatusCallback;-><init>(Landroid/net/ip/IpServer;Landroid/net/ip/IpServer$1;)V
  
26 ····return-void26 ····return-void
Offset 37, 15 lines modifiedOffset 37, 15 lines modified
37 .method·public·callback(I)V37 .method·public·callback(I)V
38 ····.locals·238 ····.locals·2
  
39 ····const/4·v0,·0x139 ····const/4·v0,·0x1
  
40 ····if-eq·p1,·v0,·:cond_040 ····if-eq·p1,·v0,·:cond_0
  
41 ····.line·97541 ····.line·967
42 ····iget-object·p0,·p0,·Landroid/net/ip/IpServer$2;->this$0:Landroid/net/ip/IpServer;42 ····iget-object·p0,·p0,·Landroid/net/ip/IpServer$2;->this$0:Landroid/net/ip/IpServer;
  
43 ····invoke-static·{p0},·Landroid/net/ip/IpServer;->access$400(Landroid/net/ip/IpServer;)Landroid/net/util/SharedLog;43 ····invoke-static·{p0},·Landroid/net/ip/IpServer;->access$400(Landroid/net/ip/IpServer;)Landroid/net/util/SharedLog;
  
44 ····move-result-object·p044 ····move-result-object·p0
  
45 ····new-instance·v0,·Ljava/lang/StringBuilder;45 ····new-instance·v0,·Ljava/lang/StringBuilder;
2.08 KB
smali/android/net/ip/IpServer$1.smali
    
Offset 18, 15 lines modifiedOffset 18, 15 lines modified
18 .field·final·synthetic·this$0:Landroid/net/ip/IpServer;18 .field·final·synthetic·this$0:Landroid/net/ip/IpServer;
  
  
19 #·direct·methods19 #·direct·methods
20 .method·constructor·<init>(Landroid/net/ip/IpServer;)V20 .method·constructor·<init>(Landroid/net/ip/IpServer;)V
21 ····.locals·121 ····.locals·1
  
22 ····.line·56322 ····.line·555
23 ····iput-object·p1,·p0,·Landroid/net/ip/IpServer$1;->this$0:Landroid/net/ip/IpServer;23 ····iput-object·p1,·p0,·Landroid/net/ip/IpServer$1;->this$0:Landroid/net/ip/IpServer;
  
24 ····const/4·v0,·0x024 ····const/4·v0,·0x0
  
25 ····invoke-direct·{p0,·p1,·v0},·Landroid/net/ip/IpServer$OnHandlerStatusCallback;-><init>(Landroid/net/ip/IpServer;Landroid/net/ip/IpServer$1;)V25 ····invoke-direct·{p0,·p1,·v0},·Landroid/net/ip/IpServer$OnHandlerStatusCallback;-><init>(Landroid/net/ip/IpServer;Landroid/net/ip/IpServer$1;)V
  
26 ····return-void26 ····return-void
Offset 37, 15 lines modifiedOffset 37, 15 lines modified
37 .method·public·callback(I)V37 .method·public·callback(I)V
38 ····.locals·338 ····.locals·3
  
39 ····const/4·v0,·0x139 ····const/4·v0,·0x1
  
40 ····if-eq·p1,·v0,·:cond_040 ····if-eq·p1,·v0,·:cond_0
  
41 ····.line·56741 ····.line·559
42 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer$1;->this$0:Landroid/net/ip/IpServer;42 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer$1;->this$0:Landroid/net/ip/IpServer;
  
43 ····invoke-static·{v0},·Landroid/net/ip/IpServer;->access$400(Landroid/net/ip/IpServer;)Landroid/net/util/SharedLog;43 ····invoke-static·{v0},·Landroid/net/ip/IpServer;->access$400(Landroid/net/ip/IpServer;)Landroid/net/util/SharedLog;
  
44 ····move-result-object·v044 ····move-result-object·v0
  
45 ····new-instance·v1,·Ljava/lang/StringBuilder;45 ····new-instance·v1,·Ljava/lang/StringBuilder;
Offset 60, 32 lines modifiedOffset 60, 32 lines modified
  
60 ····invoke-virtual·{v1},·Ljava/lang/StringBuilder;->toString()Ljava/lang/String;60 ····invoke-virtual·{v1},·Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
  
61 ····move-result-object·p161 ····move-result-object·p1
  
62 ····invoke-virtual·{v0,·p1},·Landroid/net/util/SharedLog;->e(Ljava/lang/String;)V62 ····invoke-virtual·{v0,·p1},·Landroid/net/util/SharedLog;->e(Ljava/lang/String;)V
  
63 ····.line·56863 ····.line·560
64 ····iget-object·p1,·p0,·Landroid/net/ip/IpServer$1;->this$0:Landroid/net/ip/IpServer;64 ····iget-object·p1,·p0,·Landroid/net/ip/IpServer$1;->this$0:Landroid/net/ip/IpServer;
  
65 ····const/16·v0,·0xc65 ····const/16·v0,·0xc
  
66 ····invoke-static·{p1,·v0},·Landroid/net/ip/IpServer;->access$102(Landroid/net/ip/IpServer;I)I66 ····invoke-static·{p1,·v0},·Landroid/net/ip/IpServer;->access$102(Landroid/net/ip/IpServer;I)I
  
67 ····.line·57167 ····.line·563
68 ····:cond_068 ····:cond_0
69 ····iget-object·p1,·p0,·Landroid/net/ip/IpServer$1;->this$0:Landroid/net/ip/IpServer;69 ····iget-object·p1,·p0,·Landroid/net/ip/IpServer$1;->this$0:Landroid/net/ip/IpServer;
  
70 ····invoke-static·{p1},·Landroid/net/ip/IpServer;->access$1000(Landroid/net/ip/IpServer;)Ljava/util/List;70 ····invoke-static·{p1},·Landroid/net/ip/IpServer;->access$1000(Landroid/net/ip/IpServer;)Ljava/util/List;
  
71 ····move-result-object·p171 ····move-result-object·p1
  
72 ····invoke-interface·{p1},·Ljava/util/List;->clear()V72 ····invoke-interface·{p1},·Ljava/util/List;->clear()V
  
73 ····.line·57273 ····.line·564
74 ····iget-object·p1,·p0,·Landroid/net/ip/IpServer$1;->this$0:Landroid/net/ip/IpServer;74 ····iget-object·p1,·p0,·Landroid/net/ip/IpServer$1;->this$0:Landroid/net/ip/IpServer;
  
75 ····invoke-virtual·{p1},·Lcom/android/networkstack/tethering/util/StateMachine;->getHandler()Landroid/os/Handler;75 ····invoke-virtual·{p1},·Lcom/android/networkstack/tethering/util/StateMachine;->getHandler()Landroid/os/Handler;
  
76 ····move-result-object·p176 ····move-result-object·p1
  
77 ····iget-object·p0,·p0,·Landroid/net/ip/IpServer$1;->this$0:Landroid/net/ip/IpServer;77 ····iget-object·p0,·p0,·Landroid/net/ip/IpServer$1;->this$0:Landroid/net/ip/IpServer;
1.21 KB
smali/android/net/ip/IpServer$MyNeighborEventConsumer.smali
    
Offset 21, 37 lines modifiedOffset 21, 37 lines modified
21 .field·final·synthetic·this$0:Landroid/net/ip/IpServer;21 .field·final·synthetic·this$0:Landroid/net/ip/IpServer;
  
  
22 #·direct·methods22 #·direct·methods
23 .method·private·constructor·<init>(Landroid/net/ip/IpServer;)V23 .method·private·constructor·<init>(Landroid/net/ip/IpServer;)V
24 ····.locals·024 ····.locals·0
  
25 ····.line·27325 ····.line·269
26 ····iput-object·p1,·p0,·Landroid/net/ip/IpServer$MyNeighborEventConsumer;->this$0:Landroid/net/ip/IpServer;26 ····iput-object·p1,·p0,·Landroid/net/ip/IpServer$MyNeighborEventConsumer;->this$0:Landroid/net/ip/IpServer;
  
27 ····invoke-direct·{p0},·Ljava/lang/Object;-><init>()V27 ····invoke-direct·{p0},·Ljava/lang/Object;-><init>()V
  
28 ····return-void28 ····return-void
29 .end·method29 .end·method
  
30 .method·synthetic·constructor·<init>(Landroid/net/ip/IpServer;Landroid/net/ip/IpServer$1;)V30 .method·synthetic·constructor·<init>(Landroid/net/ip/IpServer;Landroid/net/ip/IpServer$1;)V
31 ····.locals·031 ····.locals·0
  
32 ····.line·27332 ····.line·269
33 ····invoke-direct·{p0,·p1},·Landroid/net/ip/IpServer$MyNeighborEventConsumer;-><init>(Landroid/net/ip/IpServer;)V33 ····invoke-direct·{p0,·p1},·Landroid/net/ip/IpServer$MyNeighborEventConsumer;-><init>(Landroid/net/ip/IpServer;)V
  
34 ····return-void34 ····return-void
35 .end·method35 .end·method
  
  
36 #·virtual·methods36 #·virtual·methods
37 .method·public·accept(Landroid/net/ip/IpNeighborMonitor$NeighborEvent;)V37 .method·public·accept(Landroid/net/ip/IpNeighborMonitor$NeighborEvent;)V
38 ····.locals·138 ····.locals·1
  
39 ····.line·27539 ····.line·271
40 ····iget-object·p0,·p0,·Landroid/net/ip/IpServer$MyNeighborEventConsumer;->this$0:Landroid/net/ip/IpServer;40 ····iget-object·p0,·p0,·Landroid/net/ip/IpServer$MyNeighborEventConsumer;->this$0:Landroid/net/ip/IpServer;
  
41 ····const/16·v0,·0x6f41 ····const/16·v0,·0x6f
  
42 ····invoke-virtual·{p0,·v0,·p1},·Lcom/android/networkstack/tethering/util/StateMachine;->sendMessage(ILjava/lang/Object;)V42 ····invoke-virtual·{p0,·v0,·p1},·Lcom/android/networkstack/tethering/util/StateMachine;->sendMessage(ILjava/lang/Object;)V
  
43 ····return-void43 ····return-void
8.41 KB
smali/android/net/ip/IpServer$DhcpServerCallbacksImpl.smali
    
Offset 20, 190 lines modifiedOffset 20, 183 lines modified
20 .field·final·synthetic·this$0:Landroid/net/ip/IpServer;20 .field·final·synthetic·this$0:Landroid/net/ip/IpServer;
  
  
21 #·direct·methods21 #·direct·methods
22 .method·private·constructor·<init>(Landroid/net/ip/IpServer;I)V22 .method·private·constructor·<init>(Landroid/net/ip/IpServer;I)V
23 ····.locals·023 ····.locals·0
  
24 ····.line·42124 ····.line·417
25 ····iput-object·p1,·p0,·Landroid/net/ip/IpServer$DhcpServerCallbacksImpl;->this$0:Landroid/net/ip/IpServer;25 ····iput-object·p1,·p0,·Landroid/net/ip/IpServer$DhcpServerCallbacksImpl;->this$0:Landroid/net/ip/IpServer;
  
26 ····invoke-direct·{p0},·Landroid/net/dhcp/DhcpServerCallbacks;-><init>()V26 ····invoke-direct·{p0},·Landroid/net/dhcp/DhcpServerCallbacks;-><init>()V
  
27 ····.line·42227 ····.line·418
28 ····iput·p2,·p0,·Landroid/net/ip/IpServer$DhcpServerCallbacksImpl;->mStartIndex:I28 ····iput·p2,·p0,·Landroid/net/ip/IpServer$DhcpServerCallbacksImpl;->mStartIndex:I
  
29 ····return-void29 ····return-void
30 .end·method30 .end·method
  
31 .method·synthetic·constructor·<init>(Landroid/net/ip/IpServer;ILandroid/net/ip/IpServer$1;)V31 .method·synthetic·constructor·<init>(Landroid/net/ip/IpServer;ILandroid/net/ip/IpServer$1;)V
32 ····.locals·032 ····.locals·0
  
33 ····.line·41833 ····.line·414
34 ····invoke-direct·{p0,·p1,·p2},·Landroid/net/ip/IpServer$DhcpServerCallbacksImpl;-><init>(Landroid/net/ip/IpServer;I)V34 ····invoke-direct·{p0,·p1,·p2},·Landroid/net/ip/IpServer$DhcpServerCallbacksImpl;-><init>(Landroid/net/ip/IpServer;I)V
  
35 ····return-void35 ····return-void
36 .end·method36 .end·method
  
37 .method·static·synthetic·access$700(Landroid/net/ip/IpServer$DhcpServerCallbacksImpl;)V37 .method·static·synthetic·access$700(Landroid/net/ip/IpServer$DhcpServerCallbacksImpl;)V
38 ····.locals·038 ····.locals·0
  
39 ····.line·41839 ····.line·414
40 ····invoke-direct·{p0},·Landroid/net/ip/IpServer$DhcpServerCallbacksImpl;->handleError()V40 ····invoke-direct·{p0},·Landroid/net/ip/IpServer$DhcpServerCallbacksImpl;->handleError()V
  
41 ····return-void41 ····return-void
42 .end·method42 .end·method
  
43 .method·private·handleError()V43 .method·private·handleError()V
44 ····.locals·244 ····.locals·2
  
45 ····.line·46445 ····.line·456
46 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer$DhcpServerCallbacksImpl;->this$0:Landroid/net/ip/IpServer;46 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer$DhcpServerCallbacksImpl;->this$0:Landroid/net/ip/IpServer;
  
47 ····const/16·v1,·0xc47 ····const/16·v1,·0xc
  
48 ····invoke-static·{v0,·v1},·Landroid/net/ip/IpServer;->access$102(Landroid/net/ip/IpServer;I)I48 ····invoke-static·{v0,·v1},·Landroid/net/ip/IpServer;->access$102(Landroid/net/ip/IpServer;I)I
  
49 ····.line·46549 ····.line·457
50 ····iget-object·p0,·p0,·Landroid/net/ip/IpServer$DhcpServerCallbacksImpl;->this$0:Landroid/net/ip/IpServer;50 ····iget-object·p0,·p0,·Landroid/net/ip/IpServer$DhcpServerCallbacksImpl;->this$0:Landroid/net/ip/IpServer;
  
51 ····invoke-static·{p0},·Landroid/net/ip/IpServer;->access$200(Landroid/net/ip/IpServer;)Lcom/android/networkstack/tethering/util/State;51 ····invoke-static·{p0},·Landroid/net/ip/IpServer;->access$200(Landroid/net/ip/IpServer;)Lcom/android/networkstack/tethering/util/State;
  
52 ····move-result-object·v052 ····move-result-object·v0
  
53 ····invoke-virtual·{p0,·v0},·Lcom/android/networkstack/tethering/util/StateMachine;->transitionTo(Lcom/android/networkstack/tethering/util/IState;)V53 ····invoke-virtual·{p0,·v0},·Lcom/android/networkstack/tethering/util/StateMachine;->transitionTo(Lcom/android/networkstack/tethering/util/IState;)V
  
54 ····return-void54 ····return-void
55 .end·method55 .end·method
  
56 .method·private·synthetic·lambda$onDhcpServerCreated$0(Landroid/net/dhcp/IDhcpServer;I)V56 .method·private·synthetic·lambda$onDhcpServerCreated$0(ILandroid/net/dhcp/IDhcpServer;)V
57 ····.locals·357 ····.locals·2
  
58 ····.line·42958 ····.line·425
59 ····iget·v0,·p0,·Landroid/net/ip/IpServer$DhcpServerCallbacksImpl;->mStartIndex:I59 ····iget·v0,·p0,·Landroid/net/ip/IpServer$DhcpServerCallbacksImpl;->mStartIndex:I
  
60 ····iget-object·v1,·p0,·Landroid/net/ip/IpServer$DhcpServerCallbacksImpl;->this$0:Landroid/net/ip/IpServer;60 ····iget-object·v1,·p0,·Landroid/net/ip/IpServer$DhcpServerCallbacksImpl;->this$0:Landroid/net/ip/IpServer;
  
61 ····invoke-static·{v1},·Landroid/net/ip/IpServer;->access$300(Landroid/net/ip/IpServer;)I61 ····invoke-static·{v1},·Landroid/net/ip/IpServer;->access$300(Landroid/net/ip/IpServer;)I
  
62 ····move-result·v162 ····move-result·v1
  
63 ····const/4·v2,·0x0 
  
64 ····if-eq·v0,·v1,·:cond_063 ····if-eq·v0,·v1,·:cond_0
  
65 ····.line·435 
66 ····:try_start_0 
67 ····invoke-interface·{p1,·v2},·Landroid/net/dhcp/IDhcpServer;->stop(Landroid/net/INetworkStackStatusCallback;)V 
68 ····:try_end_0 
69 ····.catch·Landroid/os/RemoteException;·{:try_start_0·..·:try_end_0}·:catch_0 
  
70 ····:catch_0 
71 ····return-void64 ····return-void
  
72 ····:cond_065 ····:cond_0
73 ····const/4·v0,·0x166 ····const/4·v0,·0x1
  
74 ····if-eq·p2,·v0,·:cond_167 ····if-eq·p1,·v0,·:cond_1
  
75 ····.line·44168 ····.line·433
76 ····iget-object·p1,·p0,·Landroid/net/ip/IpServer$DhcpServerCallbacksImpl;->this$0:Landroid/net/ip/IpServer;69 ····iget-object·p2,·p0,·Landroid/net/ip/IpServer$DhcpServerCallbacksImpl;->this$0:Landroid/net/ip/IpServer;
  
77 ····invoke-static·{p1},·Landroid/net/ip/IpServer;->access$400(Landroid/net/ip/IpServer;)Landroid/net/util/SharedLog;70 ····invoke-static·{p2},·Landroid/net/ip/IpServer;->access$400(Landroid/net/ip/IpServer;)Landroid/net/util/SharedLog;
  
78 ····move-result-object·p171 ····move-result-object·p2
  
79 ····new-instance·v0,·Ljava/lang/StringBuilder;72 ····new-instance·v0,·Ljava/lang/StringBuilder;
  
80 ····invoke-direct·{v0},·Ljava/lang/StringBuilder;-><init>()V73 ····invoke-direct·{v0},·Ljava/lang/StringBuilder;-><init>()V
  
81 ····const-string·v1,·"Error·obtaining·DHCP·server:·"74 ····const-string·v1,·"Error·obtaining·DHCP·server:·"
  
82 ····invoke-virtual·{v0,·v1},·Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;75 ····invoke-virtual·{v0,·v1},·Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
  
83 ····invoke-virtual·{v0,·p2},·Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;76 ····invoke-virtual·{v0,·p1},·Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
  
84 ····invoke-virtual·{v0},·Ljava/lang/StringBuilder;->toString()Ljava/lang/String;77 ····invoke-virtual·{v0},·Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
  
85 ····move-result-object·p278 ····move-result-object·p1
  
86 ····invoke-virtual·{p1,·p2},·Landroid/net/util/SharedLog;->e(Ljava/lang/String;)V79 ····invoke-virtual·{p2,·p1},·Landroid/net/util/SharedLog;->e(Ljava/lang/String;)V
  
87 ····.line·44280 ····.line·434
88 ····invoke-direct·{p0},·Landroid/net/ip/IpServer$DhcpServerCallbacksImpl;->handleError()V81 ····invoke-direct·{p0},·Landroid/net/ip/IpServer$DhcpServerCallbacksImpl;->handleError()V
  
89 ····return-void82 ····return-void
  
90 ····.line·44683 ····.line·438
91 ····:cond_184 ····:cond_1
92 ····iget-object·p2,·p0,·Landroid/net/ip/IpServer$DhcpServerCallbacksImpl;->this$0:Landroid/net/ip/IpServer;85 ····iget-object·p1,·p0,·Landroid/net/ip/IpServer$DhcpServerCallbacksImpl;->this$0:Landroid/net/ip/IpServer;
  
93 ····invoke-static·{p2,·p1},·Landroid/net/ip/IpServer;->access$502(Landroid/net/ip/IpServer;Landroid/net/dhcp/IDhcpServer;)Landroid/net/dhcp/IDhcpServer;86 ····invoke-static·{p1,·p2},·Landroid/net/ip/IpServer;->access$502(Landroid/net/ip/IpServer;Landroid/net/dhcp/IDhcpServer;)Landroid/net/dhcp/IDhcpServer;
  
94 ····.line·44887 ····.line·440
95 ····:try_start_188 ····:try_start_0
96 ····iget-object·p1,·p0,·Landroid/net/ip/IpServer$DhcpServerCallbacksImpl;->this$0:Landroid/net/ip/IpServer;89 ····iget-object·p1,·p0,·Landroid/net/ip/IpServer$DhcpServerCallbacksImpl;->this$0:Landroid/net/ip/IpServer;
  
97 ····invoke-static·{p1},·Landroid/net/ip/IpServer;->access$500(Landroid/net/ip/IpServer;)Landroid/net/dhcp/IDhcpServer;90 ····invoke-static·{p1},·Landroid/net/ip/IpServer;->access$500(Landroid/net/ip/IpServer;)Landroid/net/dhcp/IDhcpServer;
... Open expanded diff ...
10.0 KB
smali/android/net/ip/IpServer$BaseServingState.smali
    
Offset 18, 46 lines modifiedOffset 18, 46 lines modified
18 .field·final·synthetic·this$0:Landroid/net/ip/IpServer;18 .field·final·synthetic·this$0:Landroid/net/ip/IpServer;
  
  
19 #·direct·methods19 #·direct·methods
20 .method·constructor·<init>(Landroid/net/ip/IpServer;)V20 .method·constructor·<init>(Landroid/net/ip/IpServer;)V
21 ····.locals·021 ····.locals·0
  
22 ····.line·108522 ····.line·1077
23 ····iput-object·p1,·p0,·Landroid/net/ip/IpServer$BaseServingState;->this$0:Landroid/net/ip/IpServer;23 ····iput-object·p1,·p0,·Landroid/net/ip/IpServer$BaseServingState;->this$0:Landroid/net/ip/IpServer;
  
24 ····invoke-direct·{p0},·Lcom/android/networkstack/tethering/util/State;-><init>()V24 ····invoke-direct·{p0},·Lcom/android/networkstack/tethering/util/State;-><init>()V
  
25 ····return-void25 ····return-void
26 .end·method26 .end·method
  
  
27 #·virtual·methods27 #·virtual·methods
28 .method·public·enter()V28 .method·public·enter()V
29 ····.locals·329 ····.locals·3
  
30 ····.line·108830 ····.line·1080
31 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer$BaseServingState;->this$0:Landroid/net/ip/IpServer;31 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer$BaseServingState;->this$0:Landroid/net/ip/IpServer;
  
32 ····invoke-static·{v0},·Landroid/net/ip/IpServer;->access$2000(Landroid/net/ip/IpServer;)Z32 ····invoke-static·{v0},·Landroid/net/ip/IpServer;->access$2000(Landroid/net/ip/IpServer;)Z
  
33 ····move-result·v033 ····move-result·v0
  
34 ····if-nez·v0,·:cond_034 ····if-nez·v0,·:cond_0
  
35 ····.line·108935 ····.line·1081
36 ····iget-object·p0,·p0,·Landroid/net/ip/IpServer$BaseServingState;->this$0:Landroid/net/ip/IpServer;36 ····iget-object·p0,·p0,·Landroid/net/ip/IpServer$BaseServingState;->this$0:Landroid/net/ip/IpServer;
  
37 ····const/16·v0,·0xa37 ····const/16·v0,·0xa
  
38 ····invoke-static·{p0,·v0},·Landroid/net/ip/IpServer;->access$102(Landroid/net/ip/IpServer;I)I38 ····invoke-static·{p0,·v0},·Landroid/net/ip/IpServer;->access$102(Landroid/net/ip/IpServer;I)I
  
39 ····return-void39 ····return-void
  
40 ····.line·109440 ····.line·1086
41 ····:cond_041 ····:cond_0
42 ····:try_start_042 ····:try_start_0
43 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer$BaseServingState;->this$0:Landroid/net/ip/IpServer;43 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer$BaseServingState;->this$0:Landroid/net/ip/IpServer;
  
44 ····invoke-static·{v0},·Landroid/net/ip/IpServer;->access$2100(Landroid/net/ip/IpServer;)Landroid/net/INetd;44 ····invoke-static·{v0},·Landroid/net/ip/IpServer;->access$2100(Landroid/net/ip/IpServer;)Landroid/net/INetd;
  
45 ····move-result-object·v045 ····move-result-object·v0
Offset 80, 24 lines modifiedOffset 80, 24 lines modified
  
80 ····invoke-static·{v0,·v1,·v2},·Landroid/net/shared/NetdUtils;->tetherInterface(Landroid/net/INetd;Ljava/lang/String;Landroid/net/IpPrefix;)V80 ····invoke-static·{v0,·v1,·v2},·Landroid/net/shared/NetdUtils;->tetherInterface(Landroid/net/INetd;Ljava/lang/String;Landroid/net/IpPrefix;)V
81 ····:try_end_081 ····:try_end_0
82 ····.catch·Landroid/os/RemoteException;·{:try_start_0·..·:try_end_0}·:catch_082 ····.catch·Landroid/os/RemoteException;·{:try_start_0·..·:try_end_0}·:catch_0
83 ····.catch·Landroid/os/ServiceSpecificException;·{:try_start_0·..·:try_end_0}·:catch_083 ····.catch·Landroid/os/ServiceSpecificException;·{:try_start_0·..·:try_end_0}·:catch_0
84 ····.catch·Ljava/lang/IllegalStateException;·{:try_start_0·..·:try_end_0}·:catch_084 ····.catch·Ljava/lang/IllegalStateException;·{:try_start_0·..·:try_end_0}·:catch_0
  
85 ····.line·110185 ····.line·1093
86 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer$BaseServingState;->this$0:Landroid/net/ip/IpServer;86 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer$BaseServingState;->this$0:Landroid/net/ip/IpServer;
  
87 ····invoke-static·{v0},·Landroid/net/ip/IpServer;->access$2400(Landroid/net/ip/IpServer;)Z87 ····invoke-static·{v0},·Landroid/net/ip/IpServer;->access$2400(Landroid/net/ip/IpServer;)Z
  
88 ····move-result·v088 ····move-result·v0
  
89 ····if-nez·v0,·:cond_189 ····if-nez·v0,·:cond_1
  
90 ····.line·110290 ····.line·1094
91 ····iget-object·p0,·p0,·Landroid/net/ip/IpServer$BaseServingState;->this$0:Landroid/net/ip/IpServer;91 ····iget-object·p0,·p0,·Landroid/net/ip/IpServer$BaseServingState;->this$0:Landroid/net/ip/IpServer;
  
92 ····invoke-static·{p0},·Landroid/net/ip/IpServer;->access$400(Landroid/net/ip/IpServer;)Landroid/net/util/SharedLog;92 ····invoke-static·{p0},·Landroid/net/ip/IpServer;->access$400(Landroid/net/ip/IpServer;)Landroid/net/util/SharedLog;
  
93 ····move-result-object·p093 ····move-result-object·p0
  
94 ····const-string·v0,·"Failed·to·startIPv6"94 ····const-string·v0,·"Failed·to·startIPv6"
Offset 106, 44 lines modifiedOffset 106, 44 lines modified
  
106 ····:cond_1106 ····:cond_1
107 ····return-void107 ····return-void
  
108 ····:catch_0108 ····:catch_0
109 ····move-exception·v0109 ····move-exception·v0
  
110 ····.line·1096110 ····.line·1088
111 ····iget-object·v1,·p0,·Landroid/net/ip/IpServer$BaseServingState;->this$0:Landroid/net/ip/IpServer;111 ····iget-object·v1,·p0,·Landroid/net/ip/IpServer$BaseServingState;->this$0:Landroid/net/ip/IpServer;
  
112 ····invoke-static·{v1},·Landroid/net/ip/IpServer;->access$400(Landroid/net/ip/IpServer;)Landroid/net/util/SharedLog;112 ····invoke-static·{v1},·Landroid/net/ip/IpServer;->access$400(Landroid/net/ip/IpServer;)Landroid/net/util/SharedLog;
  
113 ····move-result-object·v1113 ····move-result-object·v1
  
114 ····const-string·v2,·"Error·Tethering"114 ····const-string·v2,·"Error·Tethering"
  
115 ····invoke-virtual·{v1,·v2,·v0},·Landroid/net/util/SharedLog;->e(Ljava/lang/String;Ljava/lang/Throwable;)V115 ····invoke-virtual·{v1,·v2,·v0},·Landroid/net/util/SharedLog;->e(Ljava/lang/String;Ljava/lang/Throwable;)V
  
116 ····.line·1097116 ····.line·1089
117 ····iget-object·p0,·p0,·Landroid/net/ip/IpServer$BaseServingState;->this$0:Landroid/net/ip/IpServer;117 ····iget-object·p0,·p0,·Landroid/net/ip/IpServer$BaseServingState;->this$0:Landroid/net/ip/IpServer;
  
118 ····const/4·v0,·0x6118 ····const/4·v0,·0x6
  
119 ····invoke-static·{p0,·v0},·Landroid/net/ip/IpServer;->access$102(Landroid/net/ip/IpServer;I)I119 ····invoke-static·{p0,·v0},·Landroid/net/ip/IpServer;->access$102(Landroid/net/ip/IpServer;I)I
  
120 ····return-void120 ····return-void
121 .end·method121 .end·method
  
122 .method·public·exit()V122 .method·public·exit()V
123 ····.locals·4123 ····.locals·4
  
124 ····.line·1113124 ····.line·1105
125 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer$BaseServingState;->this$0:Landroid/net/ip/IpServer;125 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer$BaseServingState;->this$0:Landroid/net/ip/IpServer;
  
126 ····invoke-static·{v0},·Landroid/net/ip/IpServer;->access$2500(Landroid/net/ip/IpServer;)V126 ····invoke-static·{v0},·Landroid/net/ip/IpServer;->access$2500(Landroid/net/ip/IpServer;)V
  
127 ····.line·1116127 ····.line·1108
128 ····:try_start_0128 ····:try_start_0
129 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer$BaseServingState;->this$0:Landroid/net/ip/IpServer;129 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer$BaseServingState;->this$0:Landroid/net/ip/IpServer;
  
130 ····invoke-static·{v0},·Landroid/net/ip/IpServer;->access$2100(Landroid/net/ip/IpServer;)Landroid/net/INetd;130 ····invoke-static·{v0},·Landroid/net/ip/IpServer;->access$2100(Landroid/net/ip/IpServer;)Landroid/net/INetd;
  
131 ····move-result-object·v0131 ····move-result-object·v0
  
Offset 159, 22 lines modifiedOffset 159, 22 lines modified
159 ····.catch·Landroid/os/ServiceSpecificException;·{:try_start_0·..·:try_end_0}·:catch_0159 ····.catch·Landroid/os/ServiceSpecificException;·{:try_start_0·..·:try_end_0}·:catch_0
  
160 ····goto·:goto_0160 ····goto·:goto_0
  
161 ····:catch_0161 ····:catch_0
162 ····move-exception·v0162 ····move-exception·v0
  
163 ····.line·1118163 ····.line·1110
164 ····iget-object·v1,·p0,·Landroid/net/ip/IpServer$BaseServingState;->this$0:Landroid/net/ip/IpServer;164 ····iget-object·v1,·p0,·Landroid/net/ip/IpServer$BaseServingState;->this$0:Landroid/net/ip/IpServer;
  
... Open expanded diff ...
1.19 KB
smali/android/net/util/PacketReader.smali
    
Offset 14, 15 lines modifiedOffset 14, 15 lines modified
  
14 #·direct·methods14 #·direct·methods
15 .method·protected·constructor·<init>(Landroid/os/Handler;I)V15 .method·protected·constructor·<init>(Landroid/os/Handler;I)V
16 ····.locals·116 ····.locals·1
  
17 ····const/16·v0,·0x80017 ····const/16·v0,·0x800
  
18 ····.line·4218 ····.line·41
19 ····invoke-static·{p2,·v0},·Ljava/lang/Math;->max(II)I19 ····invoke-static·{p2,·v0},·Ljava/lang/Math;->max(II)I
  
20 ····move-result·p220 ····move-result·p2
  
21 ····new-array·p2,·p2,·[B21 ····new-array·p2,·p2,·[B
  
22 ····invoke-direct·{p0,·p1,·p2},·Landroid/net/util/FdEventsReader;-><init>(Landroid/os/Handler;Ljava/lang/Object;)V22 ····invoke-direct·{p0,·p1,·p2},·Landroid/net/util/FdEventsReader;-><init>(Landroid/os/Handler;Ljava/lang/Object;)V
Offset 36, 15 lines modifiedOffset 36, 15 lines modified
36 ····.locals·036 ····.locals·0
37 ····.annotation·system·Ldalvik/annotation/Throws;37 ····.annotation·system·Ldalvik/annotation/Throws;
38 ········value·=·{38 ········value·=·{
39 ············Ljava/lang/Exception;39 ············Ljava/lang/Exception;
40 ········}40 ········}
41 ····.end·annotation41 ····.end·annotation
  
42 ····.line·3342 ····.line·32
43 ····check-cast·p2,·[B43 ····check-cast·p2,·[B
  
44 ····invoke-virtual·{p0,·p1,·p2},·Landroid/net/util/PacketReader;->readPacket(Ljava/io/FileDescriptor;[B)I44 ····invoke-virtual·{p0,·p1,·p2},·Landroid/net/util/PacketReader;->readPacket(Ljava/io/FileDescriptor;[B)I
  
45 ····move-result·p045 ····move-result·p0
  
46 ····return·p046 ····return·p0
Offset 54, 15 lines modifiedOffset 54, 15 lines modified
54 ····.locals·154 ····.locals·1
55 ····.annotation·system·Ldalvik/annotation/Throws;55 ····.annotation·system·Ldalvik/annotation/Throws;
56 ········value·=·{56 ········value·=·{
57 ············Ljava/lang/Exception;57 ············Ljava/lang/Exception;
58 ········}58 ········}
59 ····.end·annotation59 ····.end·annotation
  
60 ····.line·5860 ····.line·57
61 ····array-length·p0,·p261 ····array-length·p0,·p2
  
62 ····const/4·v0,·0x062 ····const/4·v0,·0x0
  
63 ····invoke-static·{p1,·p2,·v0,·p0},·Landroid/system/Os;->read(Ljava/io/FileDescriptor;[BII)I63 ····invoke-static·{p1,·p2,·v0,·p0},·Landroid/system/Os;->read(Ljava/io/FileDescriptor;[BII)I
  
64 ····move-result·p064 ····move-result·p0
10.9 KB
smali/android/net/util/FdEventsReader.smali
    
Offset 39, 63 lines modifiedOffset 39, 63 lines modified
39 ········value·=·{39 ········value·=·{
40 ············"(",40 ············"(",
41 ············"Landroid/os/Handler;",41 ············"Landroid/os/Handler;",
42 ············"TBufferType;)V"42 ············"TBufferType;)V"
43 ········}43 ········}
44 ····.end·annotation44 ····.end·annotation
  
45 ····.line·9345 ····.line·91
46 ····invoke-direct·{p0},·Ljava/lang/Object;-><init>()V46 ····invoke-direct·{p0},·Ljava/lang/Object;-><init>()V
  
47 ····.line·9447 ····.line·92
48 ····iput-object·p1,·p0,·Landroid/net/util/FdEventsReader;->mHandler:Landroid/os/Handler;48 ····iput-object·p1,·p0,·Landroid/net/util/FdEventsReader;->mHandler:Landroid/os/Handler;
  
49 ····.line·9549 ····.line·93
50 ····invoke-virtual·{p1},·Landroid/os/Handler;->getLooper()Landroid/os/Looper;50 ····invoke-virtual·{p1},·Landroid/os/Handler;->getLooper()Landroid/os/Looper;
  
51 ····move-result-object·p151 ····move-result-object·p1
  
52 ····invoke-virtual·{p1},·Landroid/os/Looper;->getQueue()Landroid/os/MessageQueue;52 ····invoke-virtual·{p1},·Landroid/os/Looper;->getQueue()Landroid/os/MessageQueue;
  
53 ····move-result-object·p153 ····move-result-object·p1
  
54 ····iput-object·p1,·p0,·Landroid/net/util/FdEventsReader;->mQueue:Landroid/os/MessageQueue;54 ····iput-object·p1,·p0,·Landroid/net/util/FdEventsReader;->mQueue:Landroid/os/MessageQueue;
  
55 ····.line·9655 ····.line·94
56 ····iput-object·p2,·p0,·Landroid/net/util/FdEventsReader;->mBuffer:Ljava/lang/Object;56 ····iput-object·p2,·p0,·Landroid/net/util/FdEventsReader;->mBuffer:Ljava/lang/Object;
  
57 ····return-void57 ····return-void
58 .end·method58 .end·method
  
59 .method·protected·static·closeFd(Ljava/io/FileDescriptor;)V59 .method·protected·static·closeFd(Ljava/io/FileDescriptor;)V
60 ····.locals·060 ····.locals·0
  
61 ····.line·8861 ····.line·86
62 ····:try_start_062 ····:try_start_0
63 ····invoke-static·{p0},·Landroid/net/util/SocketUtils;->closeSocket(Ljava/io/FileDescriptor;)V63 ····invoke-static·{p0},·Landroid/net/util/SocketUtils;->closeSocket(Ljava/io/FileDescriptor;)V
64 ····:try_end_064 ····:try_end_0
65 ····.catch·Ljava/io/IOException;·{:try_start_0·..·:try_end_0}·:catch_065 ····.catch·Ljava/io/IOException;·{:try_start_0·..·:try_end_0}·:catch_0
  
66 ····:catch_066 ····:catch_0
67 ····return-void67 ····return-void
68 .end·method68 .end·method
  
69 .method·private·createAndRegisterFd()Z69 .method·private·createAndRegisterFd()Z
70 ····.locals·570 ····.locals·5
  
71 ····.line·18671 ····.line·184
72 ····iget-object·v0,·p0,·Landroid/net/util/FdEventsReader;->mFd:Ljava/io/FileDescriptor;72 ····iget-object·v0,·p0,·Landroid/net/util/FdEventsReader;->mFd:Ljava/io/FileDescriptor;
  
73 ····const/4·v1,·0x173 ····const/4·v1,·0x1
  
74 ····if-eqz·v0,·:cond_074 ····if-eqz·v0,·:cond_0
  
75 ····return·v175 ····return·v1
  
76 ····.line·18976 ····.line·187
77 ····:cond_077 ····:cond_0
78 ····:try_start_078 ····:try_start_0
79 ····invoke-virtual·{p0},·Landroid/net/util/FdEventsReader;->createFd()Ljava/io/FileDescriptor;79 ····invoke-virtual·{p0},·Landroid/net/util/FdEventsReader;->createFd()Ljava/io/FileDescriptor;
  
80 ····move-result-object·v080 ····move-result-object·v0
  
81 ····iput-object·v0,·p0,·Landroid/net/util/FdEventsReader;->mFd:Ljava/io/FileDescriptor;81 ····iput-object·v0,·p0,·Landroid/net/util/FdEventsReader;->mFd:Ljava/io/FileDescriptor;
Offset 105, 38 lines modifiedOffset 105, 38 lines modified
105 ····goto·:goto_0105 ····goto·:goto_0
  
106 ····:catch_0106 ····:catch_0
107 ····move-exception·v0107 ····move-exception·v0
  
108 ····const-string·v2,·"Failed·to·create·socket:·"108 ····const-string·v2,·"Failed·to·create·socket:·"
  
109 ····.line·191109 ····.line·189
110 ····invoke-virtual·{p0,·v2,·v0},·Landroid/net/util/FdEventsReader;->logError(Ljava/lang/String;Ljava/lang/Exception;)V110 ····invoke-virtual·{p0,·v2,·v0},·Landroid/net/util/FdEventsReader;->logError(Ljava/lang/String;Ljava/lang/Exception;)V
  
111 ····.line·192111 ····.line·190
112 ····iget-object·v0,·p0,·Landroid/net/util/FdEventsReader;->mFd:Ljava/io/FileDescriptor;112 ····iget-object·v0,·p0,·Landroid/net/util/FdEventsReader;->mFd:Ljava/io/FileDescriptor;
  
113 ····invoke-static·{v0},·Landroid/net/util/FdEventsReader;->closeFd(Ljava/io/FileDescriptor;)V113 ····invoke-static·{v0},·Landroid/net/util/FdEventsReader;->closeFd(Ljava/io/FileDescriptor;)V
  
114 ····const/4·v0,·0x0114 ····const/4·v0,·0x0
  
115 ····.line·193115 ····.line·191
116 ····iput-object·v0,·p0,·Landroid/net/util/FdEventsReader;->mFd:Ljava/io/FileDescriptor;116 ····iput-object·v0,·p0,·Landroid/net/util/FdEventsReader;->mFd:Ljava/io/FileDescriptor;
  
117 ····.line·196117 ····.line·194
118 ····:goto_0118 ····:goto_0
119 ····iget-object·v0,·p0,·Landroid/net/util/FdEventsReader;->mFd:Ljava/io/FileDescriptor;119 ····iget-object·v0,·p0,·Landroid/net/util/FdEventsReader;->mFd:Ljava/io/FileDescriptor;
  
120 ····if-nez·v0,·:cond_1120 ····if-nez·v0,·:cond_1
  
121 ····const/4·p0,·0x0121 ····const/4·p0,·0x0
  
122 ····return·p0122 ····return·p0
  
123 ····.line·198123 ····.line·196
124 ····:cond_1124 ····:cond_1
125 ····invoke-virtual·{p0},·Landroid/net/util/FdEventsReader;->getMessageQueue()Landroid/os/MessageQueue;125 ····invoke-virtual·{p0},·Landroid/net/util/FdEventsReader;->getMessageQueue()Landroid/os/MessageQueue;
  
126 ····move-result-object·v0126 ····move-result-object·v0
  
127 ····iget-object·v2,·p0,·Landroid/net/util/FdEventsReader;->mFd:Ljava/io/FileDescriptor;127 ····iget-object·v2,·p0,·Landroid/net/util/FdEventsReader;->mFd:Ljava/io/FileDescriptor;
  
Offset 144, 94 lines modifiedOffset 144, 94 lines modified
  
144 ····new-instance·v4,·Landroid/net/util/-$$Lambda$FdEventsReader$t47DgB7XhHMFh6zjMyOAmdKEeDo;144 ····new-instance·v4,·Landroid/net/util/-$$Lambda$FdEventsReader$t47DgB7XhHMFh6zjMyOAmdKEeDo;
  
145 ····invoke-direct·{v4,·p0},·Landroid/net/util/-$$Lambda$FdEventsReader$t47DgB7XhHMFh6zjMyOAmdKEeDo;-><init>(Landroid/net/util/FdEventsReader;)V145 ····invoke-direct·{v4,·p0},·Landroid/net/util/-$$Lambda$FdEventsReader$t47DgB7XhHMFh6zjMyOAmdKEeDo;-><init>(Landroid/net/util/FdEventsReader;)V
  
146 ····invoke-virtual·{v0,·v2,·v3,·v4},·Landroid/os/MessageQueue;->addOnFileDescriptorEventListener(Ljava/io/FileDescriptor;ILandroid/os/MessageQueue$OnFileDescriptorEventListener;)V146 ····invoke-virtual·{v0,·v2,·v3,·v4},·Landroid/os/MessageQueue;->addOnFileDescriptorEventListener(Ljava/io/FileDescriptor;ILandroid/os/MessageQueue$OnFileDescriptorEventListener;)V
  
147 ····.line·211147 ····.line·209
148 ····invoke-virtual·{p0},·Landroid/net/util/FdEventsReader;->onStart()V148 ····invoke-virtual·{p0},·Landroid/net/util/FdEventsReader;->onStart()V
  
149 ····return·v1149 ····return·v1
150 .end·method150 .end·method
  
151 .method·private·handleInput()Z151 .method·private·handleInput()Z
152 ····.locals·7152 ····.locals·7
  
153 ····const-string·v0,·"readPacket·error:·"153 ····const-string·v0,·"readPacket·error:·"
  
154 ····.line·221154 ····.line·219
155 ····:goto_0155 ····:goto_0
156 ····invoke-direct·{p0},·Landroid/net/util/FdEventsReader;->isRunning()Z156 ····invoke-direct·{p0},·Landroid/net/util/FdEventsReader;->isRunning()Z
  
157 ····move-result·v1157 ····move-result·v1
  
... Open expanded diff ...
1.26 KB
smali/com/android/networkstack/tethering/Tethering$TetheringThreadExecutor.smali
    
Offset 21, 40 lines modifiedOffset 21, 40 lines modified
21 .field·private·final·mTetherHandler:Landroid/os/Handler;21 .field·private·final·mTetherHandler:Landroid/os/Handler;
  
  
22 #·direct·methods22 #·direct·methods
23 .method·constructor·<init>(Lcom/android/networkstack/tethering/Tethering;Landroid/os/Handler;)V23 .method·constructor·<init>(Lcom/android/networkstack/tethering/Tethering;Landroid/os/Handler;)V
24 ····.locals·024 ····.locals·0
  
25 ····.line·40325 ····.line·400
26 ····invoke-direct·{p0},·Ljava/lang/Object;-><init>()V26 ····invoke-direct·{p0},·Ljava/lang/Object;-><init>()V
  
27 ····.line·40427 ····.line·401
28 ····iput-object·p2,·p0,·Lcom/android/networkstack/tethering/Tethering$TetheringThreadExecutor;->mTetherHandler:Landroid/os/Handler;28 ····iput-object·p2,·p0,·Lcom/android/networkstack/tethering/Tethering$TetheringThreadExecutor;->mTetherHandler:Landroid/os/Handler;
  
29 ····return-void29 ····return-void
30 .end·method30 .end·method
  
  
31 #·virtual·methods31 #·virtual·methods
32 .method·public·execute(Ljava/lang/Runnable;)V32 .method·public·execute(Ljava/lang/Runnable;)V
33 ····.locals·133 ····.locals·1
  
34 ····.line·40834 ····.line·405
35 ····iget-object·v0,·p0,·Lcom/android/networkstack/tethering/Tethering$TetheringThreadExecutor;->mTetherHandler:Landroid/os/Handler;35 ····iget-object·v0,·p0,·Lcom/android/networkstack/tethering/Tethering$TetheringThreadExecutor;->mTetherHandler:Landroid/os/Handler;
  
36 ····invoke-virtual·{v0,·p1},·Landroid/os/Handler;->post(Ljava/lang/Runnable;)Z36 ····invoke-virtual·{v0,·p1},·Landroid/os/Handler;->post(Ljava/lang/Runnable;)Z
  
37 ····move-result·p137 ····move-result·p1
  
38 ····if-eqz·p1,·:cond_038 ····if-eqz·p1,·:cond_0
  
39 ····return-void39 ····return-void
  
40 ····.line·40940 ····.line·406
41 ····:cond_041 ····:cond_0
42 ····new-instance·p1,·Ljava/util/concurrent/RejectedExecutionException;42 ····new-instance·p1,·Ljava/util/concurrent/RejectedExecutionException;
  
43 ····new-instance·v0,·Ljava/lang/StringBuilder;43 ····new-instance·v0,·Ljava/lang/StringBuilder;
  
44 ····invoke-direct·{v0},·Ljava/lang/StringBuilder;-><init>()V44 ····invoke-direct·{v0},·Ljava/lang/StringBuilder;-><init>()V
  
5.01 KB
smali/com/android/networkstack/tethering/Tethering$NetdCallback.smali
    
Offset 18, 68 lines modifiedOffset 18, 68 lines modified
18 .field·final·synthetic·this$0:Lcom/android/networkstack/tethering/Tethering;18 .field·final·synthetic·this$0:Lcom/android/networkstack/tethering/Tethering;
  
  
19 #·direct·methods19 #·direct·methods
20 .method·private·constructor·<init>(Lcom/android/networkstack/tethering/Tethering;)V20 .method·private·constructor·<init>(Lcom/android/networkstack/tethering/Tethering;)V
21 ····.locals·021 ····.locals·0
  
22 ····.line·45622 ····.line·453
23 ····iput-object·p1,·p0,·Lcom/android/networkstack/tethering/Tethering$NetdCallback;->this$0:Lcom/android/networkstack/tethering/Tethering;23 ····iput-object·p1,·p0,·Lcom/android/networkstack/tethering/Tethering$NetdCallback;->this$0:Lcom/android/networkstack/tethering/Tethering;
  
24 ····invoke-direct·{p0},·Landroid/net/util/BaseNetdUnsolicitedEventListener;-><init>()V24 ····invoke-direct·{p0},·Landroid/net/util/BaseNetdUnsolicitedEventListener;-><init>()V
  
25 ····return-void25 ····return-void
26 .end·method26 .end·method
  
27 .method·synthetic·constructor·<init>(Lcom/android/networkstack/tethering/Tethering;Lcom/android/networkstack/tethering/Tethering$1;)V27 .method·synthetic·constructor·<init>(Lcom/android/networkstack/tethering/Tethering;Lcom/android/networkstack/tethering/Tethering$1;)V
28 ····.locals·028 ····.locals·0
  
29 ····.line·45629 ····.line·453
30 ····invoke-direct·{p0,·p1},·Lcom/android/networkstack/tethering/Tethering$NetdCallback;-><init>(Lcom/android/networkstack/tethering/Tethering;)V30 ····invoke-direct·{p0,·p1},·Lcom/android/networkstack/tethering/Tethering$NetdCallback;-><init>(Lcom/android/networkstack/tethering/Tethering;)V
  
31 ····return-void31 ····return-void
32 .end·method32 .end·method
  
33 .method·private·synthetic·lambda$onInterfaceAdded$2(Ljava/lang/String;)V33 .method·private·synthetic·lambda$onInterfaceAdded$2(Ljava/lang/String;)V
34 ····.locals·034 ····.locals·0
  
35 ····.line·46935 ····.line·466
36 ····iget-object·p0,·p0,·Lcom/android/networkstack/tethering/Tethering$NetdCallback;->this$0:Lcom/android/networkstack/tethering/Tethering;36 ····iget-object·p0,·p0,·Lcom/android/networkstack/tethering/Tethering$NetdCallback;->this$0:Lcom/android/networkstack/tethering/Tethering;
  
37 ····invoke-virtual·{p0,·p1},·Lcom/android/networkstack/tethering/Tethering;->interfaceAdded(Ljava/lang/String;)V37 ····invoke-virtual·{p0,·p1},·Lcom/android/networkstack/tethering/Tethering;->interfaceAdded(Ljava/lang/String;)V
  
38 ····return-void38 ····return-void
39 .end·method39 .end·method
  
40 .method·private·synthetic·lambda$onInterfaceChanged$0(Ljava/lang/String;Z)V40 .method·private·synthetic·lambda$onInterfaceChanged$0(Ljava/lang/String;Z)V
41 ····.locals·041 ····.locals·0
  
42 ····.line·45942 ····.line·456
43 ····iget-object·p0,·p0,·Lcom/android/networkstack/tethering/Tethering$NetdCallback;->this$0:Lcom/android/networkstack/tethering/Tethering;43 ····iget-object·p0,·p0,·Lcom/android/networkstack/tethering/Tethering$NetdCallback;->this$0:Lcom/android/networkstack/tethering/Tethering;
  
44 ····invoke-virtual·{p0,·p1,·p2},·Lcom/android/networkstack/tethering/Tethering;->interfaceStatusChanged(Ljava/lang/String;Z)V44 ····invoke-virtual·{p0,·p1,·p2},·Lcom/android/networkstack/tethering/Tethering;->interfaceStatusChanged(Ljava/lang/String;Z)V
  
45 ····return-void45 ····return-void
46 .end·method46 .end·method
  
47 .method·private·synthetic·lambda$onInterfaceLinkStateChanged$1(Ljava/lang/String;Z)V47 .method·private·synthetic·lambda$onInterfaceLinkStateChanged$1(Ljava/lang/String;Z)V
48 ····.locals·048 ····.locals·0
  
49 ····.line·46449 ····.line·461
50 ····iget-object·p0,·p0,·Lcom/android/networkstack/tethering/Tethering$NetdCallback;->this$0:Lcom/android/networkstack/tethering/Tethering;50 ····iget-object·p0,·p0,·Lcom/android/networkstack/tethering/Tethering$NetdCallback;->this$0:Lcom/android/networkstack/tethering/Tethering;
  
51 ····invoke-virtual·{p0,·p1,·p2},·Lcom/android/networkstack/tethering/Tethering;->interfaceLinkStateChanged(Ljava/lang/String;Z)V51 ····invoke-virtual·{p0,·p1,·p2},·Lcom/android/networkstack/tethering/Tethering;->interfaceLinkStateChanged(Ljava/lang/String;Z)V
  
52 ····return-void52 ····return-void
53 .end·method53 .end·method
  
54 .method·private·synthetic·lambda$onInterfaceRemoved$3(Ljava/lang/String;)V54 .method·private·synthetic·lambda$onInterfaceRemoved$3(Ljava/lang/String;)V
55 ····.locals·055 ····.locals·0
  
56 ····.line·47456 ····.line·471
57 ····iget-object·p0,·p0,·Lcom/android/networkstack/tethering/Tethering$NetdCallback;->this$0:Lcom/android/networkstack/tethering/Tethering;57 ····iget-object·p0,·p0,·Lcom/android/networkstack/tethering/Tethering$NetdCallback;->this$0:Lcom/android/networkstack/tethering/Tethering;
  
58 ····invoke-virtual·{p0,·p1},·Lcom/android/networkstack/tethering/Tethering;->interfaceRemoved(Ljava/lang/String;)V58 ····invoke-virtual·{p0,·p1},·Lcom/android/networkstack/tethering/Tethering;->interfaceRemoved(Ljava/lang/String;)V
  
59 ····return-void59 ····return-void
60 .end·method60 .end·method
  
Offset 116, 15 lines modifiedOffset 116, 15 lines modified
  
116 ····return-void116 ····return-void
117 .end·method117 .end·method
  
118 .method·public·onInterfaceAdded(Ljava/lang/String;)V118 .method·public·onInterfaceAdded(Ljava/lang/String;)V
119 ····.locals·2119 ····.locals·2
  
120 ····.line·469120 ····.line·466
121 ····iget-object·v0,·p0,·Lcom/android/networkstack/tethering/Tethering$NetdCallback;->this$0:Lcom/android/networkstack/tethering/Tethering;121 ····iget-object·v0,·p0,·Lcom/android/networkstack/tethering/Tethering$NetdCallback;->this$0:Lcom/android/networkstack/tethering/Tethering;
  
122 ····invoke-static·{v0},·Lcom/android/networkstack/tethering/Tethering;->access$300(Lcom/android/networkstack/tethering/Tethering;)Landroid/os/Handler;122 ····invoke-static·{v0},·Lcom/android/networkstack/tethering/Tethering;->access$300(Lcom/android/networkstack/tethering/Tethering;)Landroid/os/Handler;
  
123 ····move-result-object·v0123 ····move-result-object·v0
  
124 ····new-instance·v1,·Lcom/android/networkstack/tethering/-$$Lambda$Tethering$NetdCallback$w5cU4M7bVmpOdkxlaGVqVWmPUpo;124 ····new-instance·v1,·Lcom/android/networkstack/tethering/-$$Lambda$Tethering$NetdCallback$w5cU4M7bVmpOdkxlaGVqVWmPUpo;
Offset 135, 15 lines modifiedOffset 135, 15 lines modified
  
135 ····return-void135 ····return-void
136 .end·method136 .end·method
  
137 .method·public·onInterfaceChanged(Ljava/lang/String;Z)V137 .method·public·onInterfaceChanged(Ljava/lang/String;Z)V
138 ····.locals·2138 ····.locals·2
  
139 ····.line·459139 ····.line·456
140 ····iget-object·v0,·p0,·Lcom/android/networkstack/tethering/Tethering$NetdCallback;->this$0:Lcom/android/networkstack/tethering/Tethering;140 ····iget-object·v0,·p0,·Lcom/android/networkstack/tethering/Tethering$NetdCallback;->this$0:Lcom/android/networkstack/tethering/Tethering;
  
141 ····invoke-static·{v0},·Lcom/android/networkstack/tethering/Tethering;->access$300(Lcom/android/networkstack/tethering/Tethering;)Landroid/os/Handler;141 ····invoke-static·{v0},·Lcom/android/networkstack/tethering/Tethering;->access$300(Lcom/android/networkstack/tethering/Tethering;)Landroid/os/Handler;
  
142 ····move-result-object·v0142 ····move-result-object·v0
  
143 ····new-instance·v1,·Lcom/android/networkstack/tethering/-$$Lambda$Tethering$NetdCallback$9EMToFiBFk1XuFac_6siBCknizM;143 ····new-instance·v1,·Lcom/android/networkstack/tethering/-$$Lambda$Tethering$NetdCallback$9EMToFiBFk1XuFac_6siBCknizM;
Offset 154, 15 lines modifiedOffset 154, 15 lines modified
  
154 ····return-void154 ····return-void
155 .end·method155 .end·method
  
156 .method·public·onInterfaceLinkStateChanged(Ljava/lang/String;Z)V156 .method·public·onInterfaceLinkStateChanged(Ljava/lang/String;Z)V
157 ····.locals·2157 ····.locals·2
  
158 ····.line·464158 ····.line·461
159 ····iget-object·v0,·p0,·Lcom/android/networkstack/tethering/Tethering$NetdCallback;->this$0:Lcom/android/networkstack/tethering/Tethering;159 ····iget-object·v0,·p0,·Lcom/android/networkstack/tethering/Tethering$NetdCallback;->this$0:Lcom/android/networkstack/tethering/Tethering;
  
160 ····invoke-static·{v0},·Lcom/android/networkstack/tethering/Tethering;->access$300(Lcom/android/networkstack/tethering/Tethering;)Landroid/os/Handler;160 ····invoke-static·{v0},·Lcom/android/networkstack/tethering/Tethering;->access$300(Lcom/android/networkstack/tethering/Tethering;)Landroid/os/Handler;
  
161 ····move-result-object·v0161 ····move-result-object·v0
  
162 ····new-instance·v1,·Lcom/android/networkstack/tethering/-$$Lambda$Tethering$NetdCallback$qioUsjppIUILOvZaWfcg8daqCUI;162 ····new-instance·v1,·Lcom/android/networkstack/tethering/-$$Lambda$Tethering$NetdCallback$qioUsjppIUILOvZaWfcg8daqCUI;
Offset 173, 15 lines modifiedOffset 173, 15 lines modified
  
173 ····return-void173 ····return-void
174 .end·method174 .end·method
  
175 .method·public·onInterfaceRemoved(Ljava/lang/String;)V175 .method·public·onInterfaceRemoved(Ljava/lang/String;)V
176 ····.locals·2176 ····.locals·2
  
177 ····.line·474177 ····.line·471
178 ····iget-object·v0,·p0,·Lcom/android/networkstack/tethering/Tethering$NetdCallback;->this$0:Lcom/android/networkstack/tethering/Tethering;178 ····iget-object·v0,·p0,·Lcom/android/networkstack/tethering/Tethering$NetdCallback;->this$0:Lcom/android/networkstack/tethering/Tethering;
  
... Open expanded diff ...
3.74 KB
smali/com/android/networkstack/tethering/Tethering$UserRestrictionActionListener.smali
    
Offset 24, 57 lines modifiedOffset 24, 57 lines modified
24 .field·private·final·mWrapper:Lcom/android/networkstack/tethering/Tethering;24 .field·private·final·mWrapper:Lcom/android/networkstack/tethering/Tethering;
  
  
25 #·direct·methods25 #·direct·methods
26 .method·public·constructor·<init>(Landroid/os/UserManager;Lcom/android/networkstack/tethering/Tethering;Lcom/android/networkstack/tethering/TetheringNotificationUpdater;)V26 .method·public·constructor·<init>(Landroid/os/UserManager;Lcom/android/networkstack/tethering/Tethering;Lcom/android/networkstack/tethering/TetheringNotificationUpdater;)V
27 ····.locals·027 ····.locals·0
  
28 ····.line·109528 ····.line·1092
29 ····invoke-direct·{p0},·Ljava/lang/Object;-><init>()V29 ····invoke-direct·{p0},·Ljava/lang/Object;-><init>()V
  
30 ····.line·109630 ····.line·1093
31 ····iput-object·p1,·p0,·Lcom/android/networkstack/tethering/Tethering$UserRestrictionActionListener;->mUserMgr:Landroid/os/UserManager;31 ····iput-object·p1,·p0,·Lcom/android/networkstack/tethering/Tethering$UserRestrictionActionListener;->mUserMgr:Landroid/os/UserManager;
  
32 ····.line·109732 ····.line·1094
33 ····iput-object·p2,·p0,·Lcom/android/networkstack/tethering/Tethering$UserRestrictionActionListener;->mWrapper:Lcom/android/networkstack/tethering/Tethering;33 ····iput-object·p2,·p0,·Lcom/android/networkstack/tethering/Tethering$UserRestrictionActionListener;->mWrapper:Lcom/android/networkstack/tethering/Tethering;
  
34 ····.line·109834 ····.line·1095
35 ····iput-object·p3,·p0,·Lcom/android/networkstack/tethering/Tethering$UserRestrictionActionListener;->mNotificationUpdater:Lcom/android/networkstack/tethering/TetheringNotificationUpdater;35 ····iput-object·p3,·p0,·Lcom/android/networkstack/tethering/Tethering$UserRestrictionActionListener;->mNotificationUpdater:Lcom/android/networkstack/tethering/TetheringNotificationUpdater;
  
36 ····const/4·p1,·0x036 ····const/4·p1,·0x0
  
37 ····.line·109937 ····.line·1096
38 ····iput-boolean·p1,·p0,·Lcom/android/networkstack/tethering/Tethering$UserRestrictionActionListener;->mDisallowTethering:Z38 ····iput-boolean·p1,·p0,·Lcom/android/networkstack/tethering/Tethering$UserRestrictionActionListener;->mDisallowTethering:Z
  
39 ····return-void39 ····return-void
40 .end·method40 .end·method
  
  
41 #·virtual·methods41 #·virtual·methods
42 .method·public·onUserRestrictionsChanged()V42 .method·public·onUserRestrictionsChanged()V
43 ····.locals·243 ····.locals·2
  
44 ····.line·110644 ····.line·1103
45 ····iget-object·v0,·p0,·Lcom/android/networkstack/tethering/Tethering$UserRestrictionActionListener;->mUserMgr:Landroid/os/UserManager;45 ····iget-object·v0,·p0,·Lcom/android/networkstack/tethering/Tethering$UserRestrictionActionListener;->mUserMgr:Landroid/os/UserManager;
  
46 ····invoke-virtual·{v0},·Landroid/os/UserManager;->getUserRestrictions()Landroid/os/Bundle;46 ····invoke-virtual·{v0},·Landroid/os/UserManager;->getUserRestrictions()Landroid/os/Bundle;
  
47 ····move-result-object·v047 ····move-result-object·v0
  
48 ····const-string·v1,·"no_config_tethering"48 ····const-string·v1,·"no_config_tethering"
  
49 ····.line·110849 ····.line·1105
50 ····invoke-virtual·{v0,·v1},·Landroid/os/Bundle;->getBoolean(Ljava/lang/String;)Z50 ····invoke-virtual·{v0,·v1},·Landroid/os/Bundle;->getBoolean(Ljava/lang/String;)Z
  
51 ····move-result·v051 ····move-result·v0
  
52 ····.line·110952 ····.line·1106
53 ····iget-boolean·v1,·p0,·Lcom/android/networkstack/tethering/Tethering$UserRestrictionActionListener;->mDisallowTethering:Z53 ····iget-boolean·v1,·p0,·Lcom/android/networkstack/tethering/Tethering$UserRestrictionActionListener;->mDisallowTethering:Z
  
54 ····.line·111054 ····.line·1107
55 ····iput-boolean·v0,·p0,·Lcom/android/networkstack/tethering/Tethering$UserRestrictionActionListener;->mDisallowTethering:Z55 ····iput-boolean·v0,·p0,·Lcom/android/networkstack/tethering/Tethering$UserRestrictionActionListener;->mDisallowTethering:Z
  
56 ····if-eq·v0,·v1,·:cond_056 ····if-eq·v0,·v1,·:cond_0
  
57 ····const/4·v1,·0x157 ····const/4·v1,·0x1
  
58 ····goto·:goto_058 ····goto·:goto_0
Offset 86, 37 lines modifiedOffset 86, 37 lines modified
86 ····if-nez·v1,·:cond_186 ····if-nez·v1,·:cond_1
  
87 ····return-void87 ····return-void
  
88 ····:cond_188 ····:cond_1
89 ····if-nez·v0,·:cond_289 ····if-nez·v0,·:cond_2
  
90 ····.line·112090 ····.line·1117
91 ····iget-object·p0,·p0,·Lcom/android/networkstack/tethering/Tethering$UserRestrictionActionListener;->mNotificationUpdater:Lcom/android/networkstack/tethering/TetheringNotificationUpdater;91 ····iget-object·p0,·p0,·Lcom/android/networkstack/tethering/Tethering$UserRestrictionActionListener;->mNotificationUpdater:Lcom/android/networkstack/tethering/TetheringNotificationUpdater;
  
92 ····invoke-virtual·{p0},·Lcom/android/networkstack/tethering/TetheringNotificationUpdater;->tetheringRestrictionLifted()V92 ····invoke-virtual·{p0},·Lcom/android/networkstack/tethering/TetheringNotificationUpdater;->tetheringRestrictionLifted()V
  
93 ····return-void93 ····return-void
  
94 ····.line·112494 ····.line·1121
95 ····:cond_295 ····:cond_2
96 ····iget-object·v0,·p0,·Lcom/android/networkstack/tethering/Tethering$UserRestrictionActionListener;->mWrapper:Lcom/android/networkstack/tethering/Tethering;96 ····iget-object·v0,·p0,·Lcom/android/networkstack/tethering/Tethering$UserRestrictionActionListener;->mWrapper:Lcom/android/networkstack/tethering/Tethering;
  
97 ····invoke-virtual·{v0},·Lcom/android/networkstack/tethering/Tethering;->isTetheringActive()Z97 ····invoke-virtual·{v0},·Lcom/android/networkstack/tethering/Tethering;->isTetheringActive()Z
  
98 ····move-result·v098 ····move-result·v0
  
99 ····if-eqz·v0,·:cond_399 ····if-eqz·v0,·:cond_3
  
100 ····.line·1127100 ····.line·1124
101 ····iget-object·v0,·p0,·Lcom/android/networkstack/tethering/Tethering$UserRestrictionActionListener;->mNotificationUpdater:Lcom/android/networkstack/tethering/TetheringNotificationUpdater;101 ····iget-object·v0,·p0,·Lcom/android/networkstack/tethering/Tethering$UserRestrictionActionListener;->mNotificationUpdater:Lcom/android/networkstack/tethering/TetheringNotificationUpdater;
  
102 ····invoke-virtual·{v0},·Lcom/android/networkstack/tethering/TetheringNotificationUpdater;->notifyTetheringDisabledByRestriction()V102 ····invoke-virtual·{v0},·Lcom/android/networkstack/tethering/TetheringNotificationUpdater;->notifyTetheringDisabledByRestriction()V
  
103 ····.line·1130103 ····.line·1127
104 ····iget-object·p0,·p0,·Lcom/android/networkstack/tethering/Tethering$UserRestrictionActionListener;->mWrapper:Lcom/android/networkstack/tethering/Tethering;104 ····iget-object·p0,·p0,·Lcom/android/networkstack/tethering/Tethering$UserRestrictionActionListener;->mWrapper:Lcom/android/networkstack/tethering/Tethering;
  
105 ····invoke-virtual·{p0},·Lcom/android/networkstack/tethering/Tethering;->untetherAll()V105 ····invoke-virtual·{p0},·Lcom/android/networkstack/tethering/Tethering;->untetherAll()V
  
106 ····:cond_3106 ····:cond_3
107 ····return-void107 ····return-void
108 .end·method108 .end·method
48.4 KB
smali/com/android/networkstack/tethering/PrivateAddressCoordinator.smali
    
Offset 1, 46 lines modifiedOffset 1, 26 lines modified
1 .class·public·Lcom/android/networkstack/tethering/PrivateAddressCoordinator;1 .class·public·Lcom/android/networkstack/tethering/PrivateAddressCoordinator;
2 .super·Ljava/lang/Object;2 .super·Ljava/lang/Object;
3 .source·"PrivateAddressCoordinator.java"3 .source·"PrivateAddressCoordinator.java"
  
  
4 #·instance·fields4 #·instance·fields
5 .field·private·final·mCachedAddresses:Landroid/util/SparseArray; 
6 ····.annotation·system·Ldalvik/annotation/Signature; 
7 ········value·=·{ 
8 ············"Landroid/util/SparseArray<", 
9 ············"Landroid/net/LinkAddress;", 
10 ············">;" 
11 ········} 
12 ····.end·annotation 
13 .end·field 
  
14 .field·private·final·mConfig:Lcom/android/networkstack/tethering/TetheringConfiguration; 
  
15 .field·private·final·mConnectivityMgr:Landroid/net/ConnectivityManager;5 .field·private·final·mConnectivityMgr:Landroid/net/ConnectivityManager;
  
16 .field·private·final·mDownstreams:Landroid/util/ArraySet;6 .field·private·final·mDownstreams:Landroid/util/ArraySet;
17 ····.annotation·system·Ldalvik/annotation/Signature;7 ····.annotation·system·Ldalvik/annotation/Signature;
18 ········value·=·{8 ········value·=·{
19 ············"Landroid/util/ArraySet<",9 ············"Landroid/util/ArraySet<",
20 ············"Landroid/net/ip/IpServer;",10 ············"Landroid/net/ip/IpServer;",
21 ············">;"11 ············">;"
22 ········}12 ········}
23 ····.end·annotation13 ····.end·annotation
24 .end·field14 .end·field
  
25 .field·private·final·mTetheringPrefixes:Ljava/util/List;15 .field·private·final·mTetheringPrefix:Landroid/net/IpPrefix;
26 ····.annotation·system·Ldalvik/annotation/Signature; 
27 ········value·=·{ 
28 ············"Ljava/util/List<", 
29 ············"Landroid/net/IpPrefix;", 
30 ············">;" 
31 ········} 
32 ····.end·annotation 
33 .end·field 
  
34 .field·private·final·mUpstreamPrefixMap:Landroid/util/ArrayMap;16 .field·private·final·mUpstreamPrefixMap:Landroid/util/ArrayMap;
35 ····.annotation·system·Ldalvik/annotation/Signature;17 ····.annotation·system·Ldalvik/annotation/Signature;
36 ········value·=·{18 ········value·=·{
37 ············"Landroid/util/ArrayMap<",19 ············"Landroid/util/ArrayMap<",
38 ············"Landroid/net/Network;",20 ············"Landroid/net/Network;",
39 ············"Ljava/util/List<",21 ············"Ljava/util/List<",
Offset 48, 432 lines modifiedOffset 28, 76 lines modified
48 ············">;>;"28 ············">;>;"
49 ········}29 ········}
50 ····.end·annotation30 ····.end·annotation
51 .end·field31 .end·field
  
  
52 #·direct·methods32 #·direct·methods
53 .method·public·constructor·<init>(Landroid/content/Context;Lcom/android/networkstack/tethering/TetheringConfiguration;)V33 .method·public·constructor·<init>(Landroid/content/Context;)V
54 ····.locals·334 ····.locals·2
  
55 ····.line·8235 ····.line·74
56 ····invoke-direct·{p0},·Ljava/lang/Object;-><init>()V36 ····invoke-direct·{p0},·Ljava/lang/Object;-><init>()V
  
57 ····.line·8337 ····.line·75
58 ····new-instance·v0,·Landroid/util/ArraySet;38 ····new-instance·v0,·Landroid/util/ArraySet;
  
59 ····invoke-direct·{v0},·Landroid/util/ArraySet;-><init>()V39 ····invoke-direct·{v0},·Landroid/util/ArraySet;-><init>()V
  
60 ····iput-object·v0,·p0,·Lcom/android/networkstack/tethering/PrivateAddressCoordinator;->mDownstreams:Landroid/util/ArraySet;40 ····iput-object·v0,·p0,·Lcom/android/networkstack/tethering/PrivateAddressCoordinator;->mDownstreams:Landroid/util/ArraySet;
  
61 ····.line·8441 ····.line·76
62 ····new-instance·v0,·Landroid/util/ArrayMap;42 ····new-instance·v0,·Landroid/util/ArrayMap;
  
63 ····invoke-direct·{v0},·Landroid/util/ArrayMap;-><init>()V43 ····invoke-direct·{v0},·Landroid/util/ArrayMap;-><init>()V
  
64 ····iput-object·v0,·p0,·Lcom/android/networkstack/tethering/PrivateAddressCoordinator;->mUpstreamPrefixMap:Landroid/util/ArrayMap;44 ····iput-object·v0,·p0,·Lcom/android/networkstack/tethering/PrivateAddressCoordinator;->mUpstreamPrefixMap:Landroid/util/ArrayMap;
  
 45 ····.line·77
 46 ····new-instance·v0,·Landroid/net/IpPrefix;
  
 47 ····const-string·v1,·"192.168.0.0/16"
  
 48 ····invoke-direct·{v0,·v1},·Landroid/net/IpPrefix;-><init>(Ljava/lang/String;)V
  
 49 ····iput-object·v0,·p0,·Lcom/android/networkstack/tethering/PrivateAddressCoordinator;->mTetheringPrefix:Landroid/net/IpPrefix;
  
65 ····const-string·v0,·"connectivity"50 ····const-string·v0,·"connectivity"
  
66 ····.line·8551 ····.line·78
67 ····invoke-virtual·{p1,·v0},·Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;52 ····invoke-virtual·{p1,·v0},·Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
  
68 ····move-result-object·p153 ····move-result-object·p1
  
69 ····check-cast·p1,·Landroid/net/ConnectivityManager;54 ····check-cast·p1,·Landroid/net/ConnectivityManager;
  
70 ····iput-object·p1,·p0,·Lcom/android/networkstack/tethering/PrivateAddressCoordinator;->mConnectivityMgr:Landroid/net/ConnectivityManager;55 ····iput-object·p1,·p0,·Lcom/android/networkstack/tethering/PrivateAddressCoordinator;->mConnectivityMgr:Landroid/net/ConnectivityManager;
  
71 ····.line·87 
72 ····iput-object·p2,·p0,·Lcom/android/networkstack/tethering/PrivateAddressCoordinator;->mConfig:Lcom/android/networkstack/tethering/TetheringConfiguration; 
  
73 ····.line·88 
74 ····new-instance·p1,·Landroid/util/SparseArray; 
  
75 ····invoke-direct·{p1},·Landroid/util/SparseArray;-><init>()V 
  
76 ····iput-object·p1,·p0,·Lcom/android/networkstack/tethering/PrivateAddressCoordinator;->mCachedAddresses:Landroid/util/SparseArray; 
  
77 ····.line·90 
78 ····new-instance·v0,·Landroid/net/LinkAddress; 
  
79 ····const-string·v1,·"192.168.44.1/24" 
  
80 ····invoke-direct·{v0,·v1},·Landroid/net/LinkAddress;-><init>(Ljava/lang/String;)V 
  
81 ····const/4·v1,·0x2 
  
82 ····invoke-virtual·{p1,·v1,·v0},·Landroid/util/SparseArray;->put(ILjava/lang/Object;)V 
  
83 ····.line·91 
84 ····iget-object·p1,·p0,·Lcom/android/networkstack/tethering/PrivateAddressCoordinator;->mCachedAddresses:Landroid/util/SparseArray; 
  
85 ····new-instance·v0,·Landroid/net/LinkAddress; 
  
86 ····const-string·v1,·"192.168.49.1/24" 
  
87 ····invoke-direct·{v0,·v1},·Landroid/net/LinkAddress;-><init>(Ljava/lang/String;)V 
  
88 ····const/4·v1,·0x3 
  
89 ····invoke-virtual·{p1,·v1,·v0},·Landroid/util/SparseArray;->put(ILjava/lang/Object;)V 
... Open expanded diff (truncated) ...
123 KB
smali/com/android/networkstack/tethering/Tethering.smali
    
Offset 2, 15 lines modifiedOffset 2, 15 lines modified
2 .super·Ljava/lang/Object;2 .super·Ljava/lang/Object;
3 .source·"Tethering.java"3 .source·"Tethering.java"
  
  
4 #·annotations4 #·annotations
5 .annotation·system·Ldalvik/annotation/MemberClasses;5 .annotation·system·Ldalvik/annotation/MemberClasses;
6 ····value·=·{6 ····value·=·{
7 ········Lcom/android/networkstack/tethering/Tethering$TetherMainSM;,7 ········Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;,
8 ········Lcom/android/networkstack/tethering/Tethering$UserRestrictionActionListener;,8 ········Lcom/android/networkstack/tethering/Tethering$UserRestrictionActionListener;,
9 ········Lcom/android/networkstack/tethering/Tethering$StateReceiver;,9 ········Lcom/android/networkstack/tethering/Tethering$StateReceiver;,
10 ········Lcom/android/networkstack/tethering/Tethering$EthernetCallback;,10 ········Lcom/android/networkstack/tethering/Tethering$EthernetCallback;,
11 ········Lcom/android/networkstack/tethering/Tethering$TetheringSoftApCallback;,11 ········Lcom/android/networkstack/tethering/Tethering$TetheringSoftApCallback;,
12 ········Lcom/android/networkstack/tethering/Tethering$NetdCallback;,12 ········Lcom/android/networkstack/tethering/Tethering$NetdCallback;,
13 ········Lcom/android/networkstack/tethering/Tethering$ActiveDataSubIdListener;,13 ········Lcom/android/networkstack/tethering/Tethering$ActiveDataSubIdListener;,
14 ········Lcom/android/networkstack/tethering/Tethering$TetheringThreadExecutor;,14 ········Lcom/android/networkstack/tethering/Tethering$TetheringThreadExecutor;,
Offset 107, 15 lines modifiedOffset 107, 15 lines modified
  
107 .field·private·final·mPublicSync:Ljava/lang/Object;107 .field·private·final·mPublicSync:Ljava/lang/Object;
  
108 .field·private·mRndisEnabled:Z108 .field·private·mRndisEnabled:Z
  
109 .field·private·final·mStateReceiver:Landroid/content/BroadcastReceiver;109 .field·private·final·mStateReceiver:Landroid/content/BroadcastReceiver;
  
110 .field·private·final·mTetherMainSM:Lcom/android/networkstack/tethering/util/StateMachine;110 .field·private·final·mTetherMasterSM:Lcom/android/networkstack/tethering/util/StateMachine;
  
111 .field·private·final·mTetherStates:Landroid/util/ArrayMap;111 .field·private·final·mTetherStates:Landroid/util/ArrayMap;
112 ····.annotation·system·Ldalvik/annotation/Signature;112 ····.annotation·system·Ldalvik/annotation/Signature;
113 ········value·=·{113 ········value·=·{
114 ············"Landroid/util/ArrayMap<",114 ············"Landroid/util/ArrayMap<",
115 ············"Ljava/lang/String;",115 ············"Ljava/lang/String;",
116 ············"Lcom/android/networkstack/tethering/Tethering$TetherState;",116 ············"Lcom/android/networkstack/tethering/Tethering$TetherState;",
Offset 162, 15 lines modifiedOffset 162, 15 lines modified
162 ····.line·161162 ····.line·161
163 ····const-class·v2,·Lcom/android/networkstack/tethering/Tethering;163 ····const-class·v2,·Lcom/android/networkstack/tethering/Tethering;
  
164 ····aput-object·v2,·v0,·v1164 ····aput-object·v2,·v0,·v1
  
165 ····const/4·v1,·0x1165 ····const/4·v1,·0x1
  
166 ····const-class·v2,·Lcom/android/networkstack/tethering/Tethering$TetherMainSM;166 ····const-class·v2,·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;
  
167 ····aput-object·v2,·v0,·v1167 ····aput-object·v2,·v0,·v1
  
168 ····const/4·v1,·0x2168 ····const/4·v1,·0x2
  
169 ····const-class·v2,·Landroid/net/ip/IpServer;169 ····const-class·v2,·Landroid/net/ip/IpServer;
  
Offset 299, 29 lines modifiedOffset 299, 29 lines modified
299 ····new-instance·v0,·Lcom/android/networkstack/tethering/ConnectedClientsTracker;299 ····new-instance·v0,·Lcom/android/networkstack/tethering/ConnectedClientsTracker;
  
300 ····invoke-direct·{v0},·Lcom/android/networkstack/tethering/ConnectedClientsTracker;-><init>()V300 ····invoke-direct·{v0},·Lcom/android/networkstack/tethering/ConnectedClientsTracker;-><init>()V
  
301 ····iput-object·v0,·p0,·Lcom/android/networkstack/tethering/Tethering;->mConnectedClientsTracker:Lcom/android/networkstack/tethering/ConnectedClientsTracker;301 ····iput-object·v0,·p0,·Lcom/android/networkstack/tethering/Tethering;->mConnectedClientsTracker:Lcom/android/networkstack/tethering/ConnectedClientsTracker;
  
302 ····.line·276302 ····.line·276
303 ····new-instance·v0,·Lcom/android/networkstack/tethering/Tethering$TetherMainSM;303 ····new-instance·v0,·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;
  
304 ····iget-object·v2,·p0,·Lcom/android/networkstack/tethering/Tethering;->mLooper:Landroid/os/Looper;304 ····iget-object·v2,·p0,·Lcom/android/networkstack/tethering/Tethering;->mLooper:Landroid/os/Looper;
  
305 ····const-string·v3,·"TetherMain"305 ····const-string·v3,·"TetherMaster"
  
306 ····invoke-direct·{v0,·p0,·v3,·v2,·p1},·Lcom/android/networkstack/tethering/Tethering$TetherMainSM;-><init>(Lcom/android/networkstack/tethering/Tethering;Ljava/lang/String;Landroid/os/Looper;Lcom/android/networkstack/tethering/TetheringDependencies;)V306 ····invoke-direct·{v0,·p0,·v3,·v2,·p1},·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;-><init>(Lcom/android/networkstack/tethering/Tethering;Ljava/lang/String;Landroid/os/Looper;Lcom/android/networkstack/tethering/TetheringDependencies;)V
  
307 ····iput-object·v0,·p0,·Lcom/android/networkstack/tethering/Tethering;->mTetherMainSM:Lcom/android/networkstack/tethering/util/StateMachine;307 ····iput-object·v0,·p0,·Lcom/android/networkstack/tethering/Tethering;->mTetherMasterSM:Lcom/android/networkstack/tethering/util/StateMachine;
  
308 ····.line·277308 ····.line·277
309 ····invoke-virtual·{v0},·Lcom/android/networkstack/tethering/util/StateMachine;->start()V309 ····invoke-virtual·{v0},·Lcom/android/networkstack/tethering/util/StateMachine;->start()V
  
310 ····.line·279310 ····.line·279
311 ····iget-object·p1,·p0,·Lcom/android/networkstack/tethering/Tethering;->mTetherMainSM:Lcom/android/networkstack/tethering/util/StateMachine;311 ····iget-object·p1,·p0,·Lcom/android/networkstack/tethering/Tethering;->mTetherMasterSM:Lcom/android/networkstack/tethering/util/StateMachine;
  
312 ····invoke-virtual·{p1},·Lcom/android/networkstack/tethering/util/StateMachine;->getHandler()Landroid/os/Handler;312 ····invoke-virtual·{p1},·Lcom/android/networkstack/tethering/util/StateMachine;->getHandler()Landroid/os/Handler;
  
313 ····move-result-object·p1313 ····move-result-object·p1
  
314 ····iput-object·p1,·p0,·Lcom/android/networkstack/tethering/Tethering;->mHandler:Landroid/os/Handler;314 ····iput-object·p1,·p0,·Lcom/android/networkstack/tethering/Tethering;->mHandler:Landroid/os/Handler;
  
Offset 341, 15 lines modifiedOffset 341, 15 lines modified
341 ····iput-object·p1,·p0,·Lcom/android/networkstack/tethering/Tethering;->mOffloadController:Lcom/android/networkstack/tethering/OffloadController;341 ····iput-object·p1,·p0,·Lcom/android/networkstack/tethering/Tethering;->mOffloadController:Lcom/android/networkstack/tethering/OffloadController;
  
342 ····.line·288342 ····.line·288
343 ····iget-object·p1,·p0,·Lcom/android/networkstack/tethering/Tethering;->mDeps:Lcom/android/networkstack/tethering/TetheringDependencies;343 ····iget-object·p1,·p0,·Lcom/android/networkstack/tethering/Tethering;->mDeps:Lcom/android/networkstack/tethering/TetheringDependencies;
  
344 ····iget-object·v0,·p0,·Lcom/android/networkstack/tethering/Tethering;->mContext:Landroid/content/Context;344 ····iget-object·v0,·p0,·Lcom/android/networkstack/tethering/Tethering;->mContext:Landroid/content/Context;
  
345 ····iget-object·v2,·p0,·Lcom/android/networkstack/tethering/Tethering;->mTetherMainSM:Lcom/android/networkstack/tethering/util/StateMachine;345 ····iget-object·v2,·p0,·Lcom/android/networkstack/tethering/Tethering;->mTetherMasterSM:Lcom/android/networkstack/tethering/util/StateMachine;
  
346 ····iget-object·v3,·p0,·Lcom/android/networkstack/tethering/Tethering;->mLog:Landroid/net/util/SharedLog;346 ····iget-object·v3,·p0,·Lcom/android/networkstack/tethering/Tethering;->mLog:Landroid/net/util/SharedLog;
  
347 ····const/4·v4,·0x5347 ····const/4·v4,·0x5
  
348 ····invoke-virtual·{p1,·v0,·v2,·v3,·v4},·Lcom/android/networkstack/tethering/TetheringDependencies;->getUpstreamNetworkMonitor(Landroid/content/Context;Lcom/android/networkstack/tethering/util/StateMachine;Landroid/net/util/SharedLog;I)Lcom/android/networkstack/tethering/UpstreamNetworkMonitor;348 ····invoke-virtual·{p1,·v0,·v2,·v3,·v4},·Lcom/android/networkstack/tethering/TetheringDependencies;->getUpstreamNetworkMonitor(Landroid/content/Context;Lcom/android/networkstack/tethering/util/StateMachine;Landroid/net/util/SharedLog;I)Lcom/android/networkstack/tethering/UpstreamNetworkMonitor;
  
Offset 478, 44 lines modifiedOffset 478, 40 lines modified
478 ····.line·322478 ····.line·322
479 ····new-instance·p1,·Lcom/android/networkstack/tethering/Tethering$NetdCallback;479 ····new-instance·p1,·Lcom/android/networkstack/tethering/Tethering$NetdCallback;
  
480 ····invoke-direct·{p1,·p0,·v1},·Lcom/android/networkstack/tethering/Tethering$NetdCallback;-><init>(Lcom/android/networkstack/tethering/Tethering;Lcom/android/networkstack/tethering/Tethering$1;)V480 ····invoke-direct·{p1,·p0,·v1},·Lcom/android/networkstack/tethering/Tethering$NetdCallback;-><init>(Lcom/android/networkstack/tethering/Tethering;Lcom/android/networkstack/tethering/Tethering$1;)V
  
481 ····iput-object·p1,·p0,·Lcom/android/networkstack/tethering/Tethering;->mNetdCallback:Lcom/android/networkstack/tethering/Tethering$NetdCallback;481 ····iput-object·p1,·p0,·Lcom/android/networkstack/tethering/Tethering;->mNetdCallback:Lcom/android/networkstack/tethering/Tethering$NetdCallback;
  
482 ····.line·325482 ····.line·323
 483 ····new-instance·p1,·Lcom/android/networkstack/tethering/PrivateAddressCoordinator;
483 ····invoke-direct·{p0},·Lcom/android/networkstack/tethering/Tethering;->updateConfiguration()V 
  
484 ····.line·329 
485 ····iget-object·p1,·p0,·Lcom/android/networkstack/tethering/Tethering;->mDeps:Lcom/android/networkstack/tethering/TetheringDependencies; 
  
486 ····iget-object·v0,·p0,·Lcom/android/networkstack/tethering/Tethering;->mContext:Landroid/content/Context;484 ····iget-object·v0,·p0,·Lcom/android/networkstack/tethering/Tethering;->mContext:Landroid/content/Context;
  
 485 ····invoke-direct·{p1,·v0},·Lcom/android/networkstack/tethering/PrivateAddressCoordinator;-><init>(Landroid/content/Context;)V
487 ····iget-object·v1,·p0,·Lcom/android/networkstack/tethering/Tethering;->mConfig:Lcom/android/networkstack/tethering/TetheringConfiguration; 
  
488 ····invoke-virtual·{p1,·v0,·v1},·Lcom/android/networkstack/tethering/TetheringDependencies;->getPrivateAddressCoordinator(Landroid/content/Context;Lcom/android/networkstack/tethering/TetheringConfiguration;)Lcom/android/networkstack/tethering/PrivateAddressCoordinator; 
  
489 ····move-result-object·p1 
  
490 ····iput-object·p1,·p0,·Lcom/android/networkstack/tethering/Tethering;->mPrivateAddressCoordinator:Lcom/android/networkstack/tethering/PrivateAddressCoordinator;486 ····iput-object·p1,·p0,·Lcom/android/networkstack/tethering/Tethering;->mPrivateAddressCoordinator:Lcom/android/networkstack/tethering/PrivateAddressCoordinator;
  
 487 ····.line·326
 488 ····invoke-direct·{p0},·Lcom/android/networkstack/tethering/Tethering;->updateConfiguration()V
  
491 ····.line·333489 ····.line·330
492 ····iget-object·p1,·p0,·Lcom/android/networkstack/tethering/Tethering;->mDeps:Lcom/android/networkstack/tethering/TetheringDependencies;490 ····iget-object·p1,·p0,·Lcom/android/networkstack/tethering/Tethering;->mDeps:Lcom/android/networkstack/tethering/TetheringDependencies;
  
493 ····new-instance·v0,·Lcom/android/networkstack/tethering/Tethering$2;491 ····new-instance·v0,·Lcom/android/networkstack/tethering/Tethering$2;
  
... Open expanded diff (truncated) ...
1.55 KB
smali/com/android/networkstack/tethering/Tethering$TetheringSoftApCallback.smali
    
Offset 21, 26 lines modifiedOffset 21, 26 lines modified
21 .field·final·synthetic·this$0:Lcom/android/networkstack/tethering/Tethering;21 .field·final·synthetic·this$0:Lcom/android/networkstack/tethering/Tethering;
  
  
22 #·direct·methods22 #·direct·methods
23 .method·private·constructor·<init>(Lcom/android/networkstack/tethering/Tethering;)V23 .method·private·constructor·<init>(Lcom/android/networkstack/tethering/Tethering;)V
24 ····.locals·024 ····.locals·0
  
25 ····.line·47825 ····.line·475
26 ····iput-object·p1,·p0,·Lcom/android/networkstack/tethering/Tethering$TetheringSoftApCallback;->this$0:Lcom/android/networkstack/tethering/Tethering;26 ····iput-object·p1,·p0,·Lcom/android/networkstack/tethering/Tethering$TetheringSoftApCallback;->this$0:Lcom/android/networkstack/tethering/Tethering;
  
27 ····invoke-direct·{p0},·Ljava/lang/Object;-><init>()V27 ····invoke-direct·{p0},·Ljava/lang/Object;-><init>()V
  
28 ····return-void28 ····return-void
29 .end·method29 .end·method
  
30 .method·synthetic·constructor·<init>(Lcom/android/networkstack/tethering/Tethering;Lcom/android/networkstack/tethering/Tethering$1;)V30 .method·synthetic·constructor·<init>(Lcom/android/networkstack/tethering/Tethering;Lcom/android/networkstack/tethering/Tethering$1;)V
31 ····.locals·031 ····.locals·0
  
32 ····.line·47832 ····.line·475
33 ····invoke-direct·{p0,·p1},·Lcom/android/networkstack/tethering/Tethering$TetheringSoftApCallback;-><init>(Lcom/android/networkstack/tethering/Tethering;)V33 ····invoke-direct·{p0,·p1},·Lcom/android/networkstack/tethering/Tethering$TetheringSoftApCallback;-><init>(Lcom/android/networkstack/tethering/Tethering;)V
  
34 ····return-void34 ····return-void
35 .end·method35 .end·method
  
  
36 #·virtual·methods36 #·virtual·methods
Offset 51, 15 lines modifiedOffset 51, 15 lines modified
51 ············"(",51 ············"(",
52 ············"Ljava/util/List<",52 ············"Ljava/util/List<",
53 ············"Landroid/net/wifi/WifiClient;",53 ············"Landroid/net/wifi/WifiClient;",
54 ············">;)V"54 ············">;)V"
55 ········}55 ········}
56 ····.end·annotation56 ····.end·annotation
  
57 ····.line·49057 ····.line·487
58 ····iget-object·p0,·p0,·Lcom/android/networkstack/tethering/Tethering$TetheringSoftApCallback;->this$0:Lcom/android/networkstack/tethering/Tethering;58 ····iget-object·p0,·p0,·Lcom/android/networkstack/tethering/Tethering$TetheringSoftApCallback;->this$0:Lcom/android/networkstack/tethering/Tethering;
  
59 ····invoke-static·{p0,·p1},·Lcom/android/networkstack/tethering/Tethering;->access$1200(Lcom/android/networkstack/tethering/Tethering;Ljava/util/List;)V59 ····invoke-static·{p0,·p1},·Lcom/android/networkstack/tethering/Tethering;->access$1200(Lcom/android/networkstack/tethering/Tethering;Ljava/util/List;)V
  
60 ····return-void60 ····return-void
61 .end·method61 .end·method
  
769 B
smali/com/android/networkstack/tethering/EntitlementManager.smali
    
Offset 1192, 15 lines modifiedOffset 1192, 15 lines modified
1192 ····move-result·v01192 ····move-result·v0
  
1193 ····if-nez·v0,·:cond_01193 ····if-nez·v0,·:cond_0
  
1194 ····.line·3081194 ····.line·308
1195 ····iget-object·v0,·p0,·Lcom/android/networkstack/tethering/EntitlementManager;->mLog:Landroid/net/util/SharedLog;1195 ····iget-object·v0,·p0,·Lcom/android/networkstack/tethering/EntitlementManager;->mLog:Landroid/net/util/SharedLog;
  
1196 ····const-string·v1,·"reevaluateSimCardProvisioning()·don\'t·run·in·TetherMainSM·thread"1196 ····const-string·v1,·"reevaluateSimCardProvisioning()·don\'t·run·in·TetherMaster·thread"
  
1197 ····invoke-virtual·{v0,·v1},·Landroid/net/util/SharedLog;->log(Ljava/lang/String;)V1197 ····invoke-virtual·{v0,·v1},·Landroid/net/util/SharedLog;->log(Ljava/lang/String;)V
  
1198 ····.line·3101198 ····.line·310
1199 ····:cond_01199 ····:cond_0
1200 ····iget-object·v0,·p0,·Lcom/android/networkstack/tethering/EntitlementManager;->mEntitlementCacheValue:Landroid/util/SparseIntArray;1200 ····iget-object·v0,·p0,·Lcom/android/networkstack/tethering/EntitlementManager;->mEntitlementCacheValue:Landroid/util/SparseIntArray;
  
2.99 KB
smali/com/android/networkstack/tethering/Tethering$3.smali
    
Offset 27, 15 lines modifiedOffset 27, 15 lines modified
27 .field·final·synthetic·val$listener:Landroid/net/IIntResultListener;27 .field·final·synthetic·val$listener:Landroid/net/IIntResultListener;
  
  
28 #·direct·methods28 #·direct·methods
29 .method·constructor·<init>(Lcom/android/networkstack/tethering/Tethering;ZLandroid/net/IIntResultListener;Landroid/bluetooth/BluetoothAdapter;)V29 .method·constructor·<init>(Lcom/android/networkstack/tethering/Tethering;ZLandroid/net/IIntResultListener;Landroid/bluetooth/BluetoothAdapter;)V
30 ····.locals·030 ····.locals·0
  
31 ····.line·66331 ····.line·660
32 ····iput-object·p1,·p0,·Lcom/android/networkstack/tethering/Tethering$3;->this$0:Lcom/android/networkstack/tethering/Tethering;32 ····iput-object·p1,·p0,·Lcom/android/networkstack/tethering/Tethering$3;->this$0:Lcom/android/networkstack/tethering/Tethering;
  
33 ····iput-boolean·p2,·p0,·Lcom/android/networkstack/tethering/Tethering$3;->val$enable:Z33 ····iput-boolean·p2,·p0,·Lcom/android/networkstack/tethering/Tethering$3;->val$enable:Z
  
34 ····iput-object·p3,·p0,·Lcom/android/networkstack/tethering/Tethering$3;->val$listener:Landroid/net/IIntResultListener;34 ····iput-object·p3,·p0,·Lcom/android/networkstack/tethering/Tethering$3;->val$listener:Landroid/net/IIntResultListener;
  
35 ····iput-object·p4,·p0,·Lcom/android/networkstack/tethering/Tethering$3;->val$adapter:Landroid/bluetooth/BluetoothAdapter;35 ····iput-object·p4,·p0,·Lcom/android/networkstack/tethering/Tethering$3;->val$adapter:Landroid/bluetooth/BluetoothAdapter;
Offset 46, 35 lines modifiedOffset 46, 35 lines modified
46 .end·method46 .end·method
  
  
47 #·virtual·methods47 #·virtual·methods
48 .method·public·onServiceConnected(ILandroid/bluetooth/BluetoothProfile;)V48 .method·public·onServiceConnected(ILandroid/bluetooth/BluetoothProfile;)V
49 ····.locals·449 ····.locals·4
  
50 ····.line·67750 ····.line·674
51 ····invoke-static·{},·Landroid/os/Binder;->clearCallingIdentity()J51 ····invoke-static·{},·Landroid/os/Binder;->clearCallingIdentity()J
  
52 ····move-result-wide·v052 ····move-result-wide·v0
  
53 ····.line·67953 ····.line·676
54 ····:try_start_054 ····:try_start_0
55 ····move-object·p1,·p255 ····move-object·p1,·p2
  
56 ····check-cast·p1,·Landroid/bluetooth/BluetoothPan;56 ····check-cast·p1,·Landroid/bluetooth/BluetoothPan;
  
57 ····iget-boolean·v2,·p0,·Lcom/android/networkstack/tethering/Tethering$3;->val$enable:Z57 ····iget-boolean·v2,·p0,·Lcom/android/networkstack/tethering/Tethering$3;->val$enable:Z
  
58 ····invoke-virtual·{p1,·v2},·Landroid/bluetooth/BluetoothPan;->setBluetoothTethering(Z)V58 ····invoke-virtual·{p1,·v2},·Landroid/bluetooth/BluetoothPan;->setBluetoothTethering(Z)V
59 ····:try_end_059 ····:try_end_0
60 ····.catchall·{:try_start_0·..·:try_end_0}·:catchall_060 ····.catchall·{:try_start_0·..·:try_end_0}·:catchall_0
  
61 ····.line·68161 ····.line·678
62 ····invoke-static·{v0,·v1},·Landroid/os/Binder;->restoreCallingIdentity(J)V62 ····invoke-static·{v0,·v1},·Landroid/os/Binder;->restoreCallingIdentity(J)V
  
63 ····.line·68563 ····.line·682
64 ····move-object·p1,·p264 ····move-object·p1,·p2
  
65 ····check-cast·p1,·Landroid/bluetooth/BluetoothPan;65 ····check-cast·p1,·Landroid/bluetooth/BluetoothPan;
  
66 ····invoke-virtual·{p1},·Landroid/bluetooth/BluetoothPan;->isTetheringOn()Z66 ····invoke-virtual·{p1},·Landroid/bluetooth/BluetoothPan;->isTetheringOn()Z
  
67 ····move-result·p167 ····move-result·p1
Offset 88, 38 lines modifiedOffset 88, 38 lines modified
88 ····const/4·p1,·0x088 ····const/4·p1,·0x0
  
89 ····goto·:goto_089 ····goto·:goto_0
  
90 ····:cond_090 ····:cond_0
91 ····move·p1,·v191 ····move·p1,·v1
  
92 ····.line·68892 ····.line·685
93 ····:goto_093 ····:goto_0
94 ····iget-object·v0,·p0,·Lcom/android/networkstack/tethering/Tethering$3;->this$0:Lcom/android/networkstack/tethering/Tethering;94 ····iget-object·v0,·p0,·Lcom/android/networkstack/tethering/Tethering$3;->this$0:Lcom/android/networkstack/tethering/Tethering;
  
95 ····iget-object·v2,·p0,·Lcom/android/networkstack/tethering/Tethering$3;->val$listener:Landroid/net/IIntResultListener;95 ····iget-object·v2,·p0,·Lcom/android/networkstack/tethering/Tethering$3;->val$listener:Landroid/net/IIntResultListener;
  
96 ····const/4·v3,·0x296 ····const/4·v3,·0x2
  
97 ····invoke-static·{v0,·v2,·p1,·v3},·Lcom/android/networkstack/tethering/Tethering;->access$1300(Lcom/android/networkstack/tethering/Tethering;Landroid/net/IIntResultListener;II)V97 ····invoke-static·{v0,·v2,·p1,·v3},·Lcom/android/networkstack/tethering/Tethering;->access$1300(Lcom/android/networkstack/tethering/Tethering;Landroid/net/IIntResultListener;II)V
  
98 ····.line·68998 ····.line·686
99 ····iget-object·p0,·p0,·Lcom/android/networkstack/tethering/Tethering$3;->val$adapter:Landroid/bluetooth/BluetoothAdapter;99 ····iget-object·p0,·p0,·Lcom/android/networkstack/tethering/Tethering$3;->val$adapter:Landroid/bluetooth/BluetoothAdapter;
  
100 ····invoke-virtual·{p0,·v1,·p2},·Landroid/bluetooth/BluetoothAdapter;->closeProfileProxy(ILandroid/bluetooth/BluetoothProfile;)V100 ····invoke-virtual·{p0,·v1,·p2},·Landroid/bluetooth/BluetoothAdapter;->closeProfileProxy(ILandroid/bluetooth/BluetoothProfile;)V
  
101 ····return-void101 ····return-void
  
102 ····:catchall_0102 ····:catchall_0
103 ····move-exception·p0103 ····move-exception·p0
  
104 ····.line·681104 ····.line·678
105 ····invoke-static·{v0,·v1},·Landroid/os/Binder;->restoreCallingIdentity(J)V105 ····invoke-static·{v0,·v1},·Landroid/os/Binder;->restoreCallingIdentity(J)V
  
106 ····.line·682106 ····.line·679
107 ····throw·p0107 ····throw·p0
108 .end·method108 .end·method
  
109 .method·public·onServiceDisconnected(I)V109 .method·public·onServiceDisconnected(I)V
110 ····.locals·0110 ····.locals·0
  
111 ····return-void111 ····return-void
2.4 KB
smali/com/android/networkstack/tethering/Tethering$4.smali
    
Offset 18, 64 lines modifiedOffset 18, 64 lines modified
18 .field·final·synthetic·this$0:Lcom/android/networkstack/tethering/Tethering;18 .field·final·synthetic·this$0:Lcom/android/networkstack/tethering/Tethering;
  
  
19 #·direct·methods19 #·direct·methods
20 .method·constructor·<init>(Lcom/android/networkstack/tethering/Tethering;)V20 .method·constructor·<init>(Lcom/android/networkstack/tethering/Tethering;)V
21 ····.locals·021 ····.locals·0
  
22 ····.line·230422 ····.line·2308
23 ····iput-object·p1,·p0,·Lcom/android/networkstack/tethering/Tethering$4;->this$0:Lcom/android/networkstack/tethering/Tethering;23 ····iput-object·p1,·p0,·Lcom/android/networkstack/tethering/Tethering$4;->this$0:Lcom/android/networkstack/tethering/Tethering;
  
24 ····invoke-direct·{p0},·Landroid/net/ip/IpServer$Callback;-><init>()V24 ····invoke-direct·{p0},·Landroid/net/ip/IpServer$Callback;-><init>()V
  
25 ····return-void25 ····return-void
26 .end·method26 .end·method
  
  
27 #·virtual·methods27 #·virtual·methods
28 .method·public·dhcpLeasesChanged()V28 .method·public·dhcpLeasesChanged()V
29 ····.locals·129 ····.locals·1
  
30 ····.line·231730 ····.line·2321
31 ····iget-object·p0,·p0,·Lcom/android/networkstack/tethering/Tethering$4;->this$0:Lcom/android/networkstack/tethering/Tethering;31 ····iget-object·p0,·p0,·Lcom/android/networkstack/tethering/Tethering$4;->this$0:Lcom/android/networkstack/tethering/Tethering;
  
32 ····const/4·v0,·0x032 ····const/4·v0,·0x0
  
33 ····invoke-static·{p0,·v0},·Lcom/android/networkstack/tethering/Tethering;->access$1200(Lcom/android/networkstack/tethering/Tethering;Ljava/util/List;)V33 ····invoke-static·{p0,·v0},·Lcom/android/networkstack/tethering/Tethering;->access$1200(Lcom/android/networkstack/tethering/Tethering;Ljava/util/List;)V
  
34 ····return-void34 ····return-void
35 .end·method35 .end·method
  
36 .method·public·requestEnableTethering(IZ)V36 .method·public·requestEnableTethering(IZ)V
37 ····.locals·137 ····.locals·1
  
38 ····.line·232238 ····.line·2326
39 ····iget-object·p0,·p0,·Lcom/android/networkstack/tethering/Tethering$4;->this$0:Lcom/android/networkstack/tethering/Tethering;39 ····iget-object·p0,·p0,·Lcom/android/networkstack/tethering/Tethering$4;->this$0:Lcom/android/networkstack/tethering/Tethering;
  
40 ····const/4·v0,·0x040 ····const/4·v0,·0x0
  
41 ····invoke-static·{p0,·p1,·p2,·v0},·Lcom/android/networkstack/tethering/Tethering;->access$5400(Lcom/android/networkstack/tethering/Tethering;IZLandroid/net/IIntResultListener;)V41 ····invoke-static·{p0,·p1,·p2,·v0},·Lcom/android/networkstack/tethering/Tethering;->access$5400(Lcom/android/networkstack/tethering/Tethering;IZLandroid/net/IIntResultListener;)V
  
42 ····return-void42 ····return-void
43 .end·method43 .end·method
  
44 .method·public·updateInterfaceState(Landroid/net/ip/IpServer;II)V44 .method·public·updateInterfaceState(Landroid/net/ip/IpServer;II)V
45 ····.locals·045 ····.locals·0
  
46 ····.line·230746 ····.line·2311
47 ····iget-object·p0,·p0,·Lcom/android/networkstack/tethering/Tethering$4;->this$0:Lcom/android/networkstack/tethering/Tethering;47 ····iget-object·p0,·p0,·Lcom/android/networkstack/tethering/Tethering$4;->this$0:Lcom/android/networkstack/tethering/Tethering;
  
48 ····invoke-static·{p0,·p1,·p2,·p3},·Lcom/android/networkstack/tethering/Tethering;->access$5200(Lcom/android/networkstack/tethering/Tethering;Landroid/net/ip/IpServer;II)V48 ····invoke-static·{p0,·p1,·p2,·p3},·Lcom/android/networkstack/tethering/Tethering;->access$5200(Lcom/android/networkstack/tethering/Tethering;Landroid/net/ip/IpServer;II)V
  
49 ····return-void49 ····return-void
50 .end·method50 .end·method
  
51 .method·public·updateLinkProperties(Landroid/net/ip/IpServer;Landroid/net/LinkProperties;)V51 .method·public·updateLinkProperties(Landroid/net/ip/IpServer;Landroid/net/LinkProperties;)V
52 ····.locals·052 ····.locals·0
  
53 ····.line·231253 ····.line·2316
54 ····iget-object·p0,·p0,·Lcom/android/networkstack/tethering/Tethering$4;->this$0:Lcom/android/networkstack/tethering/Tethering;54 ····iget-object·p0,·p0,·Lcom/android/networkstack/tethering/Tethering$4;->this$0:Lcom/android/networkstack/tethering/Tethering;
  
55 ····invoke-static·{p0,·p1,·p2},·Lcom/android/networkstack/tethering/Tethering;->access$5300(Lcom/android/networkstack/tethering/Tethering;Landroid/net/ip/IpServer;Landroid/net/LinkProperties;)V55 ····invoke-static·{p0,·p1,·p2},·Lcom/android/networkstack/tethering/Tethering;->access$5300(Lcom/android/networkstack/tethering/Tethering;Landroid/net/ip/IpServer;Landroid/net/LinkProperties;)V
  
56 ····return-void56 ····return-void
57 .end·method57 .end·method
25.4 KB
smali/com/android/networkstack/tethering/Tethering$StateReceiver.smali
    
Offset 18, 57 lines modifiedOffset 18, 57 lines modified
18 .field·final·synthetic·this$0:Lcom/android/networkstack/tethering/Tethering;18 .field·final·synthetic·this$0:Lcom/android/networkstack/tethering/Tethering;
  
  
19 #·direct·methods19 #·direct·methods
20 .method·private·constructor·<init>(Lcom/android/networkstack/tethering/Tethering;)V20 .method·private·constructor·<init>(Lcom/android/networkstack/tethering/Tethering;)V
21 ····.locals·021 ····.locals·0
  
22 ····.line·91422 ····.line·911
23 ····iput-object·p1,·p0,·Lcom/android/networkstack/tethering/Tethering$StateReceiver;->this$0:Lcom/android/networkstack/tethering/Tethering;23 ····iput-object·p1,·p0,·Lcom/android/networkstack/tethering/Tethering$StateReceiver;->this$0:Lcom/android/networkstack/tethering/Tethering;
  
24 ····invoke-direct·{p0},·Landroid/content/BroadcastReceiver;-><init>()V24 ····invoke-direct·{p0},·Landroid/content/BroadcastReceiver;-><init>()V
  
25 ····return-void25 ····return-void
26 .end·method26 .end·method
  
27 .method·synthetic·constructor·<init>(Lcom/android/networkstack/tethering/Tethering;Lcom/android/networkstack/tethering/Tethering$1;)V27 .method·synthetic·constructor·<init>(Lcom/android/networkstack/tethering/Tethering;Lcom/android/networkstack/tethering/Tethering$1;)V
28 ····.locals·028 ····.locals·0
  
29 ····.line·91429 ····.line·911
30 ····invoke-direct·{p0,·p1},·Lcom/android/networkstack/tethering/Tethering$StateReceiver;-><init>(Lcom/android/networkstack/tethering/Tethering;)V30 ····invoke-direct·{p0,·p1},·Lcom/android/networkstack/tethering/Tethering$StateReceiver;-><init>(Lcom/android/networkstack/tethering/Tethering;)V
  
31 ····return-void31 ····return-void
32 .end·method32 .end·method
  
33 .method·private·handleConnectivityAction(Landroid/content/Intent;)V33 .method·private·handleConnectivityAction(Landroid/content/Intent;)V
34 ····.locals·134 ····.locals·1
  
35 ····const-string·v0,·"networkInfo"35 ····const-string·v0,·"networkInfo"
  
36 ····.line·94436 ····.line·941
37 ····invoke-virtual·{p1,·v0},·Landroid/content/Intent;->getParcelableExtra(Ljava/lang/String;)Landroid/os/Parcelable;37 ····invoke-virtual·{p1,·v0},·Landroid/content/Intent;->getParcelableExtra(Ljava/lang/String;)Landroid/os/Parcelable;
  
38 ····move-result-object·p138 ····move-result-object·p1
  
39 ····check-cast·p1,·Landroid/net/NetworkInfo;39 ····check-cast·p1,·Landroid/net/NetworkInfo;
  
40 ····if-eqz·p1,·:cond_140 ····if-eqz·p1,·:cond_1
  
41 ····.line·94641 ····.line·943
42 ····invoke-virtual·{p1},·Landroid/net/NetworkInfo;->getDetailedState()Landroid/net/NetworkInfo$DetailedState;42 ····invoke-virtual·{p1},·Landroid/net/NetworkInfo;->getDetailedState()Landroid/net/NetworkInfo$DetailedState;
  
43 ····move-result-object·p143 ····move-result-object·p1
  
44 ····sget-object·v0,·Landroid/net/NetworkInfo$DetailedState;->FAILED:Landroid/net/NetworkInfo$DetailedState;44 ····sget-object·v0,·Landroid/net/NetworkInfo$DetailedState;->FAILED:Landroid/net/NetworkInfo$DetailedState;
  
45 ····if-ne·p1,·v0,·:cond_045 ····if-ne·p1,·v0,·:cond_0
  
46 ····goto·:goto_046 ····goto·:goto_0
  
47 ····.line·95147 ····.line·948
48 ····:cond_048 ····:cond_0
49 ····iget-object·p0,·p0,·Lcom/android/networkstack/tethering/Tethering$StateReceiver;->this$0:Lcom/android/networkstack/tethering/Tethering;49 ····iget-object·p0,·p0,·Lcom/android/networkstack/tethering/Tethering$StateReceiver;->this$0:Lcom/android/networkstack/tethering/Tethering;
  
50 ····invoke-static·{p0},·Lcom/android/networkstack/tethering/Tethering;->access$2100(Lcom/android/networkstack/tethering/Tethering;)Lcom/android/networkstack/tethering/util/StateMachine;50 ····invoke-static·{p0},·Lcom/android/networkstack/tethering/Tethering;->access$2100(Lcom/android/networkstack/tethering/Tethering;)Lcom/android/networkstack/tethering/util/StateMachine;
  
51 ····move-result-object·p051 ····move-result-object·p0
  
Offset 80, 71 lines modifiedOffset 80, 71 lines modified
80 ····:goto_080 ····:goto_0
81 ····return-void81 ····return-void
82 .end·method82 .end·method
  
83 .method·private·handleDataSaverChanged()V83 .method·private·handleDataSaverChanged()V
84 ····.locals·284 ····.locals·2
  
85 ····.line·106885 ····.line·1065
86 ····iget-object·v0,·p0,·Lcom/android/networkstack/tethering/Tethering$StateReceiver;->this$0:Lcom/android/networkstack/tethering/Tethering;86 ····iget-object·v0,·p0,·Lcom/android/networkstack/tethering/Tethering$StateReceiver;->this$0:Lcom/android/networkstack/tethering/Tethering;
  
87 ····invoke-static·{v0},·Lcom/android/networkstack/tethering/Tethering;->access$500(Lcom/android/networkstack/tethering/Tethering;)Landroid/content/Context;87 ····invoke-static·{v0},·Lcom/android/networkstack/tethering/Tethering;->access$500(Lcom/android/networkstack/tethering/Tethering;)Landroid/content/Context;
  
88 ····move-result-object·v088 ····move-result-object·v0
  
89 ····const-string·v1,·"connectivity"89 ····const-string·v1,·"connectivity"
  
90 ····invoke-virtual·{v0,·v1},·Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;90 ····invoke-virtual·{v0,·v1},·Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
  
91 ····move-result-object·v091 ····move-result-object·v0
  
92 ····check-cast·v0,·Landroid/net/ConnectivityManager;92 ····check-cast·v0,·Landroid/net/ConnectivityManager;
  
93 ····.line·107093 ····.line·1067
94 ····invoke-virtual·{v0},·Landroid/net/ConnectivityManager;->getRestrictBackgroundStatus()I94 ····invoke-virtual·{v0},·Landroid/net/ConnectivityManager;->getRestrictBackgroundStatus()I
  
95 ····move-result·v095 ····move-result·v0
  
96 ····const/4·v1,·0x196 ····const/4·v1,·0x1
  
97 ····if-eq·v0,·v1,·:cond_097 ····if-eq·v0,·v1,·:cond_0
  
98 ····goto·:goto_098 ····goto·:goto_0
  
99 ····:cond_099 ····:cond_0
100 ····const/4·v1,·0x0100 ····const/4·v1,·0x0
  
101 ····.line·1073101 ····.line·1070
102 ····:goto_0102 ····:goto_0
103 ····iget-object·v0,·p0,·Lcom/android/networkstack/tethering/Tethering$StateReceiver;->this$0:Lcom/android/networkstack/tethering/Tethering;103 ····iget-object·v0,·p0,·Lcom/android/networkstack/tethering/Tethering$StateReceiver;->this$0:Lcom/android/networkstack/tethering/Tethering;
  
104 ····invoke-static·{v0},·Lcom/android/networkstack/tethering/Tethering;->access$2900(Lcom/android/networkstack/tethering/Tethering;)Z104 ····invoke-static·{v0},·Lcom/android/networkstack/tethering/Tethering;->access$2900(Lcom/android/networkstack/tethering/Tethering;)Z
  
105 ····move-result·v0105 ····move-result·v0
  
106 ····if-ne·v0,·v1,·:cond_1106 ····if-ne·v0,·v1,·:cond_1
  
107 ····return-void107 ····return-void
  
108 ····.line·1075108 ····.line·1072
109 ····:cond_1109 ····:cond_1
110 ····iget-object·v0,·p0,·Lcom/android/networkstack/tethering/Tethering$StateReceiver;->this$0:Lcom/android/networkstack/tethering/Tethering;110 ····iget-object·v0,·p0,·Lcom/android/networkstack/tethering/Tethering$StateReceiver;->this$0:Lcom/android/networkstack/tethering/Tethering;
  
111 ····invoke-static·{v0,·v1},·Lcom/android/networkstack/tethering/Tethering;->access$2902(Lcom/android/networkstack/tethering/Tethering;Z)Z111 ····invoke-static·{v0,·v1},·Lcom/android/networkstack/tethering/Tethering;->access$2902(Lcom/android/networkstack/tethering/Tethering;Z)Z
  
112 ····.line·1076112 ····.line·1073
113 ····iget-object·v0,·p0,·Lcom/android/networkstack/tethering/Tethering$StateReceiver;->this$0:Lcom/android/networkstack/tethering/Tethering;113 ····iget-object·v0,·p0,·Lcom/android/networkstack/tethering/Tethering$StateReceiver;->this$0:Lcom/android/networkstack/tethering/Tethering;
  
114 ····invoke-static·{v0},·Lcom/android/networkstack/tethering/Tethering;->access$2900(Lcom/android/networkstack/tethering/Tethering;)Z114 ····invoke-static·{v0},·Lcom/android/networkstack/tethering/Tethering;->access$2900(Lcom/android/networkstack/tethering/Tethering;)Z
  
115 ····move-result·v0115 ····move-result·v0
  
116 ····if-eqz·v0,·:cond_2116 ····if-eqz·v0,·:cond_2
  
117 ····.line·1077117 ····.line·1074
118 ····iget-object·p0,·p0,·Lcom/android/networkstack/tethering/Tethering$StateReceiver;->this$0:Lcom/android/networkstack/tethering/Tethering;118 ····iget-object·p0,·p0,·Lcom/android/networkstack/tethering/Tethering$StateReceiver;->this$0:Lcom/android/networkstack/tethering/Tethering;
  
119 ····invoke-virtual·{p0},·Lcom/android/networkstack/tethering/Tethering;->untetherAll()V119 ····invoke-virtual·{p0},·Lcom/android/networkstack/tethering/Tethering;->untetherAll()V
  
120 ····:cond_2120 ····:cond_2
... Open expanded diff ...
4.99 KB
smali/com/android/networkstack/tethering/Tethering$ActiveDataSubIdListener.smali
    
Offset 18, 29 lines modifiedOffset 18, 29 lines modified
18 .field·final·synthetic·this$0:Lcom/android/networkstack/tethering/Tethering;18 .field·final·synthetic·this$0:Lcom/android/networkstack/tethering/Tethering;
  
  
19 #·direct·methods19 #·direct·methods
20 .method·constructor·<init>(Lcom/android/networkstack/tethering/Tethering;Ljava/util/concurrent/Executor;)V20 .method·constructor·<init>(Lcom/android/networkstack/tethering/Tethering;Ljava/util/concurrent/Executor;)V
21 ····.locals·021 ····.locals·0
  
22 ····.line·41522 ····.line·412
23 ····iput-object·p1,·p0,·Lcom/android/networkstack/tethering/Tethering$ActiveDataSubIdListener;->this$0:Lcom/android/networkstack/tethering/Tethering;23 ····iput-object·p1,·p0,·Lcom/android/networkstack/tethering/Tethering$ActiveDataSubIdListener;->this$0:Lcom/android/networkstack/tethering/Tethering;
  
24 ····.line·41624 ····.line·413
25 ····invoke-direct·{p0,·p2},·Landroid/telephony/PhoneStateListener;-><init>(Ljava/util/concurrent/Executor;)V25 ····invoke-direct·{p0,·p2},·Landroid/telephony/PhoneStateListener;-><init>(Ljava/util/concurrent/Executor;)V
  
26 ····return-void26 ····return-void
27 .end·method27 .end·method
  
  
28 #·virtual·methods28 #·virtual·methods
29 .method·public·onActiveDataSubscriptionIdChanged(I)V29 .method·public·onActiveDataSubscriptionIdChanged(I)V
30 ····.locals·330 ····.locals·3
  
31 ····.line·42131 ····.line·418
32 ····iget-object·v0,·p0,·Lcom/android/networkstack/tethering/Tethering$ActiveDataSubIdListener;->this$0:Lcom/android/networkstack/tethering/Tethering;32 ····iget-object·v0,·p0,·Lcom/android/networkstack/tethering/Tethering$ActiveDataSubIdListener;->this$0:Lcom/android/networkstack/tethering/Tethering;
  
33 ····invoke-static·{v0},·Lcom/android/networkstack/tethering/Tethering;->access$600(Lcom/android/networkstack/tethering/Tethering;)Landroid/net/util/SharedLog;33 ····invoke-static·{v0},·Lcom/android/networkstack/tethering/Tethering;->access$600(Lcom/android/networkstack/tethering/Tethering;)Landroid/net/util/SharedLog;
  
34 ····move-result-object·v034 ····move-result-object·v0
  
35 ····new-instance·v1,·Ljava/lang/StringBuilder;35 ····new-instance·v1,·Ljava/lang/StringBuilder;
Offset 67, 46 lines modifiedOffset 67, 46 lines modified
  
67 ····invoke-virtual·{v1},·Ljava/lang/StringBuilder;->toString()Ljava/lang/String;67 ····invoke-virtual·{v1},·Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
  
68 ····move-result-object·v168 ····move-result-object·v1
  
69 ····invoke-virtual·{v0,·v1},·Landroid/net/util/SharedLog;->log(Ljava/lang/String;)V69 ····invoke-virtual·{v0,·v1},·Landroid/net/util/SharedLog;->log(Ljava/lang/String;)V
  
70 ····.line·42370 ····.line·420
71 ····iget-object·v0,·p0,·Lcom/android/networkstack/tethering/Tethering$ActiveDataSubIdListener;->this$0:Lcom/android/networkstack/tethering/Tethering;71 ····iget-object·v0,·p0,·Lcom/android/networkstack/tethering/Tethering$ActiveDataSubIdListener;->this$0:Lcom/android/networkstack/tethering/Tethering;
  
72 ····invoke-static·{v0},·Lcom/android/networkstack/tethering/Tethering;->access$800(Lcom/android/networkstack/tethering/Tethering;)I72 ····invoke-static·{v0},·Lcom/android/networkstack/tethering/Tethering;->access$800(Lcom/android/networkstack/tethering/Tethering;)I
  
73 ····move-result·v073 ····move-result·v0
  
74 ····if-ne·p1,·v0,·:cond_074 ····if-ne·p1,·v0,·:cond_0
  
75 ····return-void75 ····return-void
  
76 ····.line·42576 ····.line·422
77 ····:cond_077 ····:cond_0
78 ····iget-object·v0,·p0,·Lcom/android/networkstack/tethering/Tethering$ActiveDataSubIdListener;->this$0:Lcom/android/networkstack/tethering/Tethering;78 ····iget-object·v0,·p0,·Lcom/android/networkstack/tethering/Tethering$ActiveDataSubIdListener;->this$0:Lcom/android/networkstack/tethering/Tethering;
  
79 ····invoke-static·{v0,·p1},·Lcom/android/networkstack/tethering/Tethering;->access$802(Lcom/android/networkstack/tethering/Tethering;I)I79 ····invoke-static·{v0,·p1},·Lcom/android/networkstack/tethering/Tethering;->access$802(Lcom/android/networkstack/tethering/Tethering;I)I
  
80 ····.line·42680 ····.line·423
81 ····iget-object·v0,·p0,·Lcom/android/networkstack/tethering/Tethering$ActiveDataSubIdListener;->this$0:Lcom/android/networkstack/tethering/Tethering;81 ····iget-object·v0,·p0,·Lcom/android/networkstack/tethering/Tethering$ActiveDataSubIdListener;->this$0:Lcom/android/networkstack/tethering/Tethering;
  
82 ····invoke-static·{v0},·Lcom/android/networkstack/tethering/Tethering;->access$900(Lcom/android/networkstack/tethering/Tethering;)V82 ····invoke-static·{v0},·Lcom/android/networkstack/tethering/Tethering;->access$900(Lcom/android/networkstack/tethering/Tethering;)V
  
83 ····.line·42783 ····.line·424
84 ····iget-object·v0,·p0,·Lcom/android/networkstack/tethering/Tethering$ActiveDataSubIdListener;->this$0:Lcom/android/networkstack/tethering/Tethering;84 ····iget-object·v0,·p0,·Lcom/android/networkstack/tethering/Tethering$ActiveDataSubIdListener;->this$0:Lcom/android/networkstack/tethering/Tethering;
  
85 ····invoke-static·{v0},·Lcom/android/networkstack/tethering/Tethering;->access$1000(Lcom/android/networkstack/tethering/Tethering;)Lcom/android/networkstack/tethering/TetheringNotificationUpdater;85 ····invoke-static·{v0},·Lcom/android/networkstack/tethering/Tethering;->access$1000(Lcom/android/networkstack/tethering/Tethering;)Lcom/android/networkstack/tethering/TetheringNotificationUpdater;
  
86 ····move-result-object·v086 ····move-result-object·v0
  
87 ····invoke-virtual·{v0,·p1},·Lcom/android/networkstack/tethering/TetheringNotificationUpdater;->onActiveDataSubscriptionIdChanged(I)V87 ····invoke-virtual·{v0,·p1},·Lcom/android/networkstack/tethering/TetheringNotificationUpdater;->onActiveDataSubscriptionIdChanged(I)V
  
88 ····.line·43188 ····.line·428
89 ····iget-object·p1,·p0,·Lcom/android/networkstack/tethering/Tethering$ActiveDataSubIdListener;->this$0:Lcom/android/networkstack/tethering/Tethering;89 ····iget-object·p1,·p0,·Lcom/android/networkstack/tethering/Tethering$ActiveDataSubIdListener;->this$0:Lcom/android/networkstack/tethering/Tethering;
  
90 ····invoke-static·{p1},·Lcom/android/networkstack/tethering/Tethering;->access$1100(Lcom/android/networkstack/tethering/Tethering;)Lcom/android/networkstack/tethering/EntitlementManager;90 ····invoke-static·{p1},·Lcom/android/networkstack/tethering/Tethering;->access$1100(Lcom/android/networkstack/tethering/Tethering;)Lcom/android/networkstack/tethering/EntitlementManager;
  
91 ····move-result-object·p191 ····move-result-object·p1
  
92 ····iget-object·v0,·p0,·Lcom/android/networkstack/tethering/Tethering$ActiveDataSubIdListener;->this$0:Lcom/android/networkstack/tethering/Tethering;92 ····iget-object·v0,·p0,·Lcom/android/networkstack/tethering/Tethering$ActiveDataSubIdListener;->this$0:Lcom/android/networkstack/tethering/Tethering;
Offset 117, 15 lines modifiedOffset 117, 15 lines modified
  
117 ····invoke-virtual·{p1,·v0},·Lcom/android/networkstack/tethering/EntitlementManager;->getCarrierConfig(Lcom/android/networkstack/tethering/TetheringConfiguration;)Landroid/os/PersistableBundle;117 ····invoke-virtual·{p1,·v0},·Lcom/android/networkstack/tethering/EntitlementManager;->getCarrierConfig(Lcom/android/networkstack/tethering/TetheringConfiguration;)Landroid/os/PersistableBundle;
  
118 ····move-result-object·p1118 ····move-result-object·p1
  
119 ····if-eqz·p1,·:cond_1119 ····if-eqz·p1,·:cond_1
  
120 ····.line·432120 ····.line·429
121 ····iget-object·p1,·p0,·Lcom/android/networkstack/tethering/Tethering$ActiveDataSubIdListener;->this$0:Lcom/android/networkstack/tethering/Tethering;121 ····iget-object·p1,·p0,·Lcom/android/networkstack/tethering/Tethering$ActiveDataSubIdListener;->this$0:Lcom/android/networkstack/tethering/Tethering;
  
122 ····invoke-static·{p1},·Lcom/android/networkstack/tethering/Tethering;->access$1100(Lcom/android/networkstack/tethering/Tethering;)Lcom/android/networkstack/tethering/EntitlementManager;122 ····invoke-static·{p1},·Lcom/android/networkstack/tethering/Tethering;->access$1100(Lcom/android/networkstack/tethering/Tethering;)Lcom/android/networkstack/tethering/EntitlementManager;
  
123 ····move-result-object·p1123 ····move-result-object·p1
  
124 ····iget-object·p0,·p0,·Lcom/android/networkstack/tethering/Tethering$ActiveDataSubIdListener;->this$0:Lcom/android/networkstack/tethering/Tethering;124 ····iget-object·p0,·p0,·Lcom/android/networkstack/tethering/Tethering$ActiveDataSubIdListener;->this$0:Lcom/android/networkstack/tethering/Tethering;
Offset 134, 15 lines modifiedOffset 134, 15 lines modified
  
134 ····move-result-object·p0134 ····move-result-object·p0
  
135 ····invoke-virtual·{p1,·p0},·Lcom/android/networkstack/tethering/EntitlementManager;->reevaluateSimCardProvisioning(Lcom/android/networkstack/tethering/TetheringConfiguration;)V135 ····invoke-virtual·{p1,·p0},·Lcom/android/networkstack/tethering/EntitlementManager;->reevaluateSimCardProvisioning(Lcom/android/networkstack/tethering/TetheringConfiguration;)V
  
136 ····goto·:goto_0136 ····goto·:goto_0
  
137 ····.line·434137 ····.line·431
138 ····:cond_1138 ····:cond_1
139 ····iget-object·p0,·p0,·Lcom/android/networkstack/tethering/Tethering$ActiveDataSubIdListener;->this$0:Lcom/android/networkstack/tethering/Tethering;139 ····iget-object·p0,·p0,·Lcom/android/networkstack/tethering/Tethering$ActiveDataSubIdListener;->this$0:Lcom/android/networkstack/tethering/Tethering;
  
140 ····invoke-static·{p0},·Lcom/android/networkstack/tethering/Tethering;->access$600(Lcom/android/networkstack/tethering/Tethering;)Landroid/net/util/SharedLog;140 ····invoke-static·{p0},·Lcom/android/networkstack/tethering/Tethering;->access$600(Lcom/android/networkstack/tethering/Tethering;)Landroid/net/util/SharedLog;
  
141 ····move-result-object·p0141 ····move-result-object·p0
  
3.01 KB
smali/com/android/networkstack/tethering/Tethering$2.smali
    
Offset 18, 54 lines modifiedOffset 18, 54 lines modified
18 .field·final·synthetic·this$0:Lcom/android/networkstack/tethering/Tethering;18 .field·final·synthetic·this$0:Lcom/android/networkstack/tethering/Tethering;
  
  
19 #·direct·methods19 #·direct·methods
20 .method·constructor·<init>(Lcom/android/networkstack/tethering/Tethering;)V20 .method·constructor·<init>(Lcom/android/networkstack/tethering/Tethering;)V
21 ····.locals·021 ····.locals·0
  
22 ····.line·33422 ····.line·331
23 ····iput-object·p1,·p0,·Lcom/android/networkstack/tethering/Tethering$2;->this$0:Lcom/android/networkstack/tethering/Tethering;23 ····iput-object·p1,·p0,·Lcom/android/networkstack/tethering/Tethering$2;->this$0:Lcom/android/networkstack/tethering/Tethering;
  
24 ····invoke-direct·{p0},·Lcom/android/networkstack/tethering/BpfCoordinator$Dependencies;-><init>()V24 ····invoke-direct·{p0},·Lcom/android/networkstack/tethering/BpfCoordinator$Dependencies;-><init>()V
  
25 ····return-void25 ····return-void
26 .end·method26 .end·method
  
  
27 #·virtual·methods27 #·virtual·methods
28 .method·public·getHandler()Landroid/os/Handler;28 .method·public·getHandler()Landroid/os/Handler;
29 ····.locals·029 ····.locals·0
  
30 ····.line·33730 ····.line·334
31 ····iget-object·p0,·p0,·Lcom/android/networkstack/tethering/Tethering$2;->this$0:Lcom/android/networkstack/tethering/Tethering;31 ····iget-object·p0,·p0,·Lcom/android/networkstack/tethering/Tethering$2;->this$0:Lcom/android/networkstack/tethering/Tethering;
  
32 ····invoke-static·{p0},·Lcom/android/networkstack/tethering/Tethering;->access$300(Lcom/android/networkstack/tethering/Tethering;)Landroid/os/Handler;32 ····invoke-static·{p0},·Lcom/android/networkstack/tethering/Tethering;->access$300(Lcom/android/networkstack/tethering/Tethering;)Landroid/os/Handler;
  
33 ····move-result-object·p033 ····move-result-object·p0
  
34 ····return-object·p034 ····return-object·p0
35 .end·method35 .end·method
  
36 .method·public·getNetd()Landroid/net/INetd;36 .method·public·getNetd()Landroid/net/INetd;
37 ····.locals·037 ····.locals·0
  
38 ····.line·34238 ····.line·339
39 ····iget-object·p0,·p0,·Lcom/android/networkstack/tethering/Tethering$2;->this$0:Lcom/android/networkstack/tethering/Tethering;39 ····iget-object·p0,·p0,·Lcom/android/networkstack/tethering/Tethering$2;->this$0:Lcom/android/networkstack/tethering/Tethering;
  
40 ····invoke-static·{p0},·Lcom/android/networkstack/tethering/Tethering;->access$400(Lcom/android/networkstack/tethering/Tethering;)Landroid/net/INetd;40 ····invoke-static·{p0},·Lcom/android/networkstack/tethering/Tethering;->access$400(Lcom/android/networkstack/tethering/Tethering;)Landroid/net/INetd;
  
41 ····move-result-object·p041 ····move-result-object·p0
  
42 ····return-object·p042 ····return-object·p0
43 .end·method43 .end·method
  
44 .method·public·getNetworkStatsManager()Landroid/app/usage/NetworkStatsManager;44 .method·public·getNetworkStatsManager()Landroid/app/usage/NetworkStatsManager;
45 ····.locals·145 ····.locals·1
  
46 ····.line·34746 ····.line·344
47 ····iget-object·p0,·p0,·Lcom/android/networkstack/tethering/Tethering$2;->this$0:Lcom/android/networkstack/tethering/Tethering;47 ····iget-object·p0,·p0,·Lcom/android/networkstack/tethering/Tethering$2;->this$0:Lcom/android/networkstack/tethering/Tethering;
  
48 ····invoke-static·{p0},·Lcom/android/networkstack/tethering/Tethering;->access$500(Lcom/android/networkstack/tethering/Tethering;)Landroid/content/Context;48 ····invoke-static·{p0},·Lcom/android/networkstack/tethering/Tethering;->access$500(Lcom/android/networkstack/tethering/Tethering;)Landroid/content/Context;
  
49 ····move-result-object·p049 ····move-result-object·p0
  
50 ····const-class·v0,·Landroid/app/usage/NetworkStatsManager;50 ····const-class·v0,·Landroid/app/usage/NetworkStatsManager;
Offset 78, 28 lines modifiedOffset 78, 28 lines modified
  
78 ····return-object·p078 ····return-object·p0
79 .end·method79 .end·method
  
80 .method·public·getSharedLog()Landroid/net/util/SharedLog;80 .method·public·getSharedLog()Landroid/net/util/SharedLog;
81 ····.locals·081 ····.locals·0
  
82 ····.line·35282 ····.line·349
83 ····iget-object·p0,·p0,·Lcom/android/networkstack/tethering/Tethering$2;->this$0:Lcom/android/networkstack/tethering/Tethering;83 ····iget-object·p0,·p0,·Lcom/android/networkstack/tethering/Tethering$2;->this$0:Lcom/android/networkstack/tethering/Tethering;
  
84 ····invoke-static·{p0},·Lcom/android/networkstack/tethering/Tethering;->access$600(Lcom/android/networkstack/tethering/Tethering;)Landroid/net/util/SharedLog;84 ····invoke-static·{p0},·Lcom/android/networkstack/tethering/Tethering;->access$600(Lcom/android/networkstack/tethering/Tethering;)Landroid/net/util/SharedLog;
  
85 ····move-result-object·p085 ····move-result-object·p0
  
86 ····return-object·p086 ····return-object·p0
87 .end·method87 .end·method
  
88 .method·public·getTetherConfig()Lcom/android/networkstack/tethering/TetheringConfiguration;88 .method·public·getTetherConfig()Lcom/android/networkstack/tethering/TetheringConfiguration;
89 ····.locals·089 ····.locals·0
  
90 ····.line·35790 ····.line·354
91 ····iget-object·p0,·p0,·Lcom/android/networkstack/tethering/Tethering$2;->this$0:Lcom/android/networkstack/tethering/Tethering;91 ····iget-object·p0,·p0,·Lcom/android/networkstack/tethering/Tethering$2;->this$0:Lcom/android/networkstack/tethering/Tethering;
  
92 ····invoke-static·{p0},·Lcom/android/networkstack/tethering/Tethering;->access$000(Lcom/android/networkstack/tethering/Tethering;)Lcom/android/networkstack/tethering/TetheringConfiguration;92 ····invoke-static·{p0},·Lcom/android/networkstack/tethering/Tethering;->access$000(Lcom/android/networkstack/tethering/Tethering;)Lcom/android/networkstack/tethering/TetheringConfiguration;
  
93 ····move-result-object·p093 ····move-result-object·p0
  
94 ····return-object·p094 ····return-object·p0
4.53 KB
smali/com/android/networkstack/tethering/Tethering$EthernetCallback.smali
    
Offset 21, 81 lines modifiedOffset 21, 81 lines modified
21 .field·final·synthetic·this$0:Lcom/android/networkstack/tethering/Tethering;21 .field·final·synthetic·this$0:Lcom/android/networkstack/tethering/Tethering;
  
  
22 #·direct·methods22 #·direct·methods
23 .method·private·constructor·<init>(Lcom/android/networkstack/tethering/Tethering;)V23 .method·private·constructor·<init>(Lcom/android/networkstack/tethering/Tethering;)V
24 ····.locals·024 ····.locals·0
  
25 ····.line·72525 ····.line·722
26 ····iput-object·p1,·p0,·Lcom/android/networkstack/tethering/Tethering$EthernetCallback;->this$0:Lcom/android/networkstack/tethering/Tethering;26 ····iput-object·p1,·p0,·Lcom/android/networkstack/tethering/Tethering$EthernetCallback;->this$0:Lcom/android/networkstack/tethering/Tethering;
  
27 ····invoke-direct·{p0},·Ljava/lang/Object;-><init>()V27 ····invoke-direct·{p0},·Ljava/lang/Object;-><init>()V
  
28 ····return-void28 ····return-void
29 .end·method29 .end·method
  
30 .method·synthetic·constructor·<init>(Lcom/android/networkstack/tethering/Tethering;Lcom/android/networkstack/tethering/Tethering$1;)V30 .method·synthetic·constructor·<init>(Lcom/android/networkstack/tethering/Tethering;Lcom/android/networkstack/tethering/Tethering$1;)V
31 ····.locals·031 ····.locals·0
  
32 ····.line·72532 ····.line·722
33 ····invoke-direct·{p0,·p1},·Lcom/android/networkstack/tethering/Tethering$EthernetCallback;-><init>(Lcom/android/networkstack/tethering/Tethering;)V33 ····invoke-direct·{p0,·p1},·Lcom/android/networkstack/tethering/Tethering$EthernetCallback;-><init>(Lcom/android/networkstack/tethering/Tethering;)V
  
34 ····return-void34 ····return-void
35 .end·method35 .end·method
  
  
36 #·virtual·methods36 #·virtual·methods
37 .method·public·onAvailable(Ljava/lang/String;)V37 .method·public·onAvailable(Ljava/lang/String;)V
38 ····.locals·338 ····.locals·3
  
39 ····.line·72839 ····.line·725
40 ····iget-object·v0,·p0,·Lcom/android/networkstack/tethering/Tethering$EthernetCallback;->this$0:Lcom/android/networkstack/tethering/Tethering;40 ····iget-object·v0,·p0,·Lcom/android/networkstack/tethering/Tethering$EthernetCallback;->this$0:Lcom/android/networkstack/tethering/Tethering;
  
41 ····invoke-static·{v0},·Lcom/android/networkstack/tethering/Tethering;->access$1500(Lcom/android/networkstack/tethering/Tethering;)Ljava/lang/Object;41 ····invoke-static·{v0},·Lcom/android/networkstack/tethering/Tethering;->access$1500(Lcom/android/networkstack/tethering/Tethering;)Ljava/lang/Object;
  
42 ····move-result-object·v042 ····move-result-object·v0
  
43 ····monitor-enter·v043 ····monitor-enter·v0
  
44 ····.line·72944 ····.line·726
45 ····:try_start_045 ····:try_start_0
46 ····iget-object·v1,·p0,·Lcom/android/networkstack/tethering/Tethering$EthernetCallback;->this$0:Lcom/android/networkstack/tethering/Tethering;46 ····iget-object·v1,·p0,·Lcom/android/networkstack/tethering/Tethering$EthernetCallback;->this$0:Lcom/android/networkstack/tethering/Tethering;
  
47 ····invoke-static·{v1},·Lcom/android/networkstack/tethering/Tethering;->access$1600(Lcom/android/networkstack/tethering/Tethering;)Lcom/android/networkstack/tethering/Tethering$EthernetCallback;47 ····invoke-static·{v1},·Lcom/android/networkstack/tethering/Tethering;->access$1600(Lcom/android/networkstack/tethering/Tethering;)Lcom/android/networkstack/tethering/Tethering$EthernetCallback;
  
48 ····move-result-object·v148 ····move-result-object·v1
  
49 ····if-eq·p0,·v1,·:cond_049 ····if-eq·p0,·v1,·:cond_0
  
50 ····.line·73150 ····.line·728
51 ····monitor-exit·v051 ····monitor-exit·v0
  
52 ····return-void52 ····return-void
  
53 ····.line·73353 ····.line·730
54 ····:cond_054 ····:cond_0
55 ····iget-object·v1,·p0,·Lcom/android/networkstack/tethering/Tethering$EthernetCallback;->this$0:Lcom/android/networkstack/tethering/Tethering;55 ····iget-object·v1,·p0,·Lcom/android/networkstack/tethering/Tethering$EthernetCallback;->this$0:Lcom/android/networkstack/tethering/Tethering;
  
56 ····const/4·v2,·0x556 ····const/4·v2,·0x5
  
57 ····invoke-static·{v1,·p1,·v2},·Lcom/android/networkstack/tethering/Tethering;->access$1700(Lcom/android/networkstack/tethering/Tethering;Ljava/lang/String;I)V57 ····invoke-static·{v1,·p1,·v2},·Lcom/android/networkstack/tethering/Tethering;->access$1700(Lcom/android/networkstack/tethering/Tethering;Ljava/lang/String;I)V
  
58 ····.line·73458 ····.line·731
59 ····iget-object·v1,·p0,·Lcom/android/networkstack/tethering/Tethering$EthernetCallback;->this$0:Lcom/android/networkstack/tethering/Tethering;59 ····iget-object·v1,·p0,·Lcom/android/networkstack/tethering/Tethering$EthernetCallback;->this$0:Lcom/android/networkstack/tethering/Tethering;
  
60 ····const/4·v2,·0x260 ····const/4·v2,·0x2
  
61 ····invoke-static·{v1,·p1,·v2},·Lcom/android/networkstack/tethering/Tethering;->access$1800(Lcom/android/networkstack/tethering/Tethering;Ljava/lang/String;I)V61 ····invoke-static·{v1,·p1,·v2},·Lcom/android/networkstack/tethering/Tethering;->access$1800(Lcom/android/networkstack/tethering/Tethering;Ljava/lang/String;I)V
  
62 ····.line·73562 ····.line·732
63 ····iget-object·p0,·p0,·Lcom/android/networkstack/tethering/Tethering$EthernetCallback;->this$0:Lcom/android/networkstack/tethering/Tethering;63 ····iget-object·p0,·p0,·Lcom/android/networkstack/tethering/Tethering$EthernetCallback;->this$0:Lcom/android/networkstack/tethering/Tethering;
  
64 ····invoke-static·{p0,·p1},·Lcom/android/networkstack/tethering/Tethering;->access$1902(Lcom/android/networkstack/tethering/Tethering;Ljava/lang/String;)Ljava/lang/String;64 ····invoke-static·{p0,·p1},·Lcom/android/networkstack/tethering/Tethering;->access$1902(Lcom/android/networkstack/tethering/Tethering;Ljava/lang/String;)Ljava/lang/String;
  
65 ····.line·73665 ····.line·733
66 ····monitor-exit·v066 ····monitor-exit·v0
  
67 ····return-void67 ····return-void
  
68 ····:catchall_068 ····:catchall_0
69 ····move-exception·p069 ····move-exception·p0
  
Offset 105, 45 lines modifiedOffset 105, 45 lines modified
  
105 ····throw·p0105 ····throw·p0
106 .end·method106 .end·method
  
107 .method·public·onUnavailable()V107 .method·public·onUnavailable()V
108 ····.locals·2108 ····.locals·2
  
109 ····.line·741109 ····.line·738
110 ····iget-object·v0,·p0,·Lcom/android/networkstack/tethering/Tethering$EthernetCallback;->this$0:Lcom/android/networkstack/tethering/Tethering;110 ····iget-object·v0,·p0,·Lcom/android/networkstack/tethering/Tethering$EthernetCallback;->this$0:Lcom/android/networkstack/tethering/Tethering;
  
111 ····invoke-static·{v0},·Lcom/android/networkstack/tethering/Tethering;->access$1500(Lcom/android/networkstack/tethering/Tethering;)Ljava/lang/Object;111 ····invoke-static·{v0},·Lcom/android/networkstack/tethering/Tethering;->access$1500(Lcom/android/networkstack/tethering/Tethering;)Ljava/lang/Object;
  
112 ····move-result-object·v0112 ····move-result-object·v0
  
113 ····monitor-enter·v0113 ····monitor-enter·v0
  
114 ····.line·742114 ····.line·739
115 ····:try_start_0115 ····:try_start_0
116 ····iget-object·v1,·p0,·Lcom/android/networkstack/tethering/Tethering$EthernetCallback;->this$0:Lcom/android/networkstack/tethering/Tethering;116 ····iget-object·v1,·p0,·Lcom/android/networkstack/tethering/Tethering$EthernetCallback;->this$0:Lcom/android/networkstack/tethering/Tethering;
  
117 ····invoke-static·{v1},·Lcom/android/networkstack/tethering/Tethering;->access$1600(Lcom/android/networkstack/tethering/Tethering;)Lcom/android/networkstack/tethering/Tethering$EthernetCallback;117 ····invoke-static·{v1},·Lcom/android/networkstack/tethering/Tethering;->access$1600(Lcom/android/networkstack/tethering/Tethering;)Lcom/android/networkstack/tethering/Tethering$EthernetCallback;
  
118 ····move-result-object·v1118 ····move-result-object·v1
  
119 ····if-eq·p0,·v1,·:cond_0119 ····if-eq·p0,·v1,·:cond_0
  
120 ····.line·744120 ····.line·741
121 ····monitor-exit·v0121 ····monitor-exit·v0
  
122 ····return-void122 ····return-void
  
123 ····.line·746123 ····.line·743
124 ····:cond_0124 ····:cond_0
125 ····iget-object·p0,·p0,·Lcom/android/networkstack/tethering/Tethering$EthernetCallback;->this$0:Lcom/android/networkstack/tethering/Tethering;125 ····iget-object·p0,·p0,·Lcom/android/networkstack/tethering/Tethering$EthernetCallback;->this$0:Lcom/android/networkstack/tethering/Tethering;
  
126 ····invoke-static·{p0},·Lcom/android/networkstack/tethering/Tethering;->access$2000(Lcom/android/networkstack/tethering/Tethering;)V126 ····invoke-static·{p0},·Lcom/android/networkstack/tethering/Tethering;->access$2000(Lcom/android/networkstack/tethering/Tethering;)V
  
127 ····.line·747127 ····.line·744
128 ····monitor-exit·v0128 ····monitor-exit·v0
  
129 ····return-void129 ····return-void
  
130 ····:catchall_0130 ····:catchall_0
131 ····move-exception·p0131 ····move-exception·p0
  
... Open expanded diff ...
717 B
smali/com/android/networkstack/tethering/R$bool.smali
    
Offset 4, 12 lines modifiedOffset 4, 10 lines modified
  
  
4 #·static·fields4 #·static·fields
5 .field·public·static·final·config_tether_enable_bpf_offload:I·=·0x7f0200005 .field·public·static·final·config_tether_enable_bpf_offload:I·=·0x7f020000
  
6 .field·public·static·final·config_tether_enable_legacy_dhcp_server:I·=·0x7f0200016 .field·public·static·final·config_tether_enable_legacy_dhcp_server:I·=·0x7f020001
  
7 .field·public·static·final·config_tether_enable_legacy_wifi_p2p_dedicated_ip:I·=·0x7f0200027 .field·public·static·final·config_tether_upstream_automatic:I·=·0x7f020002
  
8 .field·public·static·final·config_tether_upstream_automatic:I·=·0x7f020003 
  
9 .field·public·static·final·config_upstream_roaming_notification:I·=·0x7f0200048 .field·public·static·final·config_upstream_roaming_notification:I·=·0x7f020003
48.9 KB
smali/com/android/networkstack/tethering/TetheringConfiguration.smali
    
Offset 22, 18 lines modifiedOffset 22, 14 lines modified
  
22 .field·public·final·isDunRequired:Z22 .field·public·final·isDunRequired:Z
  
23 .field·public·final·legacyDhcpRanges:[Ljava/lang/String;23 .field·public·final·legacyDhcpRanges:[Ljava/lang/String;
  
24 .field·private·final·mEnableBpfOffload:Z24 .field·private·final·mEnableBpfOffload:Z
  
25 .field·private·final·mEnableSelectAllPrefixRange:Z 
  
26 .field·private·final·mEnableWifiP2pDedicatedIp:Z 
  
27 .field·private·final·mOffloadPollInterval:I25 .field·private·final·mOffloadPollInterval:I
  
28 .field·public·final·preferredUpstreamIfaceTypes:Ljava/util/Collection;26 .field·public·final·preferredUpstreamIfaceTypes:Ljava/util/Collection;
29 ····.annotation·system·Ldalvik/annotation/Signature;27 ····.annotation·system·Ldalvik/annotation/Signature;
30 ········value·=·{28 ········value·=·{
31 ············"Ljava/util/Collection<",29 ············"Ljava/util/Collection<",
32 ············"Ljava/lang/Integer;",30 ············"Ljava/lang/Integer;",
Offset 67, 15 lines modifiedOffset 63, 15 lines modified
67 .method·static·constructor·<clinit>()V63 .method·static·constructor·<clinit>()V
68 ····.locals·1764 ····.locals·17
  
69 ····const/4·v0,·0x065 ····const/4·v0,·0x0
  
70 ····new-array·v0,·v0,·[Ljava/lang/String;66 ····new-array·v0,·v0,·[Ljava/lang/String;
  
71 ····.line·5767 ····.line·58
72 ····sput-object·v0,·Lcom/android/networkstack/tethering/TetheringConfiguration;->EMPTY_STRING_ARRAY:[Ljava/lang/String;68 ····sput-object·v0,·Lcom/android/networkstack/tethering/TetheringConfiguration;->EMPTY_STRING_ARRAY:[Ljava/lang/String;
  
73 ····const-string·v1,·"192.168.42.2"69 ····const-string·v1,·"192.168.42.2"
  
74 ····const-string·v2,·"192.168.42.254"70 ····const-string·v2,·"192.168.42.254"
  
75 ····const-string·v3,·"192.168.43.2"71 ····const-string·v3,·"192.168.43.2"
Offset 102, 235 lines modifiedOffset 98, 215 lines modified
  
102 ····const-string·v14,·"192.168.48.254"98 ····const-string·v14,·"192.168.48.254"
  
103 ····const-string·v15,·"192.168.49.2"99 ····const-string·v15,·"192.168.49.2"
  
104 ····const-string·v16,·"192.168.49.254"100 ····const-string·v16,·"192.168.49.254"
  
105 ····.line·65101 ····.line·66
106 ····filled-new-array/range·{v1·..·v16},·[Ljava/lang/String;102 ····filled-new-array/range·{v1·..·v16},·[Ljava/lang/String;
  
107 ····move-result-object·v0103 ····move-result-object·v0
  
108 ····sput-object·v0,·Lcom/android/networkstack/tethering/TetheringConfiguration;->LEGACY_DHCP_DEFAULT_RANGE:[Ljava/lang/String;104 ····sput-object·v0,·Lcom/android/networkstack/tethering/TetheringConfiguration;->LEGACY_DHCP_DEFAULT_RANGE:[Ljava/lang/String;
  
109 ····const-string·v0,·"8.8.4.4"105 ····const-string·v0,·"8.8.4.4"
  
110 ····const-string·v1,·"8.8.8.8"106 ····const-string·v1,·"8.8.8.8"
  
111 ····.line·72107 ····.line·73
112 ····filled-new-array·{v0,·v1},·[Ljava/lang/String;108 ····filled-new-array·{v0,·v1},·[Ljava/lang/String;
  
113 ····move-result-object·v0109 ····move-result-object·v0
  
114 ····sput-object·v0,·Lcom/android/networkstack/tethering/TetheringConfiguration;->DEFAULT_IPV4_DNS:[Ljava/lang/String;110 ····sput-object·v0,·Lcom/android/networkstack/tethering/TetheringConfiguration;->DEFAULT_IPV4_DNS:[Ljava/lang/String;
  
115 ····return-void111 ····return-void
116 .end·method112 .end·method
  
117 .method·public·constructor·<init>(Landroid/content/Context;Landroid/net/util/SharedLog;I)V113 .method·public·constructor·<init>(Landroid/content/Context;Landroid/net/util/SharedLog;I)V
118 ····.locals·2114 ····.locals·1
  
119 ····.line·129115 ····.line·117
120 ····invoke-direct·{p0},·Ljava/lang/Object;-><init>()V116 ····invoke-direct·{p0},·Ljava/lang/Object;-><init>()V
  
121 ····const-string·v0,·"config"117 ····const-string·v0,·"config"
  
122 ····.line·130118 ····.line·118
123 ····invoke-virtual·{p2,·v0},·Landroid/net/util/SharedLog;->forSubComponent(Ljava/lang/String;)Landroid/net/util/SharedLog;119 ····invoke-virtual·{p2,·v0},·Landroid/net/util/SharedLog;->forSubComponent(Ljava/lang/String;)Landroid/net/util/SharedLog;
  
124 ····move-result-object·p2120 ····move-result-object·p2
  
125 ····.line·132121 ····.line·120
126 ····iput·p3,·p0,·Lcom/android/networkstack/tethering/TetheringConfiguration;->activeDataSubId:I122 ····iput·p3,·p0,·Lcom/android/networkstack/tethering/TetheringConfiguration;->activeDataSubId:I
  
127 ····.line·133123 ····.line·121
128 ····invoke-direct·{p0,·p1,·p3},·Lcom/android/networkstack/tethering/TetheringConfiguration;->getResources(Landroid/content/Context;I)Landroid/content/res/Resources;124 ····invoke-direct·{p0,·p1,·p3},·Lcom/android/networkstack/tethering/TetheringConfiguration;->getResources(Landroid/content/Context;I)Landroid/content/res/Resources;
  
129 ····move-result-object·p3125 ····move-result-object·p3
  
130 ····.line·135126 ····.line·123
131 ····sget·v0,·Lcom/android/networkstack/tethering/R$array;->config_tether_usb_regexs:I127 ····sget·v0,·Lcom/android/networkstack/tethering/R$array;->config_tether_usb_regexs:I
  
132 ····invoke-static·{p3,·v0},·Lcom/android/networkstack/tethering/TetheringConfiguration;->getResourceStringArray(Landroid/content/res/Resources;I)[Ljava/lang/String;128 ····invoke-static·{p3,·v0},·Lcom/android/networkstack/tethering/TetheringConfiguration;->getResourceStringArray(Landroid/content/res/Resources;I)[Ljava/lang/String;
  
133 ····move-result-object·v0129 ····move-result-object·v0
  
134 ····iput-object·v0,·p0,·Lcom/android/networkstack/tethering/TetheringConfiguration;->tetherableUsbRegexs:[Ljava/lang/String;130 ····iput-object·v0,·p0,·Lcom/android/networkstack/tethering/TetheringConfiguration;->tetherableUsbRegexs:[Ljava/lang/String;
  
135 ····.line·136131 ····.line·124
136 ····sget·v0,·Lcom/android/networkstack/tethering/R$array;->config_tether_ncm_regexs:I132 ····sget·v0,·Lcom/android/networkstack/tethering/R$array;->config_tether_ncm_regexs:I
  
137 ····invoke-static·{p3,·v0},·Lcom/android/networkstack/tethering/TetheringConfiguration;->getResourceStringArray(Landroid/content/res/Resources;I)[Ljava/lang/String;133 ····invoke-static·{p3,·v0},·Lcom/android/networkstack/tethering/TetheringConfiguration;->getResourceStringArray(Landroid/content/res/Resources;I)[Ljava/lang/String;
  
138 ····move-result-object·v0134 ····move-result-object·v0
  
139 ····iput-object·v0,·p0,·Lcom/android/networkstack/tethering/TetheringConfiguration;->tetherableNcmRegexs:[Ljava/lang/String;135 ····iput-object·v0,·p0,·Lcom/android/networkstack/tethering/TetheringConfiguration;->tetherableNcmRegexs:[Ljava/lang/String;
  
140 ····.line·140136 ····.line·128
141 ····sget·v0,·Lcom/android/networkstack/tethering/R$array;->config_tether_wifi_regexs:I137 ····sget·v0,·Lcom/android/networkstack/tethering/R$array;->config_tether_wifi_regexs:I
  
142 ····invoke-static·{p3,·v0},·Lcom/android/networkstack/tethering/TetheringConfiguration;->getResourceStringArray(Landroid/content/res/Resources;I)[Ljava/lang/String;138 ····invoke-static·{p3,·v0},·Lcom/android/networkstack/tethering/TetheringConfiguration;->getResourceStringArray(Landroid/content/res/Resources;I)[Ljava/lang/String;
  
143 ····move-result-object·v0139 ····move-result-object·v0
  
144 ····iput-object·v0,·p0,·Lcom/android/networkstack/tethering/TetheringConfiguration;->tetherableWifiRegexs:[Ljava/lang/String;140 ····iput-object·v0,·p0,·Lcom/android/networkstack/tethering/TetheringConfiguration;->tetherableWifiRegexs:[Ljava/lang/String;
  
145 ····.line·141141 ····.line·129
146 ····sget·v0,·Lcom/android/networkstack/tethering/R$array;->config_tether_wigig_regexs:I142 ····sget·v0,·Lcom/android/networkstack/tethering/R$array;->config_tether_wigig_regexs:I
  
147 ····invoke-static·{p3,·v0},·Lcom/android/networkstack/tethering/TetheringConfiguration;->getResourceStringArray(Landroid/content/res/Resources;I)[Ljava/lang/String;143 ····invoke-static·{p3,·v0},·Lcom/android/networkstack/tethering/TetheringConfiguration;->getResourceStringArray(Landroid/content/res/Resources;I)[Ljava/lang/String;
  
148 ····move-result-object·v0144 ····move-result-object·v0
  
149 ····iput-object·v0,·p0,·Lcom/android/networkstack/tethering/TetheringConfiguration;->tetherableWigigRegexs:[Ljava/lang/String;145 ····iput-object·v0,·p0,·Lcom/android/networkstack/tethering/TetheringConfiguration;->tetherableWigigRegexs:[Ljava/lang/String;
  
150 ····.line·142146 ····.line·130
151 ····sget·v0,·Lcom/android/networkstack/tethering/R$array;->config_tether_wifi_p2p_regexs:I147 ····sget·v0,·Lcom/android/networkstack/tethering/R$array;->config_tether_wifi_p2p_regexs:I
  
152 ····invoke-static·{p3,·v0},·Lcom/android/networkstack/tethering/TetheringConfiguration;->getResourceStringArray(Landroid/content/res/Resources;I)[Ljava/lang/String;148 ····invoke-static·{p3,·v0},·Lcom/android/networkstack/tethering/TetheringConfiguration;->getResourceStringArray(Landroid/content/res/Resources;I)[Ljava/lang/String;
  
153 ····move-result-object·v0149 ····move-result-object·v0
  
... Open expanded diff (truncated) ...
1.27 KB
smali/com/android/networkstack/tethering/TetheringDependencies.smali
    
Offset 167, 25 lines modifiedOffset 167, 14 lines modified
167 ····new-instance·p0,·Lcom/android/networkstack/tethering/OffloadHardwareInterface;167 ····new-instance·p0,·Lcom/android/networkstack/tethering/OffloadHardwareInterface;
  
168 ····invoke-direct·{p0,·p1,·p2},·Lcom/android/networkstack/tethering/OffloadHardwareInterface;-><init>(Landroid/os/Handler;Landroid/net/util/SharedLog;)V168 ····invoke-direct·{p0,·p1,·p2},·Lcom/android/networkstack/tethering/OffloadHardwareInterface;-><init>(Landroid/os/Handler;Landroid/net/util/SharedLog;)V
  
169 ····return-object·p0169 ····return-object·p0
170 .end·method170 .end·method
  
171 .method·public·getPrivateAddressCoordinator(Landroid/content/Context;Lcom/android/networkstack/tethering/TetheringConfiguration;)Lcom/android/networkstack/tethering/PrivateAddressCoordinator; 
172 ····.locals·0 
  
173 ····.line·165 
174 ····new-instance·p0,·Lcom/android/networkstack/tethering/PrivateAddressCoordinator; 
  
175 ····invoke-direct·{p0,·p1,·p2},·Lcom/android/networkstack/tethering/PrivateAddressCoordinator;-><init>(Landroid/content/Context;Lcom/android/networkstack/tethering/TetheringConfiguration;)V 
  
176 ····return-object·p0 
177 .end·method 
  
178 .method·public·abstract·getTetheringLooper()Landroid/os/Looper;171 .method·public·abstract·getTetheringLooper()Landroid/os/Looper;
179 .end·method172 .end·method
  
180 .method·public·getUpstreamNetworkMonitor(Landroid/content/Context;Lcom/android/networkstack/tethering/util/StateMachine;Landroid/net/util/SharedLog;I)Lcom/android/networkstack/tethering/UpstreamNetworkMonitor;173 .method·public·getUpstreamNetworkMonitor(Landroid/content/Context;Lcom/android/networkstack/tethering/util/StateMachine;Landroid/net/util/SharedLog;I)Lcom/android/networkstack/tethering/UpstreamNetworkMonitor;
181 ····.locals·0174 ····.locals·0
  
182 ····.line·78175 ····.line·78
1.07 KB
smali/com/android/networkstack/tethering/util/Inet4AddressUtils.smali
    
Offset 118, 48 lines modifiedOffset 118, 7 lines modified
118 ····:catch_0118 ····:catch_0
119 ····new-instance·p0,·Ljava/lang/AssertionError;119 ····new-instance·p0,·Ljava/lang/AssertionError;
  
120 ····invoke-direct·{p0},·Ljava/lang/AssertionError;-><init>()V120 ····invoke-direct·{p0},·Ljava/lang/AssertionError;-><init>()V
  
121 ····throw·p0121 ····throw·p0
122 .end·method122 .end·method
  
123 .method·public·static·prefixLengthToV4NetmaskIntHTH(I)I 
124 ····.locals·2 
125 ····.annotation·system·Ldalvik/annotation/Throws; 
126 ········value·=·{ 
127 ············Ljava/lang/IllegalArgumentException; 
128 ········} 
129 ····.end·annotation 
  
130 ····if-ltz·p0,·:cond_1 
  
131 ····const/16·v0,·0x20 
  
132 ····if-gt·p0,·v0,·:cond_1 
  
133 ····if-nez·p0,·:cond_0 
  
134 ····const/4·p0,·0x0 
  
135 ····goto·:goto_0 
  
136 ····:cond_0 
137 ····const/4·v1,·-0x1 
  
138 ····sub-int/2addr·v0,·p0 
  
139 ····shl-int·p0,·v1,·v0 
  
140 ····:goto_0 
141 ····return·p0 
  
142 ····.line·93 
143 ····:cond_1 
144 ····new-instance·p0,·Ljava/lang/IllegalArgumentException; 
  
145 ····const-string·v0,·"Invalid·prefix·length·(0·<=·prefix·<=·32)" 
  
146 ····invoke-direct·{p0,·v0},·Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V 
  
147 ····throw·p0 
148 .end·method 
1.03 KB
lib/arm64-v8a/libtetherutilsjni.so
985 B
readelf --wide --notes {}
    
Offset 1, 8 lines modifiedOffset 1, 8 lines modified
  
1 Displaying·notes·found·in:·.note.android.ident1 Displaying·notes·found·in:·.note.android.ident
2 ··Owner················Data·size·»  Description2 ··Owner················Data·size·»  Description
3 ··Android··············0x00000084»      NT_VERSION·(version)»   ···description·data:·1b·00·00·00·72·32·31·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·36·31·31·33·36·36·39·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·3 ··Android··············0x00000084»      NT_VERSION·(version)»   ···description·data:·1b·00·00·00·72·32·31·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·36·31·31·33·36·36·39·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·
  
4 Displaying·notes·found·in:·.note.gnu.build-id4 Displaying·notes·found·in:·.note.gnu.build-id
5 ··Owner················Data·size·»  Description5 ··Owner················Data·size·»  Description
6 ··GNU··················0x00000010»  NT_GNU_BUILD_ID·(unique·build·ID·bitstring)»   ····Build·ID:·e19f2ce875d889c133f1a6227e0ee3ce6 ··GNU··················0x00000010»  NT_GNU_BUILD_ID·(unique·build·ID·bitstring)»   ····Build·ID:·10d8e32e932a889352bcb691aa97534a
4.56 KB
lib/arm64-v8a/libnativehelper_compat_libc++.so
1.26 KB
readelf --wide --program-header {}
    
Offset 3, 15 lines modifiedOffset 3, 15 lines modified
3 Entry·point·0x1f0003 Entry·point·0x1f000
4 There·are·10·program·headers,·starting·at·offset·644 There·are·10·program·headers,·starting·at·offset·64
  
5 Program·Headers:5 Program·Headers:
6 ··Type···········Offset···VirtAddr···········PhysAddr···········FileSiz··MemSiz···Flg·Align6 ··Type···········Offset···VirtAddr···········PhysAddr···········FileSiz··MemSiz···Flg·Align
7 ··PHDR···········0x000040·0x0000000000000040·0x0000000000000040·0x000230·0x000230·R···0x87 ··PHDR···········0x000040·0x0000000000000040·0x0000000000000040·0x000230·0x000230·R···0x8
8 ··LOAD···········0x000000·0x0000000000000000·0x0000000000000000·0x01e994·0x01e994·R···0x10008 ··LOAD···········0x000000·0x0000000000000000·0x0000000000000000·0x01e994·0x01e994·R···0x1000
9 ··LOAD···········0x01f000·0x000000000001f000·0x000000000001f000·0x01e110·0x01e110·R·E·0x10009 ··LOAD···········0x01f000·0x000000000001f000·0x000000000001f000·0x01e120·0x01e120·R·E·0x1000
10 ··LOAD···········0x03e000·0x000000000003e000·0x000000000003e000·0x0038f8·0x0038f8·RW··0x100010 ··LOAD···········0x03e000·0x000000000003e000·0x000000000003e000·0x0038f8·0x0038f8·RW··0x1000
11 ··LOAD···········0x0418f8·0x00000000000428f8·0x00000000000428f8·0x0000a8·0x000958·RW··0x100011 ··LOAD···········0x0418f8·0x00000000000428f8·0x00000000000428f8·0x0000a8·0x000958·RW··0x1000
12 ··DYNAMIC········0x0410e8·0x00000000000410e8·0x00000000000410e8·0x0001d0·0x0001d0·RW··0x812 ··DYNAMIC········0x0410e8·0x00000000000410e8·0x00000000000410e8·0x0001d0·0x0001d0·RW··0x8
13 ··GNU_RELRO······0x03e000·0x000000000003e000·0x000000000003e000·0x0038f8·0x004000·R···0x113 ··GNU_RELRO······0x03e000·0x000000000003e000·0x000000000003e000·0x0038f8·0x004000·R···0x1
14 ··GNU_EH_FRAME···0x01812c·0x000000000001812c·0x000000000001812c·0x001394·0x001394·R···0x414 ··GNU_EH_FRAME···0x01812c·0x000000000001812c·0x000000000001812c·0x001394·0x001394·R···0x4
15 ··GNU_STACK······0x000000·0x0000000000000000·0x0000000000000000·0x000000·0x000000·RW··015 ··GNU_STACK······0x000000·0x0000000000000000·0x0000000000000000·0x000000·0x000000·RW··0
16 ··NOTE···········0x000270·0x0000000000000270·0x0000000000000270·0x0000b8·0x0000b8·R···0x416 ··NOTE···········0x000270·0x0000000000000270·0x0000000000000270·0x0000b8·0x0000b8·R···0x4
2.25 KB
readelf --wide --sections {}
    
Offset 13, 24 lines modifiedOffset 13, 24 lines modified
13 ··[·8]·.dynstr···········STRTAB··········0000000000006b08·006b08·004478·00···A··0···0··113 ··[·8]·.dynstr···········STRTAB··········0000000000006b08·006b08·004478·00···A··0···0··1
14 ··[·9]·.rela.dyn·········RELA············000000000000af80·00af80·008970·18···A··3···0··814 ··[·9]·.rela.dyn·········RELA············000000000000af80·00af80·008970·18···A··3···0··8
15 ··[10]·.rela.plt·········RELA············00000000000138f0·0138f0·000ed0·18···A··3··22··815 ··[10]·.rela.plt·········RELA············00000000000138f0·0138f0·000ed0·18···A··3··22··8
16 ··[11]·.rodata···········PROGBITS········00000000000147c0·0147c0·003041·00·AMS··0···0··816 ··[11]·.rodata···········PROGBITS········00000000000147c0·0147c0·003041·00·AMS··0···0··8
17 ··[12]·.gcc_except_table·PROGBITS········0000000000017804·017804·000928·00···A··0···0··417 ··[12]·.gcc_except_table·PROGBITS········0000000000017804·017804·000928·00···A··0···0··4
18 ··[13]·.eh_frame_hdr·····PROGBITS········000000000001812c·01812c·001394·00···A··0···0··418 ··[13]·.eh_frame_hdr·····PROGBITS········000000000001812c·01812c·001394·00···A··0···0··4
19 ··[14]·.eh_frame·········PROGBITS········00000000000194c0·0194c0·0054d4·00···A··0···0··819 ··[14]·.eh_frame·········PROGBITS········00000000000194c0·0194c0·0054d4·00···A··0···0··8
20 ··[15]·.text·············PROGBITS········000000000001f000·01f000·01d710·00··AX··0···0··420 ··[15]·.text·············PROGBITS········000000000001f000·01f000·01d714·00··AX··0···0··4
21 ··[16]·.plt··············PROGBITS········000000000003c710·03c710·000a00·00··AX··0···0·1621 ··[16]·.plt··············PROGBITS········000000000003c720·03c720·000a00·00··AX··0···0·16
22 ··[17]·.data.rel.ro······PROGBITS········000000000003e000·03e000·0030d0·00··WA··0···0··822 ··[17]·.data.rel.ro······PROGBITS········000000000003e000·03e000·0030d0·00··WA··0···0··8
23 ··[18]·.fini_array·······FINI_ARRAY······00000000000410d0·0410d0·000010·08··WA··0···0··823 ··[18]·.fini_array·······FINI_ARRAY······00000000000410d0·0410d0·000010·08··WA··0···0··8
24 ··[19]·.init_array·······INIT_ARRAY······00000000000410e0·0410e0·000008·00··WA··0···0··824 ··[19]·.init_array·······INIT_ARRAY······00000000000410e0·0410e0·000008·00··WA··0···0··8
25 ··[20]·.dynamic··········DYNAMIC·········00000000000410e8·0410e8·0001d0·10··WA··8···0··825 ··[20]·.dynamic··········DYNAMIC·········00000000000410e8·0410e8·0001d0·10··WA··8···0··8
26 ··[21]·.got··············PROGBITS········00000000000412b8·0412b8·000138·00··WA··0···0··826 ··[21]·.got··············PROGBITS········00000000000412b8·0412b8·000138·00··WA··0···0··8
27 ··[22]·.got.plt··········PROGBITS········00000000000413f0·0413f0·000508·00··WA··0···0··827 ··[22]·.got.plt··········PROGBITS········00000000000413f0·0413f0·000508·00··WA··0···0··8
28 ··[23]·.data·············PROGBITS········00000000000428f8·0418f8·0000a8·00··WA··0···0··828 ··[23]·.data·············PROGBITS········00000000000428f8·0418f8·0000a8·00··WA··0···0··8
29 ··[24]·.bss··············NOBITS··········00000000000429a0·0419a0·0008b0·00··WA··0···0·1629 ··[24]·.bss··············NOBITS··········00000000000429a0·0419a0·0008b0·00··WA··0···0·16
30 ··[25]·.shstrtab·········STRTAB··········0000000000000000·0419a0·00010a·00······0···0··130 ··[25]·.shstrtab·········STRTAB··········0000000000000000·0419a0·00010a·00······0···0··1
31 ··[26]·.gnu_debugdata····PROGBITS········0000000000000000·041aaa·001ea4·00······0···0··131 ··[26]·.gnu_debugdata····PROGBITS········0000000000000000·041aaa·001ea0·00······0···0··1
32 Key·to·Flags:32 Key·to·Flags:
33 ··W·(write),·A·(alloc),·X·(execute),·M·(merge),·S·(strings),·I·(info),33 ··W·(write),·A·(alloc),·X·(execute),·M·(merge),·S·(strings),·I·(info),
34 ··L·(link·order),·O·(extra·OS·processing·required),·G·(group),·T·(TLS),34 ··L·(link·order),·O·(extra·OS·processing·required),·G·(group),·T·(TLS),
35 ··C·(compressed),·x·(unknown),·o·(OS·specific),·E·(exclude),35 ··C·(compressed),·x·(unknown),·o·(OS·specific),·E·(exclude),
36 ··p·(processor·specific)36 ··p·(processor·specific)
985 B
readelf --wide --notes {}
    
Offset 1, 8 lines modifiedOffset 1, 8 lines modified
  
1 Displaying·notes·found·in:·.note.android.ident1 Displaying·notes·found·in:·.note.android.ident
2 ··Owner················Data·size·»  Description2 ··Owner················Data·size·»  Description
3 ··Android··············0x00000084»      NT_VERSION·(version)»   ···description·data:·15·00·00·00·72·32·31·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·36·31·31·33·36·36·39·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·3 ··Android··············0x00000084»      NT_VERSION·(version)»   ···description·data:·15·00·00·00·72·32·31·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·36·31·31·33·36·36·39·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·00·
  
4 Displaying·notes·found·in:·.note.gnu.build-id4 Displaying·notes·found·in:·.note.gnu.build-id
5 ··Owner················Data·size·»  Description5 ··Owner················Data·size·»  Description
6 ··GNU··················0x00000010»  NT_GNU_BUILD_ID·(unique·build·ID·bitstring)»   ····Build·ID:·9c86f080f79a4f529c2bd5911988ee936 ··GNU··················0x00000010»  NT_GNU_BUILD_ID·(unique·build·ID·bitstring)»   ····Build·ID:·e34c8e3097589c3dbbc268d065aa7698
2.44 KB
original/META-INF/MANIFEST.MF
    
Offset 1, 45 lines modifiedOffset 1, 42 lines modified
1 Manifest-Version:·1.0\xd1 Manifest-Version:·1.0\xd
2 Created-By:·soong_zip\xd2 Created-By:·soong_zip\xd
3 \xd3 \xd
4 Name:·AndroidManifest.xml\xd4 Name:·AndroidManifest.xml\xd
5 SHA-256-Digest:·hS6j3McXYQzDD2HSmbshXrrOLNMqjW1nKBTT6eN1NUg=\xd5 SHA-256-Digest:·pargSseIDlnPeHcEmGqpWU3Y1+Na0fq+5kc48wGLns8=\xd
6 \xd6 \xd
7 Name:·META-INF/proguard/androidx-annotations.pro\xd7 Name:·META-INF/proguard/androidx-annotations.pro\xd
8 SHA-256-Digest:·M/eLd9AzF+l12cP2AYORDIyrIrDy2h+TQrjFnXW8IP8=\xd8 SHA-256-Digest:·M/eLd9AzF+l12cP2AYORDIyrIrDy2h+TQrjFnXW8IP8=\xd
9 \xd9 \xd
10 Name:·android/util/LocalLog.ReadOnlyLocalLog.uau\xd10 Name:·android/util/LocalLog.ReadOnlyLocalLog.uau\xd
11 SHA-256-Digest:·fX3MQP4IhofvntdIiYOvzAbKZt+uDax9QmzI0mI4TNE=\xd11 SHA-256-Digest:·fX3MQP4IhofvntdIiYOvzAbKZt+uDax9QmzI0mI4TNE=\xd
12 \xd12 \xd
13 Name:·android/util/LocalLog.uau\xd13 Name:·android/util/LocalLog.uau\xd
14 SHA-256-Digest:·4/n4bX4WJKjgIlOAMOGInZBoqSmK7QVkC8GniEPyRos=\xd14 SHA-256-Digest:·4/n4bX4WJKjgIlOAMOGInZBoqSmK7QVkC8GniEPyRos=\xd
15 \xd15 \xd
16 Name:·assets/NOTICE.html.gz\xd 
17 SHA-256-Digest:·QABj5gFd23VrV4ViKiZjaqEY4U2QF5iYOyCvDv6bwb8=\xd 
18 \xd 
19 Name:·classes.dex\xd16 Name:·classes.dex\xd
20 SHA-256-Digest:·sHW8WRcnbL/+8E+NQy9S+cVz7C81XruFsdDWKS17JJs=\xd17 SHA-256-Digest:·igg+kgrKfXdAW/pSj2LEiRTkeFZ7ejqa3l5q16wGln8=\xd
21 \xd18 \xd
22 Name:·com/android/networkstack/tethering/util/IState.uau\xd19 Name:·com/android/networkstack/tethering/util/IState.uau\xd
23 SHA-256-Digest:·Mt7XZ7zxDmUmyFoJbH+y6Q18ZXv8MS9tWpnrn1rRCjY=\xd20 SHA-256-Digest:·Mt7XZ7zxDmUmyFoJbH+y6Q18ZXv8MS9tWpnrn1rRCjY=\xd
24 \xd21 \xd
25 Name:·com/android/networkstack/tethering/util/IndentingPrintWriter.uau\xd22 Name:·com/android/networkstack/tethering/util/IndentingPrintWriter.uau\xd
26 SHA-256-Digest:·i1VIJQuj6Goz+kcZeHnTQN+MGQbu17Xvur3t8TUxg7k=\xd23 SHA-256-Digest:·i1VIJQuj6Goz+kcZeHnTQN+MGQbu17Xvur3t8TUxg7k=\xd
27 \xd24 \xd
28 Name:·com/android/networkstack/tethering/util/State.uau\xd25 Name:·com/android/networkstack/tethering/util/State.uau\xd
29 SHA-256-Digest:·8iyOh0wovdVsiKV/YkgMZx/sLoBDvIzZthsCtAzQhoM=\xd26 SHA-256-Digest:·8iyOh0wovdVsiKV/YkgMZx/sLoBDvIzZthsCtAzQhoM=\xd
30 \xd27 \xd
31 Name:·com/android/networkstack/tethering/util/StateMachine.uau\xd28 Name:·com/android/networkstack/tethering/util/StateMachine.uau\xd
32 SHA-256-Digest:·8apJ5h3wFa6rk8bpHvlgdBw9CVaP3dK/MYl4fUx9fQU=\xd29 SHA-256-Digest:·8apJ5h3wFa6rk8bpHvlgdBw9CVaP3dK/MYl4fUx9fQU=\xd
33 \xd30 \xd
34 Name:·lib/arm64-v8a/libnativehelper_compat_libc++.so\xd31 Name:·lib/arm64-v8a/libnativehelper_compat_libc++.so\xd
35 SHA-256-Digest:·OtdW/LvXmALmUHZcBuWagybm2zb7dwHRREiIZcHDeCE=\xd32 SHA-256-Digest:·fmtqEiz9H2cVI4PqnVEORUpYE9TU6EkUzrLKX5uEhBk=\xd
36 \xd33 \xd
37 Name:·lib/arm64-v8a/libtetherutilsjni.so\xd34 Name:·lib/arm64-v8a/libtetherutilsjni.so\xd
38 SHA-256-Digest:·IViJmOnPBqFxfQ7DslO6Qz1LiuVTaLTbfeYG520pHOs=\xd35 SHA-256-Digest:·oqsDftK6Zfkhj38GX/Za/LVftH/3YthtMzjcpMor3jE=\xd
39 \xd36 \xd
40 Name:·res/drawable-hdpi-v4/stat_sys_tether_bluetooth.png\xd37 Name:·res/drawable-hdpi-v4/stat_sys_tether_bluetooth.png\xd
41 SHA-256-Digest:·6HOkooPoLpFpoMy6YnI3oeQ1tEU4xpwmsDtTvy0SyKk=\xd38 SHA-256-Digest:·6HOkooPoLpFpoMy6YnI3oeQ1tEU4xpwmsDtTvy0SyKk=\xd
42 \xd39 \xd
43 Name:·res/drawable-hdpi-v4/stat_sys_tether_general.png\xd40 Name:·res/drawable-hdpi-v4/stat_sys_tether_general.png\xd
44 SHA-256-Digest:·5yRYxPH6Ejlfg50+tn3leTNqGGWYRlSGXt7yT4MK68E=\xd41 SHA-256-Digest:·5yRYxPH6Ejlfg50+tn3leTNqGGWYRlSGXt7yT4MK68E=\xd
45 \xd42 \xd
Offset 79, 12 lines modifiedOffset 76, 9 lines modified
79 Name:·res/drawable-xxhdpi-v4/stat_sys_tether_general.png\xd76 Name:·res/drawable-xxhdpi-v4/stat_sys_tether_general.png\xd
80 SHA-256-Digest:·7IkZIkRTyjdgWTcdBXhywarWF0BOOYXhKu5mssm5Ddg=\xd77 SHA-256-Digest:·7IkZIkRTyjdgWTcdBXhywarWF0BOOYXhKu5mssm5Ddg=\xd
81 \xd78 \xd
82 Name:·res/drawable-xxhdpi-v4/stat_sys_tether_usb.png\xd79 Name:·res/drawable-xxhdpi-v4/stat_sys_tether_usb.png\xd
83 SHA-256-Digest:·Np5ULUJbyfkBcn4QlncAFxLMk/32dU5YvCq2WOexK6M=\xd80 SHA-256-Digest:·Np5ULUJbyfkBcn4QlncAFxLMk/32dU5YvCq2WOexK6M=\xd
84 \xd81 \xd
85 Name:·resources.arsc\xd82 Name:·resources.arsc\xd
 83 SHA-256-Digest:·EuJbRGM40fz4bqSZI18ZNZmSo1dWFZ5Pjkhgf86mgDg=\xd
86 SHA-256-Digest:·32ieiRae3p0AHDBGGcfJkfVWDAV9lxTLaUB4tFj8Zls=\xd 
87 \xd 
88 Name:·stamp-cert-sha256\xd 
89 SHA-256-Digest:·HZwqAqk4Fv9ceuZPmq0Cwj3kncUUYg2xp61iTSqDZ5w=\xd 
90 \xd84 \xd
2.61 KB
original/META-INF/CERT.SF
    
Offset 1, 47 lines modifiedOffset 1, 44 lines modified
1 Signature-Version:·1.0\xd1 Signature-Version:·1.0\xd
2 Created-By:·1.0·(Android·SignApk)\xd2 Created-By:·1.0·(Android·SignApk)\xd
3 SHA-256-Digest-Manifest:·A8b40yF89B8HILvzyKYmqpj6SD2YCfqwpvT2ufdIR+I=\xd3 SHA-256-Digest-Manifest:·h6kxxn6xI295JgtG+ZAnxoFVn4RoA7wno6NJ28YQKzo=\xd
4 X-Android-APK-Signed:·2,·3\xd4 X-Android-APK-Signed:·2,·3\xd
5 \xd5 \xd
6 Name:·AndroidManifest.xml\xd6 Name:·AndroidManifest.xml\xd
7 SHA-256-Digest:·4B83kkc7/dEKcqexV3zQrgajcsxmH27vBM2HgDIOswY=\xd7 SHA-256-Digest:·gEvGsGMONUOTzo0/MKuyoAZxJLQTS2K6do5cmBd7KG8=\xd
8 \xd8 \xd
9 Name:·META-INF/proguard/androidx-annotations.pro\xd9 Name:·META-INF/proguard/androidx-annotations.pro\xd
10 SHA-256-Digest:·z4VPeB3xyX+1oqubmSAZIacjNrmoTsLyFuu+ubl7+m4=\xd10 SHA-256-Digest:·z4VPeB3xyX+1oqubmSAZIacjNrmoTsLyFuu+ubl7+m4=\xd
11 \xd11 \xd
12 Name:·android/util/LocalLog.ReadOnlyLocalLog.uau\xd12 Name:·android/util/LocalLog.ReadOnlyLocalLog.uau\xd
13 SHA-256-Digest:·s17VZ8dAbUoumYgDoKs6kgUQKU5uKLNa9+G2urF5Cqs=\xd13 SHA-256-Digest:·s17VZ8dAbUoumYgDoKs6kgUQKU5uKLNa9+G2urF5Cqs=\xd
14 \xd14 \xd
15 Name:·android/util/LocalLog.uau\xd15 Name:·android/util/LocalLog.uau\xd
16 SHA-256-Digest:·jCzQ6Bh1I5c7NjNw4JHybO+cQdBx6jgaPooycwTJ11Q=\xd16 SHA-256-Digest:·jCzQ6Bh1I5c7NjNw4JHybO+cQdBx6jgaPooycwTJ11Q=\xd
17 \xd17 \xd
18 Name:·assets/NOTICE.html.gz\xd 
19 SHA-256-Digest:·Q7XXuoHCNWZZy2M/8Bxf4q29dITeHdcwBdfzwTKNnkQ=\xd 
20 \xd 
21 Name:·classes.dex\xd18 Name:·classes.dex\xd
22 SHA-256-Digest:·6T1QuddBjp+0aVYTC5QgjfU1LTf9RtzXt7MzcL3HADE=\xd19 SHA-256-Digest:·RkrOKw3cKx3EI5tNEdCeFjIUjYiVh2dPStSOPr5P36E=\xd
23 \xd20 \xd
24 Name:·com/android/networkstack/tethering/util/IState.uau\xd21 Name:·com/android/networkstack/tethering/util/IState.uau\xd
25 SHA-256-Digest:·k03CaRXGLT3bA6VDDDetEp5tKGTaMschw1pbPc/TK7M=\xd22 SHA-256-Digest:·k03CaRXGLT3bA6VDDDetEp5tKGTaMschw1pbPc/TK7M=\xd
26 \xd23 \xd
27 Name:·com/android/networkstack/tethering/util/IndentingPrintWriter.uau\xd24 Name:·com/android/networkstack/tethering/util/IndentingPrintWriter.uau\xd
28 SHA-256-Digest:·Ewppn1HAD9cCxJvEbM+ZgRLTpVxhXY2OpaMgZEH7XwQ=\xd25 SHA-256-Digest:·Ewppn1HAD9cCxJvEbM+ZgRLTpVxhXY2OpaMgZEH7XwQ=\xd
29 \xd26 \xd
30 Name:·com/android/networkstack/tethering/util/State.uau\xd27 Name:·com/android/networkstack/tethering/util/State.uau\xd
31 SHA-256-Digest:·kMFQeOJtxB9APVQAhjWF0bdsWBxGeTfhBm1GJKfJCi0=\xd28 SHA-256-Digest:·kMFQeOJtxB9APVQAhjWF0bdsWBxGeTfhBm1GJKfJCi0=\xd
32 \xd29 \xd
33 Name:·com/android/networkstack/tethering/util/StateMachine.uau\xd30 Name:·com/android/networkstack/tethering/util/StateMachine.uau\xd
34 SHA-256-Digest:·d3PLSBzviCjzVabCSzRNwEjfSe4Bqy7CDEtTdy79IpA=\xd31 SHA-256-Digest:·d3PLSBzviCjzVabCSzRNwEjfSe4Bqy7CDEtTdy79IpA=\xd
35 \xd32 \xd
36 Name:·lib/arm64-v8a/libnativehelper_compat_libc++.so\xd33 Name:·lib/arm64-v8a/libnativehelper_compat_libc++.so\xd
37 SHA-256-Digest:·4uxEq63/BlOS6nkEQVa4yCJVoCyLhKoElGCN64jEKbw=\xd34 SHA-256-Digest:·PNITWqQnp8b/K+rT1F6dPZYp6xirzZ50TETnyL26WBU=\xd
38 \xd35 \xd
39 Name:·lib/arm64-v8a/libtetherutilsjni.so\xd36 Name:·lib/arm64-v8a/libtetherutilsjni.so\xd
40 SHA-256-Digest:·UFdTxTFlYiAt7fHKbVm3GFXMK923+JE8XCtMpKDb5V8=\xd37 SHA-256-Digest:·IK/VBLmaTWVpWyrrBfT2EY7J9ie+WkqLkIpSheCZpKE=\xd
41 \xd38 \xd
42 Name:·res/drawable-hdpi-v4/stat_sys_tether_bluetooth.png\xd39 Name:·res/drawable-hdpi-v4/stat_sys_tether_bluetooth.png\xd
43 SHA-256-Digest:·HlN3G7rbWDWCF4NDNP9TucVv0S2txWahdm0XZJqHqJY=\xd40 SHA-256-Digest:·HlN3G7rbWDWCF4NDNP9TucVv0S2txWahdm0XZJqHqJY=\xd
44 \xd41 \xd
45 Name:·res/drawable-hdpi-v4/stat_sys_tether_general.png\xd42 Name:·res/drawable-hdpi-v4/stat_sys_tether_general.png\xd
46 SHA-256-Digest:·oQQXZ2XV5iLcOy9qisrr55P5AESEMBW0RjIfHG6Y7CE=\xd43 SHA-256-Digest:·oQQXZ2XV5iLcOy9qisrr55P5AESEMBW0RjIfHG6Y7CE=\xd
47 \xd44 \xd
Offset 81, 12 lines modifiedOffset 78, 9 lines modified
81 Name:·res/drawable-xxhdpi-v4/stat_sys_tether_general.png\xd78 Name:·res/drawable-xxhdpi-v4/stat_sys_tether_general.png\xd
82 SHA-256-Digest:·oBU3eG7maNzgjVzwHkPSeT4X+ivAvTc1wrx9x6sR7VA=\xd79 SHA-256-Digest:·oBU3eG7maNzgjVzwHkPSeT4X+ivAvTc1wrx9x6sR7VA=\xd
83 \xd80 \xd
84 Name:·res/drawable-xxhdpi-v4/stat_sys_tether_usb.png\xd81 Name:·res/drawable-xxhdpi-v4/stat_sys_tether_usb.png\xd
85 SHA-256-Digest:·SGQIjof/W1e30MwcbZnPuHDJZeow85sVClEM5GuWwKY=\xd82 SHA-256-Digest:·SGQIjof/W1e30MwcbZnPuHDJZeow85sVClEM5GuWwKY=\xd
86 \xd83 \xd
87 Name:·resources.arsc\xd84 Name:·resources.arsc\xd
 85 SHA-256-Digest:·NJIixuqwBcbLTjgfWhHV1X/3uyGcdBXHUxceConocwc=\xd
88 SHA-256-Digest:·+wCmliHjXP/juMSVcEQq0Dsa/Eu4ob2hkLHh4r0gXGw=\xd 
89 \xd 
90 Name:·stamp-cert-sha256\xd 
91 SHA-256-Digest:·L0p4Bm/NGffFWX26fUKi8jlq3aKsfwyEBtSavY6F0c0=\xd 
92 \xd86 \xd
499 B
res/values/bools.xml
459 B
res/values/bools.xml
    
Offset 1, 8 lines modifiedOffset 1, 7 lines modified
1 <?xml·version="1.0"·encoding="utf-8"?>1 <?xml·version="1.0"·encoding="utf-8"?>
2 <resources>2 <resources>
3 ··<bool·name="config_tether_enable_bpf_offload">true</bool>3 ··<bool·name="config_tether_enable_bpf_offload">true</bool>
4 ··<bool·name="config_tether_enable_legacy_dhcp_server">false</bool>4 ··<bool·name="config_tether_enable_legacy_dhcp_server">false</bool>
5 ··<bool·name="config_tether_enable_legacy_wifi_p2p_dedicated_ip">false</bool> 
6 ··<bool·name="config_tether_upstream_automatic">true</bool>5 ··<bool·name="config_tether_upstream_automatic">true</bool>
7 ··<bool·name="config_upstream_roaming_notification">false</bool>6 ··<bool·name="config_upstream_roaming_notification">false</bool>
8 </resources>7 </resources>
1.64 KB
res/values/public.xml
1.6 KB
res/values/public.xml
    
Offset 7, 17 lines modifiedOffset 7, 16 lines modified
7 ··<public·type="array"·name="config_tether_upstream_types"·id="0x7f010004"/>7 ··<public·type="array"·name="config_tether_upstream_types"·id="0x7f010004"/>
8 ··<public·type="array"·name="config_tether_usb_regexs"·id="0x7f010005"/>8 ··<public·type="array"·name="config_tether_usb_regexs"·id="0x7f010005"/>
9 ··<public·type="array"·name="config_tether_wifi_p2p_regexs"·id="0x7f010006"/>9 ··<public·type="array"·name="config_tether_wifi_p2p_regexs"·id="0x7f010006"/>
10 ··<public·type="array"·name="config_tether_wifi_regexs"·id="0x7f010007"/>10 ··<public·type="array"·name="config_tether_wifi_regexs"·id="0x7f010007"/>
11 ··<public·type="array"·name="config_tether_wigig_regexs"·id="0x7f010008"/>11 ··<public·type="array"·name="config_tether_wigig_regexs"·id="0x7f010008"/>
12 ··<public·type="bool"·name="config_tether_enable_bpf_offload"·id="0x7f020000"/>12 ··<public·type="bool"·name="config_tether_enable_bpf_offload"·id="0x7f020000"/>
13 ··<public·type="bool"·name="config_tether_enable_legacy_dhcp_server"·id="0x7f020001"/>13 ··<public·type="bool"·name="config_tether_enable_legacy_dhcp_server"·id="0x7f020001"/>
14 ··<public·type="bool"·name="config_tether_enable_legacy_wifi_p2p_dedicated_ip"·id="0x7f020002"/> 
15 ··<public·type="bool"·name="config_tether_upstream_automatic"·id="0x7f020003"/>14 ··<public·type="bool"·name="config_tether_upstream_automatic"·id="0x7f020002"/>
16 ··<public·type="bool"·name="config_upstream_roaming_notification"·id="0x7f020004"/>15 ··<public·type="bool"·name="config_upstream_roaming_notification"·id="0x7f020003"/>
17 ··<public·type="drawable"·name="stat_sys_tether_bluetooth"·id="0x7f030000"/>16 ··<public·type="drawable"·name="stat_sys_tether_bluetooth"·id="0x7f030000"/>
18 ··<public·type="drawable"·name="stat_sys_tether_general"·id="0x7f030001"/>17 ··<public·type="drawable"·name="stat_sys_tether_general"·id="0x7f030001"/>
19 ··<public·type="drawable"·name="stat_sys_tether_usb"·id="0x7f030002"/>18 ··<public·type="drawable"·name="stat_sys_tether_usb"·id="0x7f030002"/>
20 ··<public·type="integer"·name="config_mobile_hotspot_provision_check_period"·id="0x7f040000"/>19 ··<public·type="integer"·name="config_mobile_hotspot_provision_check_period"·id="0x7f040000"/>
21 ··<public·type="integer"·name="config_tether_offload_poll_interval"·id="0x7f040001"/>20 ··<public·type="integer"·name="config_tether_offload_poll_interval"·id="0x7f040001"/>
22 ··<public·type="integer"·name="delay_to_show_no_upstream_after_no_backhaul"·id="0x7f040002"/>21 ··<public·type="integer"·name="delay_to_show_no_upstream_after_no_backhaul"·id="0x7f040002"/>
23 ··<public·type="string"·name="config_mobile_hotspot_provision_app_no_ui"·id="0x7f050000"/>22 ··<public·type="string"·name="config_mobile_hotspot_provision_app_no_ui"·id="0x7f050000"/>
888 B
res/values-mcc310-mnc4-iw/strings.xml
814 B
res/values-mcc310-mnc4-iw/strings.xml
    
Offset 1, 8 lines modifiedOffset 1, 8 lines modified
1 <?xml·version="1.0"·encoding="utf-8"?>1 <?xml·version="1.0"·encoding="utf-8"?>
2 <resources>2 <resources>
3 ··<string·name="no_upstream_notification_disable_button">השבתה·של·שיתוף·האינטרנט·בין·מכשירים</string>3 ··<string·name="no_upstream_notification_disable_button">השבתה·של·שיתוף·האינטרנט·בין·מכשירים</string>
4 ··<string·name="no_upstream_notification_message">למכשירים·אין·אפשרות·להתחבר</string>4 ··<string·name="no_upstream_notification_message">למכשירים·אין·אפשרות·להתחבר</string>
5 ··<string·name="no_upstream_notification_title">אי·אפשר·להפעיל·את·תכונת·שיתוף·האינטרנט·בין·מכשירים·כי·אין·חיבור·לאינטרנט</string>5 ··<string·name="no_upstream_notification_title">אי·אפשר·להפעיל·את·תכונת·שיתוף·האינטרנט·בין·מכשירים·כי·אין·חיבור·לאינטרנט</string>
6 ··<string·name="upstream_roaming_notification_message">ייתכנו·חיובים·נוספים·בעת·נדידה</string>6 ··<string·name="upstream_roaming_notification_message">ייתכנו·חיובים·נוספים·בעת·נדידה</string>
7 ··<string·name="upstream_roaming_notification_title">תכונת·הנקודה·לשיתוף·אינטרנט·או·תכונת·שיתוף·האינטרנט·בין·מכשירים·פועלת</string>7 ··<string·name="upstream_roaming_notification_title">שיתוף·האינטרנט·(hotspot·או·tethering)·פעיל</string>
8 </resources>8 </resources>
938 B
res/values-nl/strings.xml
888 B
res/values-nl/strings.xml
    
Offset 1, 11 lines modifiedOffset 1, 11 lines modified
1 <?xml·version="1.0"·encoding="utf-8"?>1 <?xml·version="1.0"·encoding="utf-8"?>
2 <resources>2 <resources>
3 ··<string·name="disable_tether_notification_message">Neem·contact·op·met·je·beheerder·voor·meer·informatie</string>3 ··<string·name="disable_tether_notification_message">Neem·contact·op·met·je·beheerder·voor·meer·informatie</string>
4 ··<string·name="disable_tether_notification_title">Tethering·is·uitgeschakeld</string>4 ··<string·name="disable_tether_notification_title">Tethering·staat·uit</string>
5 ··<string·name="no_upstream_notification_disable_button"/>5 ··<string·name="no_upstream_notification_disable_button"/>
6 ··<string·name="no_upstream_notification_message"/>6 ··<string·name="no_upstream_notification_message"/>
7 ··<string·name="no_upstream_notification_title"/>7 ··<string·name="no_upstream_notification_title"/>
8 ··<string·name="notification_channel_tethering_status">Status·van·hotspot·en·tethering</string>8 ··<string·name="notification_channel_tethering_status">Status·van·hotspot·en·tethering</string>
9 ··<string·name="tethered_notification_message">Tik·om·in·te·stellen.</string>9 ··<string·name="tethered_notification_message">Tik·om·in·te·stellen.</string>
10 ··<string·name="tethered_notification_title">Tethering·of·hotspot·actief</string>10 ··<string·name="tethered_notification_title">Tethering·of·hotspot·actief</string>
11 ··<string·name="upstream_roaming_notification_message"/>11 ··<string·name="upstream_roaming_notification_message"/>
1.15 KB
res/values-iw/strings.xml
1.1 KB
res/values-iw/strings.xml
    
Offset 1, 13 lines modifiedOffset 1, 13 lines modified
1 <?xml·version="1.0"·encoding="utf-8"?>1 <?xml·version="1.0"·encoding="utf-8"?>
2 <resources>2 <resources>
3 ··<string·name="disable_tether_notification_message">לפרטים,·יש·לפנות·למנהל·המערכת</string>3 ··<string·name="disable_tether_notification_message">לפרטים,·יש·לפנות·למנהל·המערכת</string>
4 ··<string·name="disable_tether_notification_title">שיתוף·האינטרנט·בין·מכשירים·מושבת</string>4 ··<string·name="disable_tether_notification_title">שיתוף·האינטרנט·בין·מכשירים·מושבת</string>
5 ··<string·name="no_upstream_notification_disable_button"/>5 ··<string·name="no_upstream_notification_disable_button"/>
6 ··<string·name="no_upstream_notification_message"/>6 ··<string·name="no_upstream_notification_message"/>
7 ··<string·name="no_upstream_notification_title"/>7 ··<string·name="no_upstream_notification_title"/>
8 ··<string·name="notification_channel_tethering_status">סטטוס·של·נקודה·לשיתוף·אינטרנט·ושיתוף·אינטרנט·בין·מכשירים</string>8 ··<string·name="notification_channel_tethering_status">סטטוס·שיתוף·האינטרנט·(hotspot·או·tethering)</string>
9 ··<string·name="tethered_notification_message">יש·להקיש·כדי·להגדיר.</string>9 ··<string·name="tethered_notification_message">יש·להקיש·כדי·להגדיר.</string>
10 ··<string·name="tethered_notification_title">נקודה·לשיתוף·אינטרנט·או·שיתוף·אינטרנט·בין·מכשירים:·בסטטוס·פעיל</string>10 ··<string·name="tethered_notification_title">שיתוף·האינטרנט·(tethering·או·hotspot)·פעיל</string>
11 ··<string·name="upstream_roaming_notification_message"/>11 ··<string·name="upstream_roaming_notification_message"/>
12 ··<string·name="upstream_roaming_notification_title"/>12 ··<string·name="upstream_roaming_notification_title"/>
13 </resources>13 </resources>
919 B
res/values-mcc310-mnc4-nl/strings.xml
845 B
res/values-mcc310-mnc4-nl/strings.xml
    
Offset 1, 8 lines modifiedOffset 1, 8 lines modified
1 <?xml·version="1.0"·encoding="utf-8"?>1 <?xml·version="1.0"·encoding="utf-8"?>
2 <resources>2 <resources>
3 ··<string·name="no_upstream_notification_disable_button">Tethering·uitschakelen</string>3 ··<string·name="no_upstream_notification_disable_button">Tethering·uitzetten</string>
4 ··<string·name="no_upstream_notification_message">Apparaten·kunnen·niet·worden·verbonden</string>4 ··<string·name="no_upstream_notification_message">Apparaten·kunnen·niet·worden·verbonden</string>
5 ··<string·name="no_upstream_notification_title">Tethering·heeft·geen·internet</string>5 ··<string·name="no_upstream_notification_title">Tethering·heeft·geen·internet</string>
6 ··<string·name="upstream_roaming_notification_message">Er·kunnen·extra·kosten·voor·roaming·in·rekening·worden·gebracht.</string>6 ··<string·name="upstream_roaming_notification_message">Er·kunnen·extra·kosten·voor·roaming·in·rekening·worden·gebracht.</string>
7 ··<string·name="upstream_roaming_notification_title">Hotspot·of·tethering·is·ingeschakeld</string>7 ··<string·name="upstream_roaming_notification_title">Hotspot·of·tethering·staat·aan</string>
8 </resources>8 </resources>
2.31 KB
smali/com/android/networkstack/tethering/Tethering$TetherMainSM$SetIpForwardingDisabledErrorState.smali vs.
smali/com/android/networkstack/tethering/Tethering$TetherMasterSM$SetIpForwardingDisabledErrorState.smali
Files 14% similar despite different names
    
Offset 1, 47 lines modifiedOffset 1, 47 lines modified
1 .class·Lcom/android/networkstack/tethering/Tethering$TetherMainSM$SetIpForwardingDisabledErrorState;1 .class·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM$SetIpForwardingDisabledErrorState;
2 .super·Lcom/android/networkstack/tethering/Tethering$TetherMainSM$ErrorState;2 .super·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM$ErrorState;
3 .source·"Tethering.java"3 .source·"Tethering.java"
  
  
4 #·annotations4 #·annotations
5 .annotation·system·Ldalvik/annotation/EnclosingClass;5 .annotation·system·Ldalvik/annotation/EnclosingClass;
6 ····value·=·Lcom/android/networkstack/tethering/Tethering$TetherMainSM;6 ····value·=·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;
7 .end·annotation7 .end·annotation
  
8 .annotation·system·Ldalvik/annotation/InnerClass;8 .annotation·system·Ldalvik/annotation/InnerClass;
9 ····accessFlags·=·0x09 ····accessFlags·=·0x0
10 ····name·=·"SetIpForwardingDisabledErrorState"10 ····name·=·"SetIpForwardingDisabledErrorState"
11 .end·annotation11 .end·annotation
  
  
12 #·direct·methods12 #·direct·methods
13 .method·constructor·<init>(Lcom/android/networkstack/tethering/Tethering$TetherMainSM;)V13 .method·constructor·<init>(Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;)V
14 ····.locals·014 ····.locals·0
  
15 ····.line·191415 ····.line·1918
16 ····invoke-direct·{p0,·p1},·Lcom/android/networkstack/tethering/Tethering$TetherMainSM$ErrorState;-><init>(Lcom/android/networkstack/tethering/Tethering$TetherMainSM;)V16 ····invoke-direct·{p0,·p1},·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM$ErrorState;-><init>(Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;)V
  
17 ····return-void17 ····return-void
18 .end·method18 .end·method
  
  
19 #·virtual·methods19 #·virtual·methods
20 .method·public·enter()V20 .method·public·enter()V
21 ····.locals·221 ····.locals·2
  
22 ····.line·191722 ····.line·1921
23 ····invoke-static·{},·Lcom/android/networkstack/tethering/Tethering;->access$3400()Ljava/lang/String;23 ····invoke-static·{},·Lcom/android/networkstack/tethering/Tethering;->access$3400()Ljava/lang/String;
  
24 ····move-result-object·v024 ····move-result-object·v0
  
25 ····const-string·v1,·"Error·in·setIpForwardingDisabled"25 ····const-string·v1,·"Error·in·setIpForwardingDisabled"
  
26 ····invoke-static·{v0,·v1},·Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I26 ····invoke-static·{v0,·v1},·Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
  
27 ····const/16·v0,·0x6927 ····const/16·v0,·0x69
  
28 ····.line·191828 ····.line·1922
29 ····invoke-virtual·{p0,·v0},·Lcom/android/networkstack/tethering/Tethering$TetherMainSM$ErrorState;->notify(I)V29 ····invoke-virtual·{p0,·v0},·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM$ErrorState;->notify(I)V
  
30 ····return-void30 ····return-void
31 .end·method31 .end·method
5.19 KB
smali/com/android/networkstack/tethering/Tethering$TetherMainSM$StartTetheringErrorState.smali vs.
smali/com/android/networkstack/tethering/Tethering$TetherMasterSM$SetDnsForwardersErrorState.smali
Files 6% similar despite different names
    
Offset 1, 73 lines modifiedOffset 1, 89 lines modified
1 .class·Lcom/android/networkstack/tethering/Tethering$TetherMainSM$StartTetheringErrorState;1 .class·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM$SetDnsForwardersErrorState;
2 .super·Lcom/android/networkstack/tethering/Tethering$TetherMainSM$ErrorState;2 .super·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM$ErrorState;
3 .source·"Tethering.java"3 .source·"Tethering.java"
  
  
4 #·annotations4 #·annotations
5 .annotation·system·Ldalvik/annotation/EnclosingClass;5 .annotation·system·Ldalvik/annotation/EnclosingClass;
6 ····value·=·Lcom/android/networkstack/tethering/Tethering$TetherMainSM;6 ····value·=·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;
7 .end·annotation7 .end·annotation
  
8 .annotation·system·Ldalvik/annotation/InnerClass;8 .annotation·system·Ldalvik/annotation/InnerClass;
9 ····accessFlags·=·0x09 ····accessFlags·=·0x0
10 ····name·=·"StartTetheringErrorState"10 ····name·=·"SetDnsForwardersErrorState"
11 .end·annotation11 .end·annotation
  
  
12 #·instance·fields12 #·instance·fields
13 .field·final·synthetic·this$1:Lcom/android/networkstack/tethering/Tethering$TetherMainSM;13 .field·final·synthetic·this$1:Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;
  
  
14 #·direct·methods14 #·direct·methods
15 .method·constructor·<init>(Lcom/android/networkstack/tethering/Tethering$TetherMainSM;)V15 .method·constructor·<init>(Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;)V
16 ····.locals·016 ····.locals·0
  
17 ····.line·192217 ····.line·1948
18 ····iput-object·p1,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMainSM$StartTetheringErrorState;->this$1:Lcom/android/networkstack/tethering/Tethering$TetherMainSM;18 ····iput-object·p1,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM$SetDnsForwardersErrorState;->this$1:Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;
  
19 ····invoke-direct·{p0,·p1},·Lcom/android/networkstack/tethering/Tethering$TetherMainSM$ErrorState;-><init>(Lcom/android/networkstack/tethering/Tethering$TetherMainSM;)V19 ····invoke-direct·{p0,·p1},·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM$ErrorState;-><init>(Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;)V
  
20 ····return-void20 ····return-void
21 .end·method21 .end·method
  
  
22 #·virtual·methods22 #·virtual·methods
23 .method·public·enter()V23 .method·public·enter()V
24 ····.locals·224 ····.locals·2
  
25 ····.line·192525 ····.line·1951
26 ····invoke-static·{},·Lcom/android/networkstack/tethering/Tethering;->access$3400()Ljava/lang/String;26 ····invoke-static·{},·Lcom/android/networkstack/tethering/Tethering;->access$3400()Ljava/lang/String;
  
27 ····move-result-object·v027 ····move-result-object·v0
  
28 ····const-string·v1,·"Error·in·startTethering"28 ····const-string·v1,·"Error·in·setDnsForwarders"
  
29 ····invoke-static·{v0,·v1},·Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I29 ····invoke-static·{v0,·v1},·Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
  
30 ····const/16·v0,·0x6a30 ····const/16·v0,·0x6c
  
31 ····.line·192631 ····.line·1952
32 ····invoke-virtual·{p0,·v0},·Lcom/android/networkstack/tethering/Tethering$TetherMainSM$ErrorState;->notify(I)V32 ····invoke-virtual·{p0,·v0},·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM$ErrorState;->notify(I)V
  
33 ····.line·192833 ····.line·1954
34 ····:try_start_034 ····:try_start_0
35 ····iget-object·p0,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMainSM$StartTetheringErrorState;->this$1:Lcom/android/networkstack/tethering/Tethering$TetherMainSM;35 ····iget-object·v0,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM$SetDnsForwardersErrorState;->this$1:Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;
  
 36 ····iget-object·v0,·v0,·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;->this$0:Lcom/android/networkstack/tethering/Tethering;
  
 37 ····invoke-static·{v0},·Lcom/android/networkstack/tethering/Tethering;->access$400(Lcom/android/networkstack/tethering/Tethering;)Landroid/net/INetd;
  
 38 ····move-result-object·v0
  
 39 ····invoke-interface·{v0},·Landroid/net/INetd;->tetherStop()V
 40 ····:try_end_0
 41 ····.catch·Landroid/os/RemoteException;·{:try_start_0·..·:try_end_0}·:catch_0
 42 ····.catch·Landroid/os/ServiceSpecificException;·{:try_start_0·..·:try_end_0}·:catch_0
  
 43 ····.line·1957
 44 ····:catch_0
 45 ····:try_start_1
 46 ····iget-object·p0,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM$SetDnsForwardersErrorState;->this$1:Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;
  
36 ····iget-object·p0,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMainSM;->this$0:Lcom/android/networkstack/tethering/Tethering;47 ····iget-object·p0,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;->this$0:Lcom/android/networkstack/tethering/Tethering;
  
37 ····invoke-static·{p0},·Lcom/android/networkstack/tethering/Tethering;->access$400(Lcom/android/networkstack/tethering/Tethering;)Landroid/net/INetd;48 ····invoke-static·{p0},·Lcom/android/networkstack/tethering/Tethering;->access$400(Lcom/android/networkstack/tethering/Tethering;)Landroid/net/INetd;
  
38 ····move-result-object·p049 ····move-result-object·p0
  
39 ····invoke-static·{},·Lcom/android/networkstack/tethering/Tethering;->access$3400()Ljava/lang/String;50 ····invoke-static·{},·Lcom/android/networkstack/tethering/Tethering;->access$3400()Ljava/lang/String;
  
40 ····move-result-object·v051 ····move-result-object·v0
  
41 ····invoke-interface·{p0,·v0},·Landroid/net/INetd;->ipfwdDisableForwarding(Ljava/lang/String;)V52 ····invoke-interface·{p0,·v0},·Landroid/net/INetd;->ipfwdDisableForwarding(Ljava/lang/String;)V
42 ····:try_end_053 ····:try_end_1
43 ····.catch·Landroid/os/RemoteException;·{:try_start_0·..·:try_end_0}·:catch_054 ····.catch·Landroid/os/RemoteException;·{:try_start_1·..·:try_end_1}·:catch_1
44 ····.catch·Landroid/os/ServiceSpecificException;·{:try_start_0·..·:try_end_0}·:catch_055 ····.catch·Landroid/os/ServiceSpecificException;·{:try_start_1·..·:try_end_1}·:catch_1
  
45 ····:catch_056 ····:catch_1
46 ····return-void57 ····return-void
47 .end·method58 .end·method
5.19 KB
smali/com/android/networkstack/tethering/Tethering$TetherMainSM$SetDnsForwardersErrorState.smali vs.
smali/com/android/networkstack/tethering/Tethering$TetherMasterSM$StartTetheringErrorState.smali
Files 12% similar despite different names
    
Offset 1, 89 lines modifiedOffset 1, 73 lines modified
1 .class·Lcom/android/networkstack/tethering/Tethering$TetherMainSM$SetDnsForwardersErrorState;1 .class·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM$StartTetheringErrorState;
2 .super·Lcom/android/networkstack/tethering/Tethering$TetherMainSM$ErrorState;2 .super·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM$ErrorState;
3 .source·"Tethering.java"3 .source·"Tethering.java"
  
  
4 #·annotations4 #·annotations
5 .annotation·system·Ldalvik/annotation/EnclosingClass;5 .annotation·system·Ldalvik/annotation/EnclosingClass;
6 ····value·=·Lcom/android/networkstack/tethering/Tethering$TetherMainSM;6 ····value·=·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;
7 .end·annotation7 .end·annotation
  
8 .annotation·system·Ldalvik/annotation/InnerClass;8 .annotation·system·Ldalvik/annotation/InnerClass;
9 ····accessFlags·=·0x09 ····accessFlags·=·0x0
10 ····name·=·"SetDnsForwardersErrorState"10 ····name·=·"StartTetheringErrorState"
11 .end·annotation11 .end·annotation
  
  
12 #·instance·fields12 #·instance·fields
13 .field·final·synthetic·this$1:Lcom/android/networkstack/tethering/Tethering$TetherMainSM;13 .field·final·synthetic·this$1:Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;
  
  
14 #·direct·methods14 #·direct·methods
15 .method·constructor·<init>(Lcom/android/networkstack/tethering/Tethering$TetherMainSM;)V15 .method·constructor·<init>(Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;)V
16 ····.locals·016 ····.locals·0
  
17 ····.line·194417 ····.line·1926
18 ····iput-object·p1,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMainSM$SetDnsForwardersErrorState;->this$1:Lcom/android/networkstack/tethering/Tethering$TetherMainSM;18 ····iput-object·p1,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM$StartTetheringErrorState;->this$1:Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;
  
19 ····invoke-direct·{p0,·p1},·Lcom/android/networkstack/tethering/Tethering$TetherMainSM$ErrorState;-><init>(Lcom/android/networkstack/tethering/Tethering$TetherMainSM;)V19 ····invoke-direct·{p0,·p1},·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM$ErrorState;-><init>(Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;)V
  
20 ····return-void20 ····return-void
21 .end·method21 .end·method
  
  
22 #·virtual·methods22 #·virtual·methods
23 .method·public·enter()V23 .method·public·enter()V
24 ····.locals·224 ····.locals·2
  
25 ····.line·194725 ····.line·1929
26 ····invoke-static·{},·Lcom/android/networkstack/tethering/Tethering;->access$3400()Ljava/lang/String;26 ····invoke-static·{},·Lcom/android/networkstack/tethering/Tethering;->access$3400()Ljava/lang/String;
  
27 ····move-result-object·v027 ····move-result-object·v0
  
28 ····const-string·v1,·"Error·in·setDnsForwarders"28 ····const-string·v1,·"Error·in·startTethering"
  
29 ····invoke-static·{v0,·v1},·Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I29 ····invoke-static·{v0,·v1},·Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
  
30 ····const/16·v0,·0x6c30 ····const/16·v0,·0x6a
  
31 ····.line·194831 ····.line·1930
32 ····invoke-virtual·{p0,·v0},·Lcom/android/networkstack/tethering/Tethering$TetherMainSM$ErrorState;->notify(I)V32 ····invoke-virtual·{p0,·v0},·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM$ErrorState;->notify(I)V
  
33 ····.line·195033 ····.line·1932
34 ····:try_start_034 ····:try_start_0
35 ····iget-object·v0,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMainSM$SetDnsForwardersErrorState;->this$1:Lcom/android/networkstack/tethering/Tethering$TetherMainSM;35 ····iget-object·p0,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM$StartTetheringErrorState;->this$1:Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;
  
36 ····iget-object·v0,·v0,·Lcom/android/networkstack/tethering/Tethering$TetherMainSM;->this$0:Lcom/android/networkstack/tethering/Tethering; 
  
37 ····invoke-static·{v0},·Lcom/android/networkstack/tethering/Tethering;->access$400(Lcom/android/networkstack/tethering/Tethering;)Landroid/net/INetd; 
  
38 ····move-result-object·v0 
  
39 ····invoke-interface·{v0},·Landroid/net/INetd;->tetherStop()V 
40 ····:try_end_0 
41 ····.catch·Landroid/os/RemoteException;·{:try_start_0·..·:try_end_0}·:catch_0 
42 ····.catch·Landroid/os/ServiceSpecificException;·{:try_start_0·..·:try_end_0}·:catch_0 
  
43 ····.line·1953 
44 ····:catch_0 
45 ····:try_start_1 
46 ····iget-object·p0,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMainSM$SetDnsForwardersErrorState;->this$1:Lcom/android/networkstack/tethering/Tethering$TetherMainSM; 
  
47 ····iget-object·p0,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMainSM;->this$0:Lcom/android/networkstack/tethering/Tethering;36 ····iget-object·p0,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;->this$0:Lcom/android/networkstack/tethering/Tethering;
  
48 ····invoke-static·{p0},·Lcom/android/networkstack/tethering/Tethering;->access$400(Lcom/android/networkstack/tethering/Tethering;)Landroid/net/INetd;37 ····invoke-static·{p0},·Lcom/android/networkstack/tethering/Tethering;->access$400(Lcom/android/networkstack/tethering/Tethering;)Landroid/net/INetd;
  
49 ····move-result-object·p038 ····move-result-object·p0
  
50 ····invoke-static·{},·Lcom/android/networkstack/tethering/Tethering;->access$3400()Ljava/lang/String;39 ····invoke-static·{},·Lcom/android/networkstack/tethering/Tethering;->access$3400()Ljava/lang/String;
  
51 ····move-result-object·v040 ····move-result-object·v0
  
52 ····invoke-interface·{p0,·v0},·Landroid/net/INetd;->ipfwdDisableForwarding(Ljava/lang/String;)V41 ····invoke-interface·{p0,·v0},·Landroid/net/INetd;->ipfwdDisableForwarding(Ljava/lang/String;)V
53 ····:try_end_142 ····:try_end_0
54 ····.catch·Landroid/os/RemoteException;·{:try_start_1·..·:try_end_1}·:catch_143 ····.catch·Landroid/os/RemoteException;·{:try_start_0·..·:try_end_0}·:catch_0
55 ····.catch·Landroid/os/ServiceSpecificException;·{:try_start_1·..·:try_end_1}·:catch_144 ····.catch·Landroid/os/ServiceSpecificException;·{:try_start_0·..·:try_end_0}·:catch_0
  
56 ····:catch_145 ····:catch_0
57 ····return-void46 ····return-void
58 .end·method47 .end·method
72.0 KB
smali/com/android/networkstack/tethering/Tethering$TetherMainSM.smali vs.
smali/com/android/networkstack/tethering/Tethering$TetherMasterSM.smali
Files 9% similar despite different names
    
Offset 1, 33 lines modifiedOffset 1, 33 lines modified
1 .class·Lcom/android/networkstack/tethering/Tethering$TetherMainSM;1 .class·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;
2 .super·Lcom/android/networkstack/tethering/util/StateMachine;2 .super·Lcom/android/networkstack/tethering/util/StateMachine;
3 .source·"Tethering.java"3 .source·"Tethering.java"
  
  
4 #·annotations4 #·annotations
5 .annotation·system·Ldalvik/annotation/EnclosingClass;5 .annotation·system·Ldalvik/annotation/EnclosingClass;
6 ····value·=·Lcom/android/networkstack/tethering/Tethering;6 ····value·=·Lcom/android/networkstack/tethering/Tethering;
7 .end·annotation7 .end·annotation
  
8 .annotation·system·Ldalvik/annotation/InnerClass;8 .annotation·system·Ldalvik/annotation/InnerClass;
9 ····accessFlags·=·0x09 ····accessFlags·=·0x0
10 ····name·=·"TetherMainSM"10 ····name·=·"TetherMasterSM"
11 .end·annotation11 .end·annotation
  
12 .annotation·system·Ldalvik/annotation/MemberClasses;12 .annotation·system·Ldalvik/annotation/MemberClasses;
13 ····value·=·{13 ····value·=·{
14 ········Lcom/android/networkstack/tethering/Tethering$TetherMainSM$OffloadWrapper;,14 ········Lcom/android/networkstack/tethering/Tethering$TetherMasterSM$OffloadWrapper;,
15 ········Lcom/android/networkstack/tethering/Tethering$TetherMainSM$SetDnsForwardersErrorState;,15 ········Lcom/android/networkstack/tethering/Tethering$TetherMasterSM$SetDnsForwardersErrorState;,
16 ········Lcom/android/networkstack/tethering/Tethering$TetherMainSM$StopTetheringErrorState;,16 ········Lcom/android/networkstack/tethering/Tethering$TetherMasterSM$StopTetheringErrorState;,
17 ········Lcom/android/networkstack/tethering/Tethering$TetherMainSM$StartTetheringErrorState;,17 ········Lcom/android/networkstack/tethering/Tethering$TetherMasterSM$StartTetheringErrorState;,
18 ········Lcom/android/networkstack/tethering/Tethering$TetherMainSM$SetIpForwardingDisabledErrorState;,18 ········Lcom/android/networkstack/tethering/Tethering$TetherMasterSM$SetIpForwardingDisabledErrorState;,
19 ········Lcom/android/networkstack/tethering/Tethering$TetherMainSM$SetIpForwardingEnabledErrorState;,19 ········Lcom/android/networkstack/tethering/Tethering$TetherMasterSM$SetIpForwardingEnabledErrorState;,
20 ········Lcom/android/networkstack/tethering/Tethering$TetherMainSM$ErrorState;,20 ········Lcom/android/networkstack/tethering/Tethering$TetherMasterSM$ErrorState;,
21 ········Lcom/android/networkstack/tethering/Tethering$TetherMainSM$TetherModeAliveState;,21 ········Lcom/android/networkstack/tethering/Tethering$TetherMasterSM$TetherModeAliveState;,
22 ········Lcom/android/networkstack/tethering/Tethering$TetherMainSM$InitialState;22 ········Lcom/android/networkstack/tethering/Tethering$TetherMasterSM$InitialState;
23 ····}23 ····}
24 .end·annotation24 .end·annotation
  
  
25 #·static·fields25 #·static·fields
26 .field·static·final·CMD_CLEAR_ERROR:I·=·0x626 .field·static·final·CMD_CLEAR_ERROR:I·=·0x6
  
Offset 57, 15 lines modifiedOffset 57, 15 lines modified
57 ············"Ljava/util/ArrayList<",57 ············"Ljava/util/ArrayList<",
58 ············"Landroid/net/ip/IpServer;",58 ············"Landroid/net/ip/IpServer;",
59 ············">;"59 ············">;"
60 ········}60 ········}
61 ····.end·annotation61 ····.end·annotation
62 .end·field62 .end·field
  
63 .field·private·final·mOffload:Lcom/android/networkstack/tethering/Tethering$TetherMainSM$OffloadWrapper;63 .field·private·final·mOffload:Lcom/android/networkstack/tethering/Tethering$TetherMasterSM$OffloadWrapper;
  
64 .field·private·final·mSetDnsForwardersErrorState:Lcom/android/networkstack/tethering/util/State;64 .field·private·final·mSetDnsForwardersErrorState:Lcom/android/networkstack/tethering/util/State;
  
65 .field·private·final·mSetIpForwardingDisabledErrorState:Lcom/android/networkstack/tethering/util/State;65 .field·private·final·mSetIpForwardingDisabledErrorState:Lcom/android/networkstack/tethering/util/State;
  
66 .field·private·final·mSetIpForwardingEnabledErrorState:Lcom/android/networkstack/tethering/util/State;66 .field·private·final·mSetIpForwardingEnabledErrorState:Lcom/android/networkstack/tethering/util/State;
  
Offset 78, 275 lines modifiedOffset 78, 294 lines modified
78 .field·final·synthetic·this$0:Lcom/android/networkstack/tethering/Tethering;78 .field·final·synthetic·this$0:Lcom/android/networkstack/tethering/Tethering;
  
  
79 #·direct·methods79 #·direct·methods
80 .method·constructor·<init>(Lcom/android/networkstack/tethering/Tethering;Ljava/lang/String;Landroid/os/Looper;Lcom/android/networkstack/tethering/TetheringDependencies;)V80 .method·constructor·<init>(Lcom/android/networkstack/tethering/Tethering;Ljava/lang/String;Landroid/os/Looper;Lcom/android/networkstack/tethering/TetheringDependencies;)V
81 ····.locals·081 ····.locals·0
  
82 ····.line·143182 ····.line·1428
83 ····iput-object·p1,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMainSM;->this$0:Lcom/android/networkstack/tethering/Tethering;83 ····iput-object·p1,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;->this$0:Lcom/android/networkstack/tethering/Tethering;
  
84 ····.line·143284 ····.line·1429
85 ····invoke-direct·{p0,·p2,·p3},·Lcom/android/networkstack/tethering/util/StateMachine;-><init>(Ljava/lang/String;Landroid/os/Looper;)V85 ····invoke-direct·{p0,·p2,·p3},·Lcom/android/networkstack/tethering/util/StateMachine;-><init>(Ljava/lang/String;Landroid/os/Looper;)V
  
86 ····.line·143486 ····.line·1431
87 ····new-instance·p2,·Lcom/android/networkstack/tethering/Tethering$TetherMainSM$InitialState;87 ····new-instance·p2,·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM$InitialState;
  
88 ····invoke-direct·{p2,·p0},·Lcom/android/networkstack/tethering/Tethering$TetherMainSM$InitialState;-><init>(Lcom/android/networkstack/tethering/Tethering$TetherMainSM;)V88 ····invoke-direct·{p2,·p0},·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM$InitialState;-><init>(Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;)V
  
89 ····iput-object·p2,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMainSM;->mInitialState:Lcom/android/networkstack/tethering/util/State;89 ····iput-object·p2,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;->mInitialState:Lcom/android/networkstack/tethering/util/State;
  
90 ····.line·143590 ····.line·1432
91 ····new-instance·p2,·Lcom/android/networkstack/tethering/Tethering$TetherMainSM$TetherModeAliveState;91 ····new-instance·p2,·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM$TetherModeAliveState;
  
92 ····invoke-direct·{p2,·p0},·Lcom/android/networkstack/tethering/Tethering$TetherMainSM$TetherModeAliveState;-><init>(Lcom/android/networkstack/tethering/Tethering$TetherMainSM;)V92 ····invoke-direct·{p2,·p0},·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM$TetherModeAliveState;-><init>(Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;)V
  
93 ····iput-object·p2,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMainSM;->mTetherModeAliveState:Lcom/android/networkstack/tethering/util/State;93 ····iput-object·p2,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;->mTetherModeAliveState:Lcom/android/networkstack/tethering/util/State;
  
94 ····.line·143694 ····.line·1433
95 ····new-instance·p2,·Lcom/android/networkstack/tethering/Tethering$TetherMainSM$SetIpForwardingEnabledErrorState;95 ····new-instance·p2,·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM$SetIpForwardingEnabledErrorState;
  
96 ····invoke-direct·{p2,·p0},·Lcom/android/networkstack/tethering/Tethering$TetherMainSM$SetIpForwardingEnabledErrorState;-><init>(Lcom/android/networkstack/tethering/Tethering$TetherMainSM;)V96 ····invoke-direct·{p2,·p0},·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM$SetIpForwardingEnabledErrorState;-><init>(Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;)V
  
97 ····iput-object·p2,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMainSM;->mSetIpForwardingEnabledErrorState:Lcom/android/networkstack/tethering/util/State;97 ····iput-object·p2,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;->mSetIpForwardingEnabledErrorState:Lcom/android/networkstack/tethering/util/State;
  
98 ····.line·143798 ····.line·1434
99 ····new-instance·p2,·Lcom/android/networkstack/tethering/Tethering$TetherMainSM$SetIpForwardingDisabledErrorState;99 ····new-instance·p2,·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM$SetIpForwardingDisabledErrorState;
  
100 ····invoke-direct·{p2,·p0},·Lcom/android/networkstack/tethering/Tethering$TetherMainSM$SetIpForwardingDisabledErrorState;-><init>(Lcom/android/networkstack/tethering/Tethering$TetherMainSM;)V100 ····invoke-direct·{p2,·p0},·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM$SetIpForwardingDisabledErrorState;-><init>(Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;)V
  
101 ····iput-object·p2,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMainSM;->mSetIpForwardingDisabledErrorState:Lcom/android/networkstack/tethering/util/State;101 ····iput-object·p2,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;->mSetIpForwardingDisabledErrorState:Lcom/android/networkstack/tethering/util/State;
  
102 ····.line·1438102 ····.line·1435
103 ····new-instance·p2,·Lcom/android/networkstack/tethering/Tethering$TetherMainSM$StartTetheringErrorState;103 ····new-instance·p2,·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM$StartTetheringErrorState;
  
104 ····invoke-direct·{p2,·p0},·Lcom/android/networkstack/tethering/Tethering$TetherMainSM$StartTetheringErrorState;-><init>(Lcom/android/networkstack/tethering/Tethering$TetherMainSM;)V104 ····invoke-direct·{p2,·p0},·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM$StartTetheringErrorState;-><init>(Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;)V
  
105 ····iput-object·p2,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMainSM;->mStartTetheringErrorState:Lcom/android/networkstack/tethering/util/State;105 ····iput-object·p2,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;->mStartTetheringErrorState:Lcom/android/networkstack/tethering/util/State;
  
106 ····.line·1439106 ····.line·1436
107 ····new-instance·p2,·Lcom/android/networkstack/tethering/Tethering$TetherMainSM$StopTetheringErrorState;107 ····new-instance·p2,·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM$StopTetheringErrorState;
  
108 ····invoke-direct·{p2,·p0},·Lcom/android/networkstack/tethering/Tethering$TetherMainSM$StopTetheringErrorState;-><init>(Lcom/android/networkstack/tethering/Tethering$TetherMainSM;)V108 ····invoke-direct·{p2,·p0},·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM$StopTetheringErrorState;-><init>(Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;)V
  
109 ····iput-object·p2,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMainSM;->mStopTetheringErrorState:Lcom/android/networkstack/tethering/util/State;109 ····iput-object·p2,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;->mStopTetheringErrorState:Lcom/android/networkstack/tethering/util/State;
  
110 ····.line·1440110 ····.line·1437
111 ····new-instance·p2,·Lcom/android/networkstack/tethering/Tethering$TetherMainSM$SetDnsForwardersErrorState;111 ····new-instance·p2,·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM$SetDnsForwardersErrorState;
  
112 ····invoke-direct·{p2,·p0},·Lcom/android/networkstack/tethering/Tethering$TetherMainSM$SetDnsForwardersErrorState;-><init>(Lcom/android/networkstack/tethering/Tethering$TetherMainSM;)V112 ····invoke-direct·{p2,·p0},·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM$SetDnsForwardersErrorState;-><init>(Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;)V
  
113 ····iput-object·p2,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMainSM;->mSetDnsForwardersErrorState:Lcom/android/networkstack/tethering/util/State;113 ····iput-object·p2,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;->mSetDnsForwardersErrorState:Lcom/android/networkstack/tethering/util/State;
  
114 ····.line·1442114 ····.line·1439
115 ····iget-object·p2,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMainSM;->mInitialState:Lcom/android/networkstack/tethering/util/State;115 ····iget-object·p2,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;->mInitialState:Lcom/android/networkstack/tethering/util/State;
  
116 ····invoke-virtual·{p0,·p2},·Lcom/android/networkstack/tethering/util/StateMachine;->addState(Lcom/android/networkstack/tethering/util/State;)V116 ····invoke-virtual·{p0,·p2},·Lcom/android/networkstack/tethering/util/StateMachine;->addState(Lcom/android/networkstack/tethering/util/State;)V
  
117 ····.line·1443117 ····.line·1440
118 ····iget-object·p2,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMainSM;->mTetherModeAliveState:Lcom/android/networkstack/tethering/util/State;118 ····iget-object·p2,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;->mTetherModeAliveState:Lcom/android/networkstack/tethering/util/State;
  
119 ····invoke-virtual·{p0,·p2},·Lcom/android/networkstack/tethering/util/StateMachine;->addState(Lcom/android/networkstack/tethering/util/State;)V119 ····invoke-virtual·{p0,·p2},·Lcom/android/networkstack/tethering/util/StateMachine;->addState(Lcom/android/networkstack/tethering/util/State;)V
  
120 ····.line·1444120 ····.line·1441
121 ····iget-object·p2,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMainSM;->mSetIpForwardingEnabledErrorState:Lcom/android/networkstack/tethering/util/State;121 ····iget-object·p2,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;->mSetIpForwardingEnabledErrorState:Lcom/android/networkstack/tethering/util/State;
  
122 ····invoke-virtual·{p0,·p2},·Lcom/android/networkstack/tethering/util/StateMachine;->addState(Lcom/android/networkstack/tethering/util/State;)V122 ····invoke-virtual·{p0,·p2},·Lcom/android/networkstack/tethering/util/StateMachine;->addState(Lcom/android/networkstack/tethering/util/State;)V
  
... Open expanded diff (truncated) ...
2.31 KB
smali/com/android/networkstack/tethering/Tethering$TetherMainSM$SetIpForwardingEnabledErrorState.smali vs.
smali/com/android/networkstack/tethering/Tethering$TetherMasterSM$SetIpForwardingEnabledErrorState.smali
Files 15% similar despite different names
    
Offset 1, 47 lines modifiedOffset 1, 47 lines modified
1 .class·Lcom/android/networkstack/tethering/Tethering$TetherMainSM$SetIpForwardingEnabledErrorState;1 .class·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM$SetIpForwardingEnabledErrorState;
2 .super·Lcom/android/networkstack/tethering/Tethering$TetherMainSM$ErrorState;2 .super·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM$ErrorState;
3 .source·"Tethering.java"3 .source·"Tethering.java"
  
  
4 #·annotations4 #·annotations
5 .annotation·system·Ldalvik/annotation/EnclosingClass;5 .annotation·system·Ldalvik/annotation/EnclosingClass;
6 ····value·=·Lcom/android/networkstack/tethering/Tethering$TetherMainSM;6 ····value·=·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;
7 .end·annotation7 .end·annotation
  
8 .annotation·system·Ldalvik/annotation/InnerClass;8 .annotation·system·Ldalvik/annotation/InnerClass;
9 ····accessFlags·=·0x09 ····accessFlags·=·0x0
10 ····name·=·"SetIpForwardingEnabledErrorState"10 ····name·=·"SetIpForwardingEnabledErrorState"
11 .end·annotation11 .end·annotation
  
  
12 #·direct·methods12 #·direct·methods
13 .method·constructor·<init>(Lcom/android/networkstack/tethering/Tethering$TetherMainSM;)V13 .method·constructor·<init>(Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;)V
14 ····.locals·014 ····.locals·0
  
15 ····.line·190615 ····.line·1910
16 ····invoke-direct·{p0,·p1},·Lcom/android/networkstack/tethering/Tethering$TetherMainSM$ErrorState;-><init>(Lcom/android/networkstack/tethering/Tethering$TetherMainSM;)V16 ····invoke-direct·{p0,·p1},·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM$ErrorState;-><init>(Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;)V
  
17 ····return-void17 ····return-void
18 .end·method18 .end·method
  
  
19 #·virtual·methods19 #·virtual·methods
20 .method·public·enter()V20 .method·public·enter()V
21 ····.locals·221 ····.locals·2
  
22 ····.line·190922 ····.line·1913
23 ····invoke-static·{},·Lcom/android/networkstack/tethering/Tethering;->access$3400()Ljava/lang/String;23 ····invoke-static·{},·Lcom/android/networkstack/tethering/Tethering;->access$3400()Ljava/lang/String;
  
24 ····move-result-object·v024 ····move-result-object·v0
  
25 ····const-string·v1,·"Error·in·setIpForwardingEnabled"25 ····const-string·v1,·"Error·in·setIpForwardingEnabled"
  
26 ····invoke-static·{v0,·v1},·Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I26 ····invoke-static·{v0,·v1},·Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
  
27 ····const/16·v0,·0x6827 ····const/16·v0,·0x68
  
28 ····.line·191028 ····.line·1914
29 ····invoke-virtual·{p0,·v0},·Lcom/android/networkstack/tethering/Tethering$TetherMainSM$ErrorState;->notify(I)V29 ····invoke-virtual·{p0,·v0},·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM$ErrorState;->notify(I)V
  
30 ····return-void30 ····return-void
31 .end·method31 .end·method
17.4 KB
smali/com/android/networkstack/tethering/Tethering$TetherMainSM$OffloadWrapper.smali vs.
smali/com/android/networkstack/tethering/Tethering$TetherMasterSM$OffloadWrapper.smali
Files 16% similar despite different names
    
Offset 1, 67 lines modifiedOffset 1, 67 lines modified
1 .class·Lcom/android/networkstack/tethering/Tethering$TetherMainSM$OffloadWrapper;1 .class·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM$OffloadWrapper;
2 .super·Ljava/lang/Object;2 .super·Ljava/lang/Object;
3 .source·"Tethering.java"3 .source·"Tethering.java"
  
  
4 #·annotations4 #·annotations
5 .annotation·system·Ldalvik/annotation/EnclosingClass;5 .annotation·system·Ldalvik/annotation/EnclosingClass;
6 ····value·=·Lcom/android/networkstack/tethering/Tethering$TetherMainSM;6 ····value·=·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;
7 .end·annotation7 .end·annotation
  
8 .annotation·system·Ldalvik/annotation/InnerClass;8 .annotation·system·Ldalvik/annotation/InnerClass;
9 ····accessFlags·=·0x09 ····accessFlags·=·0x0
10 ····name·=·"OffloadWrapper"10 ····name·=·"OffloadWrapper"
11 .end·annotation11 .end·annotation
  
  
12 #·instance·fields12 #·instance·fields
13 .field·final·synthetic·this$1:Lcom/android/networkstack/tethering/Tethering$TetherMainSM;13 .field·final·synthetic·this$1:Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;
  
  
14 #·direct·methods14 #·direct·methods
15 .method·constructor·<init>(Lcom/android/networkstack/tethering/Tethering$TetherMainSM;)V15 .method·constructor·<init>(Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;)V
16 ····.locals·016 ····.locals·0
  
17 ····.line·196417 ····.line·1968
18 ····iput-object·p1,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMainSM$OffloadWrapper;->this$1:Lcom/android/networkstack/tethering/Tethering$TetherMainSM;18 ····iput-object·p1,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM$OffloadWrapper;->this$1:Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;
  
19 ····invoke-direct·{p0},·Ljava/lang/Object;-><init>()V19 ····invoke-direct·{p0},·Ljava/lang/Object;-><init>()V
  
20 ····return-void20 ····return-void
21 .end·method21 .end·method
  
22 .method·private·updateOffloadStatus(I)V22 .method·private·updateOffloadStatus(I)V
23 ····.locals·123 ····.locals·1
  
24 ····.line·203724 ····.line·2041
25 ····iget-object·v0,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMainSM$OffloadWrapper;->this$1:Lcom/android/networkstack/tethering/Tethering$TetherMainSM;25 ····iget-object·v0,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM$OffloadWrapper;->this$1:Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;
  
26 ····iget-object·v0,·v0,·Lcom/android/networkstack/tethering/Tethering$TetherMainSM;->this$0:Lcom/android/networkstack/tethering/Tethering;26 ····iget-object·v0,·v0,·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;->this$0:Lcom/android/networkstack/tethering/Tethering;
  
27 ····invoke-static·{v0},·Lcom/android/networkstack/tethering/Tethering;->access$5000(Lcom/android/networkstack/tethering/Tethering;)I27 ····invoke-static·{v0},·Lcom/android/networkstack/tethering/Tethering;->access$5000(Lcom/android/networkstack/tethering/Tethering;)I
  
28 ····move-result·v028 ····move-result·v0
  
29 ····if-ne·p1,·v0,·:cond_029 ····if-ne·p1,·v0,·:cond_0
  
30 ····return-void30 ····return-void
  
31 ····.line·203931 ····.line·2043
32 ····:cond_032 ····:cond_0
33 ····iget-object·v0,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMainSM$OffloadWrapper;->this$1:Lcom/android/networkstack/tethering/Tethering$TetherMainSM;33 ····iget-object·v0,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM$OffloadWrapper;->this$1:Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;
  
34 ····iget-object·v0,·v0,·Lcom/android/networkstack/tethering/Tethering$TetherMainSM;->this$0:Lcom/android/networkstack/tethering/Tethering;34 ····iget-object·v0,·v0,·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;->this$0:Lcom/android/networkstack/tethering/Tethering;
  
35 ····invoke-static·{v0,·p1},·Lcom/android/networkstack/tethering/Tethering;->access$5002(Lcom/android/networkstack/tethering/Tethering;I)I35 ····invoke-static·{v0,·p1},·Lcom/android/networkstack/tethering/Tethering;->access$5002(Lcom/android/networkstack/tethering/Tethering;I)I
  
36 ····.line·204036 ····.line·2044
37 ····iget-object·p0,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMainSM$OffloadWrapper;->this$1:Lcom/android/networkstack/tethering/Tethering$TetherMainSM;37 ····iget-object·p0,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM$OffloadWrapper;->this$1:Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;
  
38 ····iget-object·p0,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMainSM;->this$0:Lcom/android/networkstack/tethering/Tethering;38 ····iget-object·p0,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;->this$0:Lcom/android/networkstack/tethering/Tethering;
  
39 ····invoke-static·{p0},·Lcom/android/networkstack/tethering/Tethering;->access$5000(Lcom/android/networkstack/tethering/Tethering;)I39 ····invoke-static·{p0},·Lcom/android/networkstack/tethering/Tethering;->access$5000(Lcom/android/networkstack/tethering/Tethering;)I
  
40 ····move-result·p140 ····move-result·p1
  
41 ····invoke-static·{p0,·p1},·Lcom/android/networkstack/tethering/Tethering;->access$5100(Lcom/android/networkstack/tethering/Tethering;I)V41 ····invoke-static·{p0,·p1},·Lcom/android/networkstack/tethering/Tethering;->access$5100(Lcom/android/networkstack/tethering/Tethering;I)V
  
Offset 69, 48 lines modifiedOffset 69, 48 lines modified
69 .end·method69 .end·method
  
  
70 #·virtual·methods70 #·virtual·methods
71 .method·public·excludeDownstreamInterface(Ljava/lang/String;)V71 .method·public·excludeDownstreamInterface(Ljava/lang/String;)V
72 ····.locals·072 ····.locals·0
  
73 ····.line·199273 ····.line·1996
74 ····invoke-virtual·{p0},·Lcom/android/networkstack/tethering/Tethering$TetherMainSM$OffloadWrapper;->sendOffloadExemptPrefixes()V74 ····invoke-virtual·{p0},·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM$OffloadWrapper;->sendOffloadExemptPrefixes()V
  
75 ····.line·199375 ····.line·1997
76 ····iget-object·p0,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMainSM$OffloadWrapper;->this$1:Lcom/android/networkstack/tethering/Tethering$TetherMainSM;76 ····iget-object·p0,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM$OffloadWrapper;->this$1:Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;
  
77 ····iget-object·p0,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMainSM;->this$0:Lcom/android/networkstack/tethering/Tethering;77 ····iget-object·p0,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;->this$0:Lcom/android/networkstack/tethering/Tethering;
  
78 ····invoke-static·{p0},·Lcom/android/networkstack/tethering/Tethering;->access$4900(Lcom/android/networkstack/tethering/Tethering;)Lcom/android/networkstack/tethering/OffloadController;78 ····invoke-static·{p0},·Lcom/android/networkstack/tethering/Tethering;->access$4900(Lcom/android/networkstack/tethering/Tethering;)Lcom/android/networkstack/tethering/OffloadController;
  
79 ····move-result-object·p079 ····move-result-object·p0
  
80 ····invoke-virtual·{p0,·p1},·Lcom/android/networkstack/tethering/OffloadController;->removeDownstreamInterface(Ljava/lang/String;)V80 ····invoke-virtual·{p0,·p1},·Lcom/android/networkstack/tethering/OffloadController;->removeDownstreamInterface(Ljava/lang/String;)V
  
81 ····return-void81 ····return-void
82 .end·method82 .end·method
  
83 .method·public·sendOffloadExemptPrefixes()V83 .method·public·sendOffloadExemptPrefixes()V
84 ····.locals·184 ····.locals·1
  
85 ····.line·199785 ····.line·2001
86 ····iget-object·v0,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMainSM$OffloadWrapper;->this$1:Lcom/android/networkstack/tethering/Tethering$TetherMainSM;86 ····iget-object·v0,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM$OffloadWrapper;->this$1:Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;
  
87 ····iget-object·v0,·v0,·Lcom/android/networkstack/tethering/Tethering$TetherMainSM;->this$0:Lcom/android/networkstack/tethering/Tethering;87 ····iget-object·v0,·v0,·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;->this$0:Lcom/android/networkstack/tethering/Tethering;
  
88 ····invoke-static·{v0},·Lcom/android/networkstack/tethering/Tethering;->access$3600(Lcom/android/networkstack/tethering/Tethering;)Lcom/android/networkstack/tethering/UpstreamNetworkMonitor;88 ····invoke-static·{v0},·Lcom/android/networkstack/tethering/Tethering;->access$3600(Lcom/android/networkstack/tethering/Tethering;)Lcom/android/networkstack/tethering/UpstreamNetworkMonitor;
  
89 ····move-result-object·v089 ····move-result-object·v0
  
90 ····invoke-virtual·{v0},·Lcom/android/networkstack/tethering/UpstreamNetworkMonitor;->getLocalPrefixes()Ljava/util/Set;90 ····invoke-virtual·{v0},·Lcom/android/networkstack/tethering/UpstreamNetworkMonitor;->getLocalPrefixes()Ljava/util/Set;
  
91 ····move-result-object·v091 ····move-result-object·v0
  
92 ····invoke-virtual·{p0,·v0},·Lcom/android/networkstack/tethering/Tethering$TetherMainSM$OffloadWrapper;->sendOffloadExemptPrefixes(Ljava/util/Set;)V92 ····invoke-virtual·{p0,·v0},·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM$OffloadWrapper;->sendOffloadExemptPrefixes(Ljava/util/Set;)V
  
93 ····return-void93 ····return-void
94 .end·method94 .end·method
  
95 .method·public·sendOffloadExemptPrefixes(Ljava/util/Set;)V95 .method·public·sendOffloadExemptPrefixes(Ljava/util/Set;)V
96 ····.locals·496 ····.locals·4
97 ····.annotation·system·Ldalvik/annotation/Signature;97 ····.annotation·system·Ldalvik/annotation/Signature;
Offset 118, 26 lines modifiedOffset 118, 26 lines modified
118 ············"(",118 ············"(",
119 ············"Ljava/util/Set<",119 ············"Ljava/util/Set<",
120 ············"Landroid/net/IpPrefix;",120 ············"Landroid/net/IpPrefix;",
121 ············">;)V"121 ············">;)V"
122 ········}122 ········}
123 ····.end·annotation123 ····.end·annotation
  
124 ····.line·2002124 ····.line·2006
125 ····invoke-static·{p1},·Landroid/net/util/PrefixUtils;->addNonForwardablePrefixes(Ljava/util/Set;)V125 ····invoke-static·{p1},·Landroid/net/util/PrefixUtils;->addNonForwardablePrefixes(Ljava/util/Set;)V
  
... Open expanded diff ...
5.33 KB
smali/com/android/networkstack/tethering/Tethering$TetherMainSM$ErrorState.smali vs.
smali/com/android/networkstack/tethering/Tethering$TetherMasterSM$ErrorState.smali
Files 16% similar despite different names
    
Offset 1, 53 lines modifiedOffset 1, 53 lines modified
1 .class·Lcom/android/networkstack/tethering/Tethering$TetherMainSM$ErrorState;1 .class·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM$ErrorState;
2 .super·Lcom/android/networkstack/tethering/util/State;2 .super·Lcom/android/networkstack/tethering/util/State;
3 .source·"Tethering.java"3 .source·"Tethering.java"
  
  
4 #·annotations4 #·annotations
5 .annotation·system·Ldalvik/annotation/EnclosingClass;5 .annotation·system·Ldalvik/annotation/EnclosingClass;
6 ····value·=·Lcom/android/networkstack/tethering/Tethering$TetherMainSM;6 ····value·=·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;
7 .end·annotation7 .end·annotation
  
8 .annotation·system·Ldalvik/annotation/InnerClass;8 .annotation·system·Ldalvik/annotation/InnerClass;
9 ····accessFlags·=·0x09 ····accessFlags·=·0x0
10 ····name·=·"ErrorState"10 ····name·=·"ErrorState"
11 .end·annotation11 .end·annotation
  
  
12 #·instance·fields12 #·instance·fields
13 .field·private·mErrorNotification:I13 .field·private·mErrorNotification:I
  
14 .field·final·synthetic·this$1:Lcom/android/networkstack/tethering/Tethering$TetherMainSM;14 .field·final·synthetic·this$1:Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;
  
  
15 #·direct·methods15 #·direct·methods
16 .method·constructor·<init>(Lcom/android/networkstack/tethering/Tethering$TetherMainSM;)V16 .method·constructor·<init>(Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;)V
17 ····.locals·017 ····.locals·0
  
18 ····.line·187618 ····.line·1880
19 ····iput-object·p1,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMainSM$ErrorState;->this$1:Lcom/android/networkstack/tethering/Tethering$TetherMainSM;19 ····iput-object·p1,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM$ErrorState;->this$1:Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;
  
20 ····invoke-direct·{p0},·Lcom/android/networkstack/tethering/util/State;-><init>()V20 ····invoke-direct·{p0},·Lcom/android/networkstack/tethering/util/State;-><init>()V
  
21 ····return-void21 ····return-void
22 .end·method22 .end·method
  
  
23 #·virtual·methods23 #·virtual·methods
24 .method·notify(I)V24 .method·notify(I)V
25 ····.locals·125 ····.locals·1
  
26 ····.line·189826 ····.line·1902
27 ····iput·p1,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMainSM$ErrorState;->mErrorNotification:I27 ····iput·p1,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM$ErrorState;->mErrorNotification:I
  
28 ····.line·189928 ····.line·1903
29 ····iget-object·p0,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMainSM$ErrorState;->this$1:Lcom/android/networkstack/tethering/Tethering$TetherMainSM;29 ····iget-object·p0,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM$ErrorState;->this$1:Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;
  
30 ····invoke-static·{p0},·Lcom/android/networkstack/tethering/Tethering$TetherMainSM;->access$4700(Lcom/android/networkstack/tethering/Tethering$TetherMainSM;)Ljava/util/ArrayList;30 ····invoke-static·{p0},·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;->access$4700(Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;)Ljava/util/ArrayList;
  
31 ····move-result-object·p031 ····move-result-object·p0
  
32 ····invoke-virtual·{p0},·Ljava/util/ArrayList;->iterator()Ljava/util/Iterator;32 ····invoke-virtual·{p0},·Ljava/util/ArrayList;->iterator()Ljava/util/Iterator;
  
33 ····move-result-object·p033 ····move-result-object·p0
  
Offset 60, 64 lines modifiedOffset 60, 64 lines modified
  
60 ····invoke-interface·{p0},·Ljava/util/Iterator;->next()Ljava/lang/Object;60 ····invoke-interface·{p0},·Ljava/util/Iterator;->next()Ljava/lang/Object;
  
61 ····move-result-object·v061 ····move-result-object·v0
  
62 ····check-cast·v0,·Landroid/net/ip/IpServer;62 ····check-cast·v0,·Landroid/net/ip/IpServer;
  
63 ····.line·190063 ····.line·1904
64 ····invoke-virtual·{v0,·p1},·Lcom/android/networkstack/tethering/util/StateMachine;->sendMessage(I)V64 ····invoke-virtual·{v0,·p1},·Lcom/android/networkstack/tethering/util/StateMachine;->sendMessage(I)V
  
65 ····goto·:goto_065 ····goto·:goto_0
  
66 ····:cond_066 ····:cond_0
67 ····return-void67 ····return-void
68 .end·method68 .end·method
  
69 .method·public·processMessage(Landroid/os/Message;)Z69 .method·public·processMessage(Landroid/os/Message;)Z
70 ····.locals·370 ····.locals·3
  
71 ····.line·188271 ····.line·1886
72 ····iget·v0,·p1,·Landroid/os/Message;->what:I72 ····iget·v0,·p1,·Landroid/os/Message;->what:I
  
73 ····const/4·v1,·0x073 ····const/4·v1,·0x0
  
74 ····const/4·v2,·0x174 ····const/4·v2,·0x1
  
75 ····if-eq·v0,·v2,·:cond_175 ····if-eq·v0,·v2,·:cond_1
  
76 ····const/4·p1,·0x676 ····const/4·p1,·0x6
  
77 ····if-eq·v0,·p1,·:cond_077 ····if-eq·v0,·p1,·:cond_0
  
78 ····goto·:goto_178 ····goto·:goto_1
  
79 ····.line·188879 ····.line·1892
80 ····:cond_080 ····:cond_0
81 ····iput·v1,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMainSM$ErrorState;->mErrorNotification:I81 ····iput·v1,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM$ErrorState;->mErrorNotification:I
  
82 ····.line·188982 ····.line·1893
83 ····iget-object·p0,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMainSM$ErrorState;->this$1:Lcom/android/networkstack/tethering/Tethering$TetherMainSM;83 ····iget-object·p0,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM$ErrorState;->this$1:Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;
  
84 ····invoke-static·{p0},·Lcom/android/networkstack/tethering/Tethering$TetherMainSM;->access$4800(Lcom/android/networkstack/tethering/Tethering$TetherMainSM;)Lcom/android/networkstack/tethering/util/State;84 ····invoke-static·{p0},·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;->access$4800(Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;)Lcom/android/networkstack/tethering/util/State;
  
85 ····move-result-object·p185 ····move-result-object·p1
  
86 ····invoke-virtual·{p0,·p1},·Lcom/android/networkstack/tethering/util/StateMachine;->transitionTo(Lcom/android/networkstack/tethering/util/IState;)V86 ····invoke-virtual·{p0,·p1},·Lcom/android/networkstack/tethering/util/StateMachine;->transitionTo(Lcom/android/networkstack/tethering/util/IState;)V
  
87 ····goto·:goto_087 ····goto·:goto_0
  
88 ····.line·188488 ····.line·1888
89 ····:cond_189 ····:cond_1
90 ····iget-object·p1,·p1,·Landroid/os/Message;->obj:Ljava/lang/Object;90 ····iget-object·p1,·p1,·Landroid/os/Message;->obj:Ljava/lang/Object;
  
91 ····check-cast·p1,·Landroid/net/ip/IpServer;91 ····check-cast·p1,·Landroid/net/ip/IpServer;
  
92 ····.line·188592 ····.line·1889
93 ····iget·p0,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMainSM$ErrorState;->mErrorNotification:I93 ····iget·p0,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM$ErrorState;->mErrorNotification:I
  
94 ····invoke-virtual·{p1,·p0},·Lcom/android/networkstack/tethering/util/StateMachine;->sendMessage(I)V94 ····invoke-virtual·{p1,·p0},·Lcom/android/networkstack/tethering/util/StateMachine;->sendMessage(I)V
  
95 ····:goto_095 ····:goto_0
96 ····move·v1,·v296 ····move·v1,·v2
  
97 ····:goto_197 ····:goto_1
5.75 KB
smali/com/android/networkstack/tethering/Tethering$TetherMainSM$InitialState.smali vs.
smali/com/android/networkstack/tethering/Tethering$TetherMasterSM$InitialState.smali
Files 17% similar despite different names
    
Offset 1, 54 lines modifiedOffset 1, 54 lines modified
1 .class·Lcom/android/networkstack/tethering/Tethering$TetherMainSM$InitialState;1 .class·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM$InitialState;
2 .super·Lcom/android/networkstack/tethering/util/State;2 .super·Lcom/android/networkstack/tethering/util/State;
3 .source·"Tethering.java"3 .source·"Tethering.java"
  
  
4 #·annotations4 #·annotations
5 .annotation·system·Ldalvik/annotation/EnclosingClass;5 .annotation·system·Ldalvik/annotation/EnclosingClass;
6 ····value·=·Lcom/android/networkstack/tethering/Tethering$TetherMainSM;6 ····value·=·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;
7 .end·annotation7 .end·annotation
  
8 .annotation·system·Ldalvik/annotation/InnerClass;8 .annotation·system·Ldalvik/annotation/InnerClass;
9 ····accessFlags·=·0x09 ····accessFlags·=·0x0
10 ····name·=·"InitialState"10 ····name·=·"InitialState"
11 .end·annotation11 .end·annotation
  
  
12 #·instance·fields12 #·instance·fields
13 .field·final·synthetic·this$1:Lcom/android/networkstack/tethering/Tethering$TetherMainSM;13 .field·final·synthetic·this$1:Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;
  
  
14 #·direct·methods14 #·direct·methods
15 .method·constructor·<init>(Lcom/android/networkstack/tethering/Tethering$TetherMainSM;)V15 .method·constructor·<init>(Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;)V
16 ····.locals·016 ····.locals·0
  
17 ····.line·145717 ····.line·1454
18 ····iput-object·p1,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMainSM$InitialState;->this$1:Lcom/android/networkstack/tethering/Tethering$TetherMainSM;18 ····iput-object·p1,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM$InitialState;->this$1:Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;
  
19 ····invoke-direct·{p0},·Lcom/android/networkstack/tethering/util/State;-><init>()V19 ····invoke-direct·{p0},·Lcom/android/networkstack/tethering/util/State;-><init>()V
  
20 ····return-void20 ····return-void
21 .end·method21 .end·method
  
  
22 #·virtual·methods22 #·virtual·methods
23 .method·public·processMessage(Landroid/os/Message;)Z23 .method·public·processMessage(Landroid/os/Message;)Z
24 ····.locals·324 ····.locals·3
  
25 ····.line·146025 ····.line·1457
26 ····iget-object·v0,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMainSM$InitialState;->this$1:Lcom/android/networkstack/tethering/Tethering$TetherMainSM;26 ····iget-object·v0,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM$InitialState;->this$1:Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;
  
27 ····iget-object·v0,·v0,·Lcom/android/networkstack/tethering/Tethering$TetherMainSM;->this$0:Lcom/android/networkstack/tethering/Tethering;27 ····iget-object·v0,·v0,·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;->this$0:Lcom/android/networkstack/tethering/Tethering;
  
28 ····iget·v1,·p1,·Landroid/os/Message;->what:I28 ····iget·v1,·p1,·Landroid/os/Message;->what:I
  
29 ····invoke-static·{v0,·p0,·v1},·Lcom/android/networkstack/tethering/Tethering;->access$3000(Lcom/android/networkstack/tethering/Tethering;Lcom/android/networkstack/tethering/util/State;I)V29 ····invoke-static·{v0,·p0,·v1},·Lcom/android/networkstack/tethering/Tethering;->access$3000(Lcom/android/networkstack/tethering/Tethering;Lcom/android/networkstack/tethering/util/State;I)V
  
30 ····.line·146130 ····.line·1458
31 ····iget·v0,·p1,·Landroid/os/Message;->what:I31 ····iget·v0,·p1,·Landroid/os/Message;->what:I
  
32 ····const/4·v1,·0x132 ····const/4·v1,·0x1
  
33 ····if-eq·v0,·v1,·:cond_133 ····if-eq·v0,·v1,·:cond_1
  
34 ····const/4·v2,·0x234 ····const/4·v2,·0x2
Offset 59, 44 lines modifiedOffset 59, 44 lines modified
  
59 ····if-eq·v0,·p0,·:cond_259 ····if-eq·v0,·p0,·:cond_2
  
60 ····const/4·p0,·0x060 ····const/4·p0,·0x0
  
61 ····return·p061 ····return·p0
  
62 ····.line·147062 ····.line·1467
63 ····:cond_063 ····:cond_0
64 ····iget-object·p1,·p1,·Landroid/os/Message;->obj:Ljava/lang/Object;64 ····iget-object·p1,·p1,·Landroid/os/Message;->obj:Ljava/lang/Object;
  
65 ····check-cast·p1,·Landroid/net/ip/IpServer;65 ····check-cast·p1,·Landroid/net/ip/IpServer;
  
66 ····.line·147266 ····.line·1469
67 ····iget-object·p0,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMainSM$InitialState;->this$1:Lcom/android/networkstack/tethering/Tethering$TetherMainSM;67 ····iget-object·p0,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM$InitialState;->this$1:Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;
  
68 ····invoke-static·{p0,·p1},·Lcom/android/networkstack/tethering/Tethering$TetherMainSM;->access$3300(Lcom/android/networkstack/tethering/Tethering$TetherMainSM;Landroid/net/ip/IpServer;)V68 ····invoke-static·{p0,·p1},·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;->access$3300(Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;Landroid/net/ip/IpServer;)V
  
69 ····goto·:goto_069 ····goto·:goto_0
  
70 ····.line·146370 ····.line·1460
71 ····:cond_171 ····:cond_1
72 ····iget-object·v0,·p1,·Landroid/os/Message;->obj:Ljava/lang/Object;72 ····iget-object·v0,·p1,·Landroid/os/Message;->obj:Ljava/lang/Object;
  
73 ····check-cast·v0,·Landroid/net/ip/IpServer;73 ····check-cast·v0,·Landroid/net/ip/IpServer;
  
74 ····.line·146574 ····.line·1462
75 ····iget-object·v2,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMainSM$InitialState;->this$1:Lcom/android/networkstack/tethering/Tethering$TetherMainSM;75 ····iget-object·v2,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM$InitialState;->this$1:Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;
  
76 ····iget·p1,·p1,·Landroid/os/Message;->arg1:I76 ····iget·p1,·p1,·Landroid/os/Message;->arg1:I
  
77 ····invoke-static·{v2,·p1,·v0},·Lcom/android/networkstack/tethering/Tethering$TetherMainSM;->access$3100(Lcom/android/networkstack/tethering/Tethering$TetherMainSM;ILandroid/net/ip/IpServer;)V77 ····invoke-static·{v2,·p1,·v0},·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;->access$3100(Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;ILandroid/net/ip/IpServer;)V
  
78 ····.line·146678 ····.line·1463
79 ····iget-object·p0,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMainSM$InitialState;->this$1:Lcom/android/networkstack/tethering/Tethering$TetherMainSM;79 ····iget-object·p0,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM$InitialState;->this$1:Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;
  
80 ····invoke-static·{p0},·Lcom/android/networkstack/tethering/Tethering$TetherMainSM;->access$3200(Lcom/android/networkstack/tethering/Tethering$TetherMainSM;)Lcom/android/networkstack/tethering/util/State;80 ····invoke-static·{p0},·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;->access$3200(Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;)Lcom/android/networkstack/tethering/util/State;
  
81 ····move-result-object·p181 ····move-result-object·p1
  
82 ····invoke-virtual·{p0,·p1},·Lcom/android/networkstack/tethering/util/StateMachine;->transitionTo(Lcom/android/networkstack/tethering/util/IState;)V82 ····invoke-virtual·{p0,·p1},·Lcom/android/networkstack/tethering/util/StateMachine;->transitionTo(Lcom/android/networkstack/tethering/util/IState;)V
  
83 ····:cond_283 ····:cond_2
84 ····:goto_084 ····:goto_0
36.2 KB
smali/com/android/networkstack/tethering/Tethering$TetherMainSM$TetherModeAliveState.smali vs.
smali/com/android/networkstack/tethering/Tethering$TetherMasterSM$TetherModeAliveState.smali
Files 12% similar despite different names
    
Offset 1, 499 lines modifiedOffset 1, 488 lines modified
1 .class·Lcom/android/networkstack/tethering/Tethering$TetherMainSM$TetherModeAliveState;1 .class·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM$TetherModeAliveState;
2 .super·Lcom/android/networkstack/tethering/util/State;2 .super·Lcom/android/networkstack/tethering/util/State;
3 .source·"Tethering.java"3 .source·"Tethering.java"
  
  
4 #·annotations4 #·annotations
5 .annotation·system·Ldalvik/annotation/EnclosingClass;5 .annotation·system·Ldalvik/annotation/EnclosingClass;
6 ····value·=·Lcom/android/networkstack/tethering/Tethering$TetherMainSM;6 ····value·=·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;
7 .end·annotation7 .end·annotation
  
8 .annotation·system·Ldalvik/annotation/InnerClass;8 .annotation·system·Ldalvik/annotation/InnerClass;
9 ····accessFlags·=·0x09 ····accessFlags·=·0x0
10 ····name·=·"TetherModeAliveState"10 ····name·=·"TetherModeAliveState"
11 .end·annotation11 .end·annotation
  
  
12 #·instance·fields12 #·instance·fields
13 .field·mTryCell:Z13 .field·mTryCell:Z
  
14 .field·mUpstreamWanted:Z14 .field·mUpstreamWanted:Z
  
15 .field·final·synthetic·this$1:Lcom/android/networkstack/tethering/Tethering$TetherMainSM;15 .field·final·synthetic·this$1:Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;
  
  
16 #·direct·methods16 #·direct·methods
17 .method·constructor·<init>(Lcom/android/networkstack/tethering/Tethering$TetherMainSM;)V17 .method·constructor·<init>(Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;)V
18 ····.locals·018 ····.locals·0
  
19 ····.line·173719 ····.line·1742
20 ····iput-object·p1,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMainSM$TetherModeAliveState;->this$1:Lcom/android/networkstack/tethering/Tethering$TetherMainSM;20 ····iput-object·p1,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM$TetherModeAliveState;->this$1:Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;
  
21 ····invoke-direct·{p0},·Lcom/android/networkstack/tethering/util/State;-><init>()V21 ····invoke-direct·{p0},·Lcom/android/networkstack/tethering/util/State;-><init>()V
  
22 ····const/4·p1,·0x022 ····const/4·p1,·0x0
  
23 ····.line·173823 ····.line·1743
24 ····iput-boolean·p1,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMainSM$TetherModeAliveState;->mUpstreamWanted:Z24 ····iput-boolean·p1,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM$TetherModeAliveState;->mUpstreamWanted:Z
  
25 ····const/4·p1,·0x125 ····const/4·p1,·0x1
  
26 ····.line·173926 ····.line·1744
27 ····iput-boolean·p1,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMainSM$TetherModeAliveState;->mTryCell:Z27 ····iput-boolean·p1,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM$TetherModeAliveState;->mTryCell:Z
  
28 ····return-void28 ····return-void
29 .end·method29 .end·method
  
30 .method·private·updateUpstreamWanted()Z30 .method·private·updateUpstreamWanted()Z
31 ····.locals·231 ····.locals·2
  
32 ····.line·177832 ····.line·1782
33 ····iget-boolean·v0,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMainSM$TetherModeAliveState;->mUpstreamWanted:Z33 ····iget-boolean·v0,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM$TetherModeAliveState;->mUpstreamWanted:Z
  
34 ····.line·177934 ····.line·1783
35 ····iget-object·v1,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMainSM$TetherModeAliveState;->this$1:Lcom/android/networkstack/tethering/Tethering$TetherMainSM;35 ····iget-object·v1,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM$TetherModeAliveState;->this$1:Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;
  
36 ····iget-object·v1,·v1,·Lcom/android/networkstack/tethering/Tethering$TetherMainSM;->this$0:Lcom/android/networkstack/tethering/Tethering;36 ····iget-object·v1,·v1,·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;->this$0:Lcom/android/networkstack/tethering/Tethering;
  
37 ····invoke-static·{v1},·Lcom/android/networkstack/tethering/Tethering;->access$4400(Lcom/android/networkstack/tethering/Tethering;)Z37 ····invoke-static·{v1},·Lcom/android/networkstack/tethering/Tethering;->access$4400(Lcom/android/networkstack/tethering/Tethering;)Z
  
38 ····move-result·v138 ····move-result·v1
  
39 ····iput-boolean·v1,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMainSM$TetherModeAliveState;->mUpstreamWanted:Z39 ····iput-boolean·v1,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM$TetherModeAliveState;->mUpstreamWanted:Z
  
40 ····if-eq·v1,·v0,·:cond_140 ····if-eq·v1,·v0,·:cond_1
  
41 ····if-eqz·v1,·:cond_041 ····if-eqz·v1,·:cond_0
  
42 ····.line·178242 ····.line·1786
43 ····iget-object·p0,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMainSM$TetherModeAliveState;->this$1:Lcom/android/networkstack/tethering/Tethering$TetherMainSM;43 ····iget-object·p0,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM$TetherModeAliveState;->this$1:Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;
  
44 ····invoke-static·{p0},·Lcom/android/networkstack/tethering/Tethering$TetherMainSM;->access$4500(Lcom/android/networkstack/tethering/Tethering$TetherMainSM;)Lcom/android/networkstack/tethering/Tethering$TetherMainSM$OffloadWrapper;44 ····invoke-static·{p0},·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;->access$4500(Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;)Lcom/android/networkstack/tethering/Tethering$TetherMasterSM$OffloadWrapper;
  
45 ····move-result-object·p045 ····move-result-object·p0
  
46 ····invoke-virtual·{p0},·Lcom/android/networkstack/tethering/Tethering$TetherMainSM$OffloadWrapper;->start()V46 ····invoke-virtual·{p0},·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM$OffloadWrapper;->start()V
  
47 ····goto·:goto_047 ····goto·:goto_0
  
48 ····.line·178448 ····.line·1788
49 ····:cond_049 ····:cond_0
50 ····iget-object·p0,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMainSM$TetherModeAliveState;->this$1:Lcom/android/networkstack/tethering/Tethering$TetherMainSM;50 ····iget-object·p0,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM$TetherModeAliveState;->this$1:Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;
  
51 ····invoke-static·{p0},·Lcom/android/networkstack/tethering/Tethering$TetherMainSM;->access$4500(Lcom/android/networkstack/tethering/Tethering$TetherMainSM;)Lcom/android/networkstack/tethering/Tethering$TetherMainSM$OffloadWrapper;51 ····invoke-static·{p0},·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;->access$4500(Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;)Lcom/android/networkstack/tethering/Tethering$TetherMasterSM$OffloadWrapper;
  
52 ····move-result-object·p052 ····move-result-object·p0
  
53 ····invoke-virtual·{p0},·Lcom/android/networkstack/tethering/Tethering$TetherMainSM$OffloadWrapper;->stop()V53 ····invoke-virtual·{p0},·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM$OffloadWrapper;->stop()V
  
54 ····:cond_154 ····:cond_1
55 ····:goto_055 ····:goto_0
56 ····return·v056 ····return·v0
57 .end·method57 .end·method
  
  
58 #·virtual·methods58 #·virtual·methods
59 .method·public·enter()V59 .method·public·enter()V
60 ····.locals·260 ····.locals·2
  
61 ····.line·174561 ····.line·1750
62 ····iget-object·v0,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMainSM$TetherModeAliveState;->this$1:Lcom/android/networkstack/tethering/Tethering$TetherMainSM;62 ····iget-object·v0,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM$TetherModeAliveState;->this$1:Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;
  
63 ····invoke-virtual·{v0},·Lcom/android/networkstack/tethering/Tethering$TetherMainSM;->turnOnMainTetherSettings()Z63 ····invoke-virtual·{v0},·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;->turnOnMasterTetherSettings()Z
  
64 ····move-result·v064 ····move-result·v0
  
65 ····if-nez·v0,·:cond_065 ····if-nez·v0,·:cond_0
  
66 ····return-void66 ····return-void
  
67 ····.line·174967 ····.line·1754
68 ····:cond_068 ····:cond_0
69 ····iget-object·v0,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMainSM$TetherModeAliveState;->this$1:Lcom/android/networkstack/tethering/Tethering$TetherMainSM;69 ····iget-object·v0,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM$TetherModeAliveState;->this$1:Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;
  
70 ····iget-object·v0,·v0,·Lcom/android/networkstack/tethering/Tethering$TetherMainSM;->this$0:Lcom/android/networkstack/tethering/Tethering; 
  
71 ····invoke-static·{v0},·Lcom/android/networkstack/tethering/Tethering;->access$4300(Lcom/android/networkstack/tethering/Tethering;)Lcom/android/networkstack/tethering/PrivateAddressCoordinator; 
  
72 ····move-result-object·v0 
  
73 ····invoke-virtual·{v0},·Lcom/android/networkstack/tethering/PrivateAddressCoordinator;->maybeRemoveDeprecatedUpstreams()V 
  
74 ····.line·1750 
75 ····iget-object·v0,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMainSM$TetherModeAliveState;->this$1:Lcom/android/networkstack/tethering/Tethering$TetherMainSM; 
  
76 ····iget-object·v0,·v0,·Lcom/android/networkstack/tethering/Tethering$TetherMainSM;->this$0:Lcom/android/networkstack/tethering/Tethering;70 ····iget-object·v0,·v0,·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;->this$0:Lcom/android/networkstack/tethering/Tethering;
  
77 ····invoke-static·{v0},·Lcom/android/networkstack/tethering/Tethering;->access$3600(Lcom/android/networkstack/tethering/Tethering;)Lcom/android/networkstack/tethering/UpstreamNetworkMonitor;71 ····invoke-static·{v0},·Lcom/android/networkstack/tethering/Tethering;->access$3600(Lcom/android/networkstack/tethering/Tethering;)Lcom/android/networkstack/tethering/UpstreamNetworkMonitor;
... Open expanded diff ...
3.73 KB
smali/com/android/networkstack/tethering/Tethering$TetherMainSM$StopTetheringErrorState.smali vs.
smali/com/android/networkstack/tethering/Tethering$TetherMasterSM$StopTetheringErrorState.smali
Files 5% similar despite different names
    
Offset 1, 63 lines modifiedOffset 1, 63 lines modified
1 .class·Lcom/android/networkstack/tethering/Tethering$TetherMainSM$StopTetheringErrorState;1 .class·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM$StopTetheringErrorState;
2 .super·Lcom/android/networkstack/tethering/Tethering$TetherMainSM$ErrorState;2 .super·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM$ErrorState;
3 .source·"Tethering.java"3 .source·"Tethering.java"
  
  
4 #·annotations4 #·annotations
5 .annotation·system·Ldalvik/annotation/EnclosingClass;5 .annotation·system·Ldalvik/annotation/EnclosingClass;
6 ····value·=·Lcom/android/networkstack/tethering/Tethering$TetherMainSM;6 ····value·=·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;
7 .end·annotation7 .end·annotation
  
8 .annotation·system·Ldalvik/annotation/InnerClass;8 .annotation·system·Ldalvik/annotation/InnerClass;
9 ····accessFlags·=·0x09 ····accessFlags·=·0x0
10 ····name·=·"StopTetheringErrorState"10 ····name·=·"StopTetheringErrorState"
11 .end·annotation11 .end·annotation
  
  
12 #·instance·fields12 #·instance·fields
13 .field·final·synthetic·this$1:Lcom/android/networkstack/tethering/Tethering$TetherMainSM;13 .field·final·synthetic·this$1:Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;
  
  
14 #·direct·methods14 #·direct·methods
15 .method·constructor·<init>(Lcom/android/networkstack/tethering/Tethering$TetherMainSM;)V15 .method·constructor·<init>(Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;)V
16 ····.locals·016 ····.locals·0
  
17 ····.line·193317 ····.line·1937
18 ····iput-object·p1,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMainSM$StopTetheringErrorState;->this$1:Lcom/android/networkstack/tethering/Tethering$TetherMainSM;18 ····iput-object·p1,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM$StopTetheringErrorState;->this$1:Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;
  
19 ····invoke-direct·{p0,·p1},·Lcom/android/networkstack/tethering/Tethering$TetherMainSM$ErrorState;-><init>(Lcom/android/networkstack/tethering/Tethering$TetherMainSM;)V19 ····invoke-direct·{p0,·p1},·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM$ErrorState;-><init>(Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;)V
  
20 ····return-void20 ····return-void
21 .end·method21 .end·method
  
  
22 #·virtual·methods22 #·virtual·methods
23 .method·public·enter()V23 .method·public·enter()V
24 ····.locals·224 ····.locals·2
  
25 ····.line·193625 ····.line·1940
26 ····invoke-static·{},·Lcom/android/networkstack/tethering/Tethering;->access$3400()Ljava/lang/String;26 ····invoke-static·{},·Lcom/android/networkstack/tethering/Tethering;->access$3400()Ljava/lang/String;
  
27 ····move-result-object·v027 ····move-result-object·v0
  
28 ····const-string·v1,·"Error·in·stopTethering"28 ····const-string·v1,·"Error·in·stopTethering"
  
29 ····invoke-static·{v0,·v1},·Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I29 ····invoke-static·{v0,·v1},·Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
  
30 ····const/16·v0,·0x6b30 ····const/16·v0,·0x6b
  
31 ····.line·193731 ····.line·1941
32 ····invoke-virtual·{p0,·v0},·Lcom/android/networkstack/tethering/Tethering$TetherMainSM$ErrorState;->notify(I)V32 ····invoke-virtual·{p0,·v0},·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM$ErrorState;->notify(I)V
  
33 ····.line·193933 ····.line·1943
34 ····:try_start_034 ····:try_start_0
35 ····iget-object·p0,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMainSM$StopTetheringErrorState;->this$1:Lcom/android/networkstack/tethering/Tethering$TetherMainSM;35 ····iget-object·p0,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM$StopTetheringErrorState;->this$1:Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;
  
36 ····iget-object·p0,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMainSM;->this$0:Lcom/android/networkstack/tethering/Tethering;36 ····iget-object·p0,·p0,·Lcom/android/networkstack/tethering/Tethering$TetherMasterSM;->this$0:Lcom/android/networkstack/tethering/Tethering;
  
37 ····invoke-static·{p0},·Lcom/android/networkstack/tethering/Tethering;->access$400(Lcom/android/networkstack/tethering/Tethering;)Landroid/net/INetd;37 ····invoke-static·{p0},·Lcom/android/networkstack/tethering/Tethering;->access$400(Lcom/android/networkstack/tethering/Tethering;)Landroid/net/INetd;
  
38 ····move-result-object·p038 ····move-result-object·p0
  
39 ····invoke-static·{},·Lcom/android/networkstack/tethering/Tethering;->access$3400()Ljava/lang/String;39 ····invoke-static·{},·Lcom/android/networkstack/tethering/Tethering;->access$3400()Ljava/lang/String;
  
305 B
stat {}
    
Offset 1, 8 lines modifiedOffset 1, 8 lines modified
  
1 ··Size:·823014····»    Blocks:·1600·······IO·Block:·4096···regular·file1 ··Size:·763789····»    Blocks:·1488·······IO·Block:·4096···regular·file
2 Links:·12 Links:·1
3 Access:·(0644/-rw-r--r--)··Uid:·(·1001/·····dev)···Gid:·(·1001/·····dev)3 Access:·(0644/-rw-r--r--)··Uid:·(·1001/·····dev)···Gid:·(·1001/·····dev)
  
4 Modify:·1970-01-01·00:00:00.000000000·+00004 Modify:·1970-01-01·00:00:00.000000000·+0000