Offset 687, 22 lines modifiedOffset 687, 22 lines modified
  
687 ····return·p0687 ····return·p0
688 .end·method688 .end·method
  
689 .method·private·addIpv6ForwardingRule(Lcom/android/networkstack/tethering/BpfCoordinator$Ipv6ForwardingRule;)V689 .method·private·addIpv6ForwardingRule(Lcom/android/networkstack/tethering/BpfCoordinator$Ipv6ForwardingRule;)V
690 ····.locals·1690 ····.locals·1
  
691 ····.line·847691 ····.line·843
692 ····iget-boolean·v0,·p0,·Landroid/net/ip/IpServer;->mUsingBpfOffload:Z692 ····iget-boolean·v0,·p0,·Landroid/net/ip/IpServer;->mUsingBpfOffload:Z
  
693 ····if-nez·v0,·:cond_0693 ····if-nez·v0,·:cond_0
  
694 ····return-void694 ····return-void
  
695 ····.line·849695 ····.line·845
696 ····:cond_0696 ····:cond_0
697 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer;->mBpfCoordinator:Lcom/android/networkstack/tethering/BpfCoordinator;697 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer;->mBpfCoordinator:Lcom/android/networkstack/tethering/BpfCoordinator;
  
698 ····invoke-virtual·{v0,·p0,·p1},·Lcom/android/networkstack/tethering/BpfCoordinator;->tetherOffloadRuleAdd(Landroid/net/ip/IpServer;Lcom/android/networkstack/tethering/BpfCoordinator$Ipv6ForwardingRule;)V698 ····invoke-virtual·{v0,·p0,·p1},·Lcom/android/networkstack/tethering/BpfCoordinator;->tetherOffloadRuleAdd(Landroid/net/ip/IpServer;Lcom/android/networkstack/tethering/BpfCoordinator$Ipv6ForwardingRule;)V
  
699 ····return-void699 ····return-void
700 .end·method700 .end·method
Offset 714, 40 lines modifiedOffset 714, 40 lines modified
714 ············"(",714 ············"(",
715 ············"Ljava/util/List<",715 ············"Ljava/util/List<",
716 ············"Landroid/net/RouteInfo;",716 ············"Landroid/net/RouteInfo;",
717 ············">;)V"717 ············">;)V"
718 ········}718 ········}
719 ····.end·annotation719 ····.end·annotation
  
720 ····.line·761720 ····.line·757
721 ····:try_start_0721 ····:try_start_0
722 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer;->mNetd:Landroid/net/INetd;722 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer;->mNetd:Landroid/net/INetd;
  
723 ····const/16·v1,·0x63723 ····const/16·v1,·0x63
  
724 ····iget-object·v2,·p0,·Landroid/net/ip/IpServer;->mIfaceName:Ljava/lang/String;724 ····iget-object·v2,·p0,·Landroid/net/ip/IpServer;->mIfaceName:Ljava/lang/String;
  
725 ····invoke-interface·{v0,·v1,·v2},·Landroid/net/INetd;->networkAddInterface(ILjava/lang/String;)V725 ····invoke-interface·{v0,·v1,·v2},·Landroid/net/INetd;->networkAddInterface(ILjava/lang/String;)V
726 ····:try_end_0726 ····:try_end_0
727 ····.catch·Landroid/os/ServiceSpecificException;·{:try_start_0·..·:try_end_0}·:catch_1727 ····.catch·Landroid/os/ServiceSpecificException;·{:try_start_0·..·:try_end_0}·:catch_1
728 ····.catch·Landroid/os/RemoteException;·{:try_start_0·..·:try_end_0}·:catch_1728 ····.catch·Landroid/os/RemoteException;·{:try_start_0·..·:try_end_0}·:catch_1
  
729 ····.line·765729 ····.line·761
730 ····:try_start_1730 ····:try_start_1
731 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer;->mNetd:Landroid/net/INetd;731 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer;->mNetd:Landroid/net/INetd;
  
732 ····iget-object·v1,·p0,·Landroid/net/ip/IpServer;->mIfaceName:Ljava/lang/String;732 ····iget-object·v1,·p0,·Landroid/net/ip/IpServer;->mIfaceName:Ljava/lang/String;
  
733 ····invoke-static·{v0,·v1,·p1},·Landroid/net/shared/RouteUtils;->addRoutesToLocalNetwork(Landroid/net/INetd;Ljava/lang/String;Ljava/util/List;)V733 ····invoke-static·{v0,·v1,·p1},·Landroid/net/shared/RouteUtils;->addRoutesToLocalNetwork(Landroid/net/INetd;Ljava/lang/String;Ljava/util/List;)V
734 ····:try_end_1734 ····:try_end_1
735 ····.catch·Ljava/lang/IllegalStateException;·{:try_start_1·..·:try_end_1}·:catch_0735 ····.catch·Ljava/lang/IllegalStateException;·{:try_start_1·..·:try_end_1}·:catch_0
736 ····.catch·Landroid/os/ServiceSpecificException;·{:try_start_1·..·:try_end_1}·:catch_1736 ····.catch·Landroid/os/ServiceSpecificException;·{:try_start_1·..·:try_end_1}·:catch_1
737 ····.catch·Landroid/os/RemoteException;·{:try_start_1·..·:try_end_1}·:catch_1737 ····.catch·Landroid/os/RemoteException;·{:try_start_1·..·:try_end_1}·:catch_1
  
738 ····.line·775738 ····.line·771
739 ····invoke-interface·{p1},·Ljava/util/List;->iterator()Ljava/util/Iterator;739 ····invoke-interface·{p1},·Ljava/util/List;->iterator()Ljava/util/Iterator;
  
740 ····move-result-object·p1740 ····move-result-object·p1
  
741 ····:goto_0741 ····:goto_0
742 ····invoke-interface·{p1},·Ljava/util/Iterator;->hasNext()Z742 ····invoke-interface·{p1},·Ljava/util/Iterator;->hasNext()Z
  
Offset 769, 15 lines modifiedOffset 769, 15 lines modified
  
769 ····:cond_0769 ····:cond_0
770 ····return-void770 ····return-void
  
771 ····:catch_0771 ····:catch_0
772 ····move-exception·p1772 ····move-exception·p1
  
773 ····.line·767773 ····.line·763
774 ····:try_start_2774 ····:try_start_2
775 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer;->mLog:Landroid/net/util/SharedLog;775 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer;->mLog:Landroid/net/util/SharedLog;
  
776 ····new-instance·v1,·Ljava/lang/StringBuilder;776 ····new-instance·v1,·Ljava/lang/StringBuilder;
  
777 ····invoke-direct·{v1},·Ljava/lang/StringBuilder;-><init>()V777 ····invoke-direct·{v1},·Ljava/lang/StringBuilder;-><init>()V
  
Offset 797, 15 lines modifiedOffset 797, 15 lines modified
797 ····.catch·Landroid/os/RemoteException;·{:try_start_2·..·:try_end_2}·:catch_1797 ····.catch·Landroid/os/RemoteException;·{:try_start_2·..·:try_end_2}·:catch_1
  
798 ····return-void798 ····return-void
  
799 ····:catch_1799 ····:catch_1
800 ····move-exception·p1800 ····move-exception·p1
  
801 ····.line·771801 ····.line·767
802 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer;->mLog:Landroid/net/util/SharedLog;802 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer;->mLog:Landroid/net/util/SharedLog;
  
803 ····new-instance·v1,·Ljava/lang/StringBuilder;803 ····new-instance·v1,·Ljava/lang/StringBuilder;
  
804 ····invoke-direct·{v1},·Ljava/lang/StringBuilder;-><init>()V804 ····invoke-direct·{v1},·Ljava/lang/StringBuilder;-><init>()V
  
805 ····const-string·v2,·"Failed·to·add·"805 ····const-string·v2,·"Failed·to·add·"
Offset 828, 102 lines modifiedOffset 828, 102 lines modified
  
828 ····return-void828 ····return-void
829 .end·method829 .end·method
  
830 .method·private·clearIpv6ForwardingRules()V830 .method·private·clearIpv6ForwardingRules()V
831 ····.locals·1831 ····.locals·1
  
832 ····.line·861832 ····.line·857
833 ····iget-boolean·v0,·p0,·Landroid/net/ip/IpServer;->mUsingBpfOffload:Z833 ····iget-boolean·v0,·p0,·Landroid/net/ip/IpServer;->mUsingBpfOffload:Z
  
834 ····if-nez·v0,·:cond_0834 ····if-nez·v0,·:cond_0
  
835 ····return-void835 ····return-void
  
836 ····.line·863836 ····.line·859
837 ····:cond_0837 ····:cond_0
838 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer;->mBpfCoordinator:Lcom/android/networkstack/tethering/BpfCoordinator;838 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer;->mBpfCoordinator:Lcom/android/networkstack/tethering/BpfCoordinator;
  
839 ····invoke-virtual·{v0,·p0},·Lcom/android/networkstack/tethering/BpfCoordinator;->tetherOffloadRuleClear(Landroid/net/ip/IpServer;)V839 ····invoke-virtual·{v0,·p0},·Lcom/android/networkstack/tethering/BpfCoordinator;->tetherOffloadRuleClear(Landroid/net/ip/IpServer;)V
  
840 ····return-void840 ····return-void
841 .end·method841 .end·method
  
842 .method·private·configureDhcp(ZLandroid/net/LinkAddress;Landroid/net/LinkAddress;)Z842 .method·private·configureDhcp(ZLandroid/net/LinkAddress;Landroid/net/LinkAddress;)Z
843 ····.locals·0843 ····.locals·0
  
844 ····if-eqz·p1,·:cond_0844 ····if-eqz·p1,·:cond_0
  
845 ····.line·582845 ····.line·578
846 ····invoke-direct·{p0,·p2,·p3},·Landroid/net/ip/IpServer;->startDhcp(Landroid/net/LinkAddress;Landroid/net/LinkAddress;)Z846 ····invoke-direct·{p0,·p2,·p3},·Landroid/net/ip/IpServer;->startDhcp(Landroid/net/LinkAddress;Landroid/net/LinkAddress;)Z
  
847 ····move-result·p0847 ····move-result·p0
  
848 ····return·p0848 ····return·p0
  
849 ····.line·584849 ····.line·580
850 ····:cond_0850 ····:cond_0
851 ····invoke-direct·{p0},·Landroid/net/ip/IpServer;->stopDhcp()V851 ····invoke-direct·{p0},·Landroid/net/ip/IpServer;->stopDhcp()V
  
852 ····const/4·p0,·0x1852 ····const/4·p0,·0x1
  
853 ····return·p0853 ····return·p0
854 .end·method854 .end·method
  
855 .method·private·configureIPv4(Z)Z855 .method·private·configureIPv4(Z)Z
856 ····.locals·5856 ····.locals·5
  
857 ····if-eqz·p1,·:cond_0857 ····if-eqz·p1,·:cond_0
  
858 ····.line·604858 ····.line·600
859 ····invoke-direct·{p0},·Landroid/net/ip/IpServer;->requestIpv4Address()Landroid/net/LinkAddress;859 ····invoke-direct·{p0},·Landroid/net/ip/IpServer;->requestIpv4Address()Landroid/net/LinkAddress;
  
860 ····move-result-object·v0860 ····move-result-object·v0
  
861 ····iput-object·v0,·p0,·Landroid/net/ip/IpServer;->mIpv4Address:Landroid/net/LinkAddress;861 ····iput-object·v0,·p0,·Landroid/net/ip/IpServer;->mIpv4Address:Landroid/net/LinkAddress;
  
862 ····.line·607862 ····.line·603
863 ····:cond_0863 ····:cond_0
864 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer;->mIpv4Address:Landroid/net/LinkAddress;864 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer;->mIpv4Address:Landroid/net/LinkAddress;
  
865 ····const/4·v1,·0x0865 ····const/4·v1,·0x0
  
866 ····if-nez·v0,·:cond_1866 ····if-nez·v0,·:cond_1
  
867 ····.line·608867 ····.line·604
868 ····iget-object·p0,·p0,·Landroid/net/ip/IpServer;->mLog:Landroid/net/util/SharedLog;868 ····iget-object·p0,·p0,·Landroid/net/ip/IpServer;->mLog:Landroid/net/util/SharedLog;
  
869 ····const-string·p1,·"No·available·ipv4·address"869 ····const-string·p1,·"No·available·ipv4·address"
  
870 ····invoke-virtual·{p0,·p1},·Landroid/net/util/SharedLog;->e(Ljava/lang/String;)V870 ····invoke-virtual·{p0,·p1},·Landroid/net/util/SharedLog;->e(Ljava/lang/String;)V
  
871 ····return·v1871 ····return·v1
  
872 ····.line·612872 ····.line·608
873 ····:cond_1873 ····:cond_1
874 ····iget·v2,·p0,·Landroid/net/ip/IpServer;->mInterfaceType:I874 ····iget·v2,·p0,·Landroid/net/ip/IpServer;->mInterfaceType:I
  
875 ····const/4·v3,·0x2875 ····const/4·v3,·0x2
  
876 ····const/4·v4,·0x0876 ····const/4·v4,·0x0
  
877 ····if-ne·v2,·v3,·:cond_2877 ····if-ne·v2,·v3,·:cond_2
  
878 ····.line·616878 ····.line·612
879 ····invoke-direct·{p0,·p1,·v0,·v4},·Landroid/net/ip/IpServer;->configureDhcp(ZLandroid/net/LinkAddress;Landroid/net/LinkAddress;)Z879 ····invoke-direct·{p0,·p1,·v0,·v4},·Landroid/net/ip/IpServer;->configureDhcp(ZLandroid/net/LinkAddress;Landroid/net/LinkAddress;)Z
  
880 ····move-result·p0880 ····move-result·p0
  
881 ····return·p0881 ····return·p0
  
882 ····.line·619882 ····.line·615
883 ····:cond_2883 ····:cond_2
884 ····invoke-static·{v0},·Landroid/net/util/PrefixUtils;->asIpPrefix(Landroid/net/LinkAddress;)Landroid/net/IpPrefix;884 ····invoke-static·{v0},·Landroid/net/util/PrefixUtils;->asIpPrefix(Landroid/net/LinkAddress;)Landroid/net/IpPrefix;
  
885 ····.line·622885 ····.line·618
886 ····iget·v0,·p0,·Landroid/net/ip/IpServer;->mInterfaceType:I886 ····iget·v0,·p0,·Landroid/net/ip/IpServer;->mInterfaceType:I
  
887 ····if-eqz·v0,·:cond_4887 ····if-eqz·v0,·:cond_4
  
888 ····const/4·v2,·0x3888 ····const/4·v2,·0x3
  
889 ····if-eq·v0,·v2,·:cond_4889 ····if-eq·v0,·v2,·:cond_4
Offset 934, 91 lines modifiedOffset 934, 91 lines modified
  
934 ····const/4·v2,·0x6934 ····const/4·v2,·0x6
  
935 ····if-ne·v0,·v2,·:cond_3935 ····if-ne·v0,·v2,·:cond_3
  
936 ····goto·:goto_0936 ····goto·:goto_0
  
937 ····.line·631937 ····.line·627
938 ····:cond_3938 ····:cond_3
939 ····invoke-static·{p1},·Ljava/lang/Boolean;->valueOf(Z)Ljava/lang/Boolean;939 ····invoke-static·{p1},·Ljava/lang/Boolean;->valueOf(Z)Ljava/lang/Boolean;
  
940 ····move-result-object·v4940 ····move-result-object·v4
  
941 ····.line·633941 ····.line·629
942 ····:cond_4942 ····:cond_4
943 ····:goto_0943 ····:goto_0
944 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer;->mInterfaceCtrl:Landroid/net/ip/InterfaceController;944 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer;->mInterfaceCtrl:Landroid/net/ip/InterfaceController;
  
945 ····iget-object·v2,·p0,·Landroid/net/ip/IpServer;->mIpv4Address:Landroid/net/LinkAddress;945 ····iget-object·v2,·p0,·Landroid/net/ip/IpServer;->mIpv4Address:Landroid/net/LinkAddress;
  
946 ····invoke-virtual·{v0,·v2,·v4},·Landroid/net/ip/InterfaceController;->setInterfaceConfiguration(Landroid/net/LinkAddress;Ljava/lang/Boolean;)Z946 ····invoke-virtual·{v0,·v2,·v4},·Landroid/net/ip/InterfaceController;->setInterfaceConfiguration(Landroid/net/LinkAddress;Ljava/lang/Boolean;)Z
  
947 ····move-result·v0947 ····move-result·v0
  
948 ····if-nez·v0,·:cond_6948 ····if-nez·v0,·:cond_6
  
949 ····.line·634949 ····.line·630
950 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer;->mLog:Landroid/net/util/SharedLog;950 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer;->mLog:Landroid/net/util/SharedLog;
  
951 ····const-string·v2,·"Error·configuring·interface"951 ····const-string·v2,·"Error·configuring·interface"
  
952 ····invoke-virtual·{v0,·v2},·Landroid/net/util/SharedLog;->e(Ljava/lang/String;)V952 ····invoke-virtual·{v0,·v2},·Landroid/net/util/SharedLog;->e(Ljava/lang/String;)V
  
953 ····if-nez·p1,·:cond_5953 ····if-nez·p1,·:cond_5
  
954 ····.line·635954 ····.line·631
955 ····invoke-direct·{p0},·Landroid/net/ip/IpServer;->stopDhcp()V955 ····invoke-direct·{p0},·Landroid/net/ip/IpServer;->stopDhcp()V
  
956 ····:cond_5956 ····:cond_5
957 ····return·v1957 ····return·v1
  
958 ····:cond_6958 ····:cond_6
959 ····if-eqz·p1,·:cond_7959 ····if-eqz·p1,·:cond_7
  
960 ····.line·640960 ····.line·636
961 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer;->mLinkProperties:Landroid/net/LinkProperties;961 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer;->mLinkProperties:Landroid/net/LinkProperties;
  
962 ····iget-object·v1,·p0,·Landroid/net/ip/IpServer;->mIpv4Address:Landroid/net/LinkAddress;962 ····iget-object·v1,·p0,·Landroid/net/ip/IpServer;->mIpv4Address:Landroid/net/LinkAddress;
  
963 ····invoke-virtual·{v0,·v1},·Landroid/net/LinkProperties;->addLinkAddress(Landroid/net/LinkAddress;)Z963 ····invoke-virtual·{v0,·v1},·Landroid/net/LinkProperties;->addLinkAddress(Landroid/net/LinkAddress;)Z
  
964 ····.line·641964 ····.line·637
965 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer;->mLinkProperties:Landroid/net/LinkProperties;965 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer;->mLinkProperties:Landroid/net/LinkProperties;
  
966 ····iget-object·v1,·p0,·Landroid/net/ip/IpServer;->mIpv4Address:Landroid/net/LinkAddress;966 ····iget-object·v1,·p0,·Landroid/net/ip/IpServer;->mIpv4Address:Landroid/net/LinkAddress;
  
967 ····invoke-direct·{p0,·v1},·Landroid/net/ip/IpServer;->getDirectConnectedRoute(Landroid/net/LinkAddress;)Landroid/net/RouteInfo;967 ····invoke-direct·{p0,·v1},·Landroid/net/ip/IpServer;->getDirectConnectedRoute(Landroid/net/LinkAddress;)Landroid/net/RouteInfo;
  
968 ····move-result-object·v1968 ····move-result-object·v1
  
969 ····invoke-virtual·{v0,·v1},·Landroid/net/LinkProperties;->addRoute(Landroid/net/RouteInfo;)Z969 ····invoke-virtual·{v0,·v1},·Landroid/net/LinkProperties;->addRoute(Landroid/net/RouteInfo;)Z
  
970 ····goto·:goto_1970 ····goto·:goto_1
  
971 ····.line·643971 ····.line·639
972 ····:cond_7972 ····:cond_7
973 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer;->mLinkProperties:Landroid/net/LinkProperties;973 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer;->mLinkProperties:Landroid/net/LinkProperties;
  
974 ····iget-object·v1,·p0,·Landroid/net/ip/IpServer;->mIpv4Address:Landroid/net/LinkAddress;974 ····iget-object·v1,·p0,·Landroid/net/ip/IpServer;->mIpv4Address:Landroid/net/LinkAddress;
  
975 ····invoke-virtual·{v0,·v1},·Landroid/net/LinkProperties;->removeLinkAddress(Landroid/net/LinkAddress;)Z975 ····invoke-virtual·{v0,·v1},·Landroid/net/LinkProperties;->removeLinkAddress(Landroid/net/LinkAddress;)Z
  
976 ····.line·644976 ····.line·640
977 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer;->mLinkProperties:Landroid/net/LinkProperties;977 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer;->mLinkProperties:Landroid/net/LinkProperties;
  
978 ····iget-object·v1,·p0,·Landroid/net/ip/IpServer;->mIpv4Address:Landroid/net/LinkAddress;978 ····iget-object·v1,·p0,·Landroid/net/ip/IpServer;->mIpv4Address:Landroid/net/LinkAddress;
  
979 ····invoke-direct·{p0,·v1},·Landroid/net/ip/IpServer;->getDirectConnectedRoute(Landroid/net/LinkAddress;)Landroid/net/RouteInfo;979 ····invoke-direct·{p0,·v1},·Landroid/net/ip/IpServer;->getDirectConnectedRoute(Landroid/net/LinkAddress;)Landroid/net/RouteInfo;
  
980 ····move-result-object·v1980 ····move-result-object·v1
  
981 ····invoke-virtual·{v0,·v1},·Landroid/net/LinkProperties;->removeRoute(Landroid/net/RouteInfo;)Z981 ····invoke-virtual·{v0,·v1},·Landroid/net/LinkProperties;->removeRoute(Landroid/net/RouteInfo;)Z
  
982 ····.line·646982 ····.line·642
983 ····:goto_1983 ····:goto_1
984 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer;->mIpv4Address:Landroid/net/LinkAddress;984 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer;->mIpv4Address:Landroid/net/LinkAddress;
  
985 ····iget-object·v1,·p0,·Landroid/net/ip/IpServer;->mStaticIpv4ClientAddr:Landroid/net/LinkAddress;985 ····iget-object·v1,·p0,·Landroid/net/ip/IpServer;->mStaticIpv4ClientAddr:Landroid/net/LinkAddress;
  
986 ····invoke-direct·{p0,·p1,·v0,·v1},·Landroid/net/ip/IpServer;->configureDhcp(ZLandroid/net/LinkAddress;Landroid/net/LinkAddress;)Z986 ····invoke-direct·{p0,·p1,·v0,·v1},·Landroid/net/ip/IpServer;->configureDhcp(ZLandroid/net/LinkAddress;Landroid/net/LinkAddress;)Z
  
Offset 1037, 45 lines modifiedOffset 1037, 45 lines modified
1037 ············">;",1037 ············">;",
1038 ············"Ljava/util/HashSet<",1038 ············"Ljava/util/HashSet<",
1039 ············"Ljava/net/Inet6Address;",1039 ············"Ljava/net/Inet6Address;",
1040 ············">;)V"1040 ············">;)V"
1041 ········}1041 ········}
1042 ····.end·annotation1042 ····.end·annotation
  
1043 ····.line·8011043 ····.line·797
1044 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer;->mNetd:Landroid/net/INetd;1044 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer;->mNetd:Landroid/net/INetd;
  
1045 ····if-nez·v0,·:cond_11045 ····if-nez·v0,·:cond_1
  
1046 ····if-eqz·p2,·:cond_01046 ····if-eqz·p2,·:cond_0
  
1047 ····.line·8021047 ····.line·798
1048 ····invoke-virtual·{p2},·Ljava/util/HashSet;->clear()V1048 ····invoke-virtual·{p2},·Ljava/util/HashSet;->clear()V
  
1049 ····.line·8031049 ····.line·799
1050 ····:cond_01050 ····:cond_0
1051 ····iget-object·p0,·p0,·Landroid/net/ip/IpServer;->mLog:Landroid/net/util/SharedLog;1051 ····iget-object·p0,·p0,·Landroid/net/ip/IpServer;->mLog:Landroid/net/util/SharedLog;
  
1052 ····const-string·p1,·"No·netd·service·instance·available;·not·setting·local·IPv6·addresses"1052 ····const-string·p1,·"No·netd·service·instance·available;·not·setting·local·IPv6·addresses"
  
1053 ····invoke-virtual·{p0,·p1},·Landroid/net/util/SharedLog;->e(Ljava/lang/String;)V1053 ····invoke-virtual·{p0,·p1},·Landroid/net/util/SharedLog;->e(Ljava/lang/String;)V
  
1054 ····return-void1054 ····return-void
  
1055 ····.line·8081055 ····.line·804
1056 ····:cond_11056 ····:cond_1
1057 ····invoke-virtual·{p1},·Ljava/util/HashSet;->isEmpty()Z1057 ····invoke-virtual·{p1},·Ljava/util/HashSet;->isEmpty()Z
  
1058 ····move-result·v01058 ····move-result·v0
  
1059 ····const/16·v1,·0x401059 ····const/16·v1,·0x40
  
1060 ····if-nez·v0,·:cond_31060 ····if-nez·v0,·:cond_3
  
1061 ····.line·8091061 ····.line·805
1062 ····invoke-virtual·{p1},·Ljava/util/HashSet;->iterator()Ljava/util/Iterator;1062 ····invoke-virtual·{p1},·Ljava/util/HashSet;->iterator()Ljava/util/Iterator;
  
1063 ····move-result-object·p11063 ····move-result-object·p1
  
1064 ····:goto_01064 ····:goto_0
1065 ····invoke-interface·{p1},·Ljava/util/Iterator;->hasNext()Z1065 ····invoke-interface·{p1},·Ljava/util/Iterator;->hasNext()Z
  
Offset 1085, 24 lines modifiedOffset 1085, 24 lines modified
  
1085 ····invoke-interface·{p1},·Ljava/util/Iterator;->next()Ljava/lang/Object;1085 ····invoke-interface·{p1},·Ljava/util/Iterator;->next()Ljava/lang/Object;
  
1086 ····move-result-object·v01086 ····move-result-object·v0
  
1087 ····check-cast·v0,·Ljava/net/Inet6Address;1087 ····check-cast·v0,·Ljava/net/Inet6Address;
  
1088 ····.line·8101088 ····.line·806
1089 ····iget-object·v2,·p0,·Landroid/net/ip/IpServer;->mInterfaceCtrl:Landroid/net/ip/InterfaceController;1089 ····iget-object·v2,·p0,·Landroid/net/ip/IpServer;->mInterfaceCtrl:Landroid/net/ip/InterfaceController;
  
1090 ····invoke-virtual·{v2,·v0,·v1},·Landroid/net/ip/InterfaceController;->removeAddress(Ljava/net/InetAddress;I)Z1090 ····invoke-virtual·{v2,·v0,·v1},·Landroid/net/ip/InterfaceController;->removeAddress(Ljava/net/InetAddress;I)Z
  
1091 ····move-result·v21091 ····move-result·v2
  
1092 ····if-nez·v2,·:cond_21092 ····if-nez·v2,·:cond_2
  
1093 ····.line·8111093 ····.line·807
1094 ····iget-object·v2,·p0,·Landroid/net/ip/IpServer;->mLog:Landroid/net/util/SharedLog;1094 ····iget-object·v2,·p0,·Landroid/net/ip/IpServer;->mLog:Landroid/net/util/SharedLog;
  
1095 ····new-instance·v3,·Ljava/lang/StringBuilder;1095 ····new-instance·v3,·Ljava/lang/StringBuilder;
  
1096 ····invoke-direct·{v3},·Ljava/lang/StringBuilder;-><init>()V1096 ····invoke-direct·{v3},·Ljava/lang/StringBuilder;-><init>()V
  
1097 ····const-string·v4,·"Failed·to·remove·local·dns·IP·"1097 ····const-string·v4,·"Failed·to·remove·local·dns·IP·"
Offset 1113, 54 lines modifiedOffset 1113, 54 lines modified
  
1113 ····invoke-virtual·{v3},·Ljava/lang/StringBuilder;->toString()Ljava/lang/String;1113 ····invoke-virtual·{v3},·Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
  
1114 ····move-result-object·v31114 ····move-result-object·v3
  
1115 ····invoke-virtual·{v2,·v3},·Landroid/net/util/SharedLog;->e(Ljava/lang/String;)V1115 ····invoke-virtual·{v2,·v3},·Landroid/net/util/SharedLog;->e(Ljava/lang/String;)V
  
1116 ····.line·8141116 ····.line·810
1117 ····:cond_21117 ····:cond_2
1118 ····iget-object·v2,·p0,·Landroid/net/ip/IpServer;->mLinkProperties:Landroid/net/LinkProperties;1118 ····iget-object·v2,·p0,·Landroid/net/ip/IpServer;->mLinkProperties:Landroid/net/LinkProperties;
  
1119 ····new-instance·v3,·Landroid/net/LinkAddress;1119 ····new-instance·v3,·Landroid/net/LinkAddress;
  
1120 ····invoke-direct·{v3,·v0,·v1},·Landroid/net/LinkAddress;-><init>(Ljava/net/InetAddress;I)V1120 ····invoke-direct·{v3,·v0,·v1},·Landroid/net/LinkAddress;-><init>(Ljava/net/InetAddress;I)V
  
1121 ····invoke-virtual·{v2,·v3},·Landroid/net/LinkProperties;->removeLinkAddress(Landroid/net/LinkAddress;)Z1121 ····invoke-virtual·{v2,·v3},·Landroid/net/LinkProperties;->removeLinkAddress(Landroid/net/LinkAddress;)Z
  
1122 ····goto·:goto_01122 ····goto·:goto_0
  
1123 ····:cond_31123 ····:cond_3
1124 ····if-eqz·p2,·:cond_61124 ····if-eqz·p2,·:cond_6
  
1125 ····.line·8191125 ····.line·815
1126 ····invoke-virtual·{p2},·Ljava/util/HashSet;->isEmpty()Z1126 ····invoke-virtual·{p2},·Ljava/util/HashSet;->isEmpty()Z
  
1127 ····move-result·p11127 ····move-result·p1
  
1128 ····if-nez·p1,·:cond_61128 ····if-nez·p1,·:cond_6
  
1129 ····.line·8201129 ····.line·816
1130 ····invoke-virtual·{p2},·Ljava/util/HashSet;->clone()Ljava/lang/Object;1130 ····invoke-virtual·{p2},·Ljava/util/HashSet;->clone()Ljava/lang/Object;
  
1131 ····move-result-object·p11131 ····move-result-object·p1
  
1132 ····check-cast·p1,·Ljava/util/HashSet;1132 ····check-cast·p1,·Ljava/util/HashSet;
  
1133 ····.line·8211133 ····.line·817
1134 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer;->mLastRaParams:Landroid/net/ip/RouterAdvertisementDaemon$RaParams;1134 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer;->mLastRaParams:Landroid/net/ip/RouterAdvertisementDaemon$RaParams;
  
1135 ····if-eqz·v0,·:cond_41135 ····if-eqz·v0,·:cond_4
  
1136 ····.line·8221136 ····.line·818
1137 ····iget-object·v0,·v0,·Landroid/net/ip/RouterAdvertisementDaemon$RaParams;->dnses:Ljava/util/HashSet;1137 ····iget-object·v0,·v0,·Landroid/net/ip/RouterAdvertisementDaemon$RaParams;->dnses:Ljava/util/HashSet;
  
1138 ····invoke-virtual·{p1,·v0},·Ljava/util/HashSet;->removeAll(Ljava/util/Collection;)Z1138 ····invoke-virtual·{p1,·v0},·Ljava/util/HashSet;->removeAll(Ljava/util/Collection;)Z
  
1139 ····.line·8251139 ····.line·821
1140 ····:cond_41140 ····:cond_4
1141 ····invoke-virtual·{p1},·Ljava/util/HashSet;->iterator()Ljava/util/Iterator;1141 ····invoke-virtual·{p1},·Ljava/util/HashSet;->iterator()Ljava/util/Iterator;
  
1142 ····move-result-object·p11142 ····move-result-object·p1
  
1143 ····:goto_11143 ····:goto_1
1144 ····invoke-interface·{p1},·Ljava/util/Iterator;->hasNext()Z1144 ····invoke-interface·{p1},·Ljava/util/Iterator;->hasNext()Z
Offset 1171, 24 lines modifiedOffset 1171, 24 lines modified
  
1171 ····invoke-interface·{p1},·Ljava/util/Iterator;->next()Ljava/lang/Object;1171 ····invoke-interface·{p1},·Ljava/util/Iterator;->next()Ljava/lang/Object;
  
1172 ····move-result-object·v01172 ····move-result-object·v0
  
1173 ····check-cast·v0,·Ljava/net/Inet6Address;1173 ····check-cast·v0,·Ljava/net/Inet6Address;
  
1174 ····.line·8261174 ····.line·822
1175 ····iget-object·v2,·p0,·Landroid/net/ip/IpServer;->mInterfaceCtrl:Landroid/net/ip/InterfaceController;1175 ····iget-object·v2,·p0,·Landroid/net/ip/IpServer;->mInterfaceCtrl:Landroid/net/ip/InterfaceController;
  
1176 ····invoke-virtual·{v2,·v0,·v1},·Landroid/net/ip/InterfaceController;->addAddress(Ljava/net/InetAddress;I)Z1176 ····invoke-virtual·{v2,·v0,·v1},·Landroid/net/ip/InterfaceController;->addAddress(Ljava/net/InetAddress;I)Z
  
1177 ····move-result·v21177 ····move-result·v2
  
1178 ····if-nez·v2,·:cond_51178 ····if-nez·v2,·:cond_5
  
1179 ····.line·8271179 ····.line·823
1180 ····iget-object·v2,·p0,·Landroid/net/ip/IpServer;->mLog:Landroid/net/util/SharedLog;1180 ····iget-object·v2,·p0,·Landroid/net/ip/IpServer;->mLog:Landroid/net/util/SharedLog;
  
1181 ····new-instance·v3,·Ljava/lang/StringBuilder;1181 ····new-instance·v3,·Ljava/lang/StringBuilder;
  
1182 ····invoke-direct·{v3},·Ljava/lang/StringBuilder;-><init>()V1182 ····invoke-direct·{v3},·Ljava/lang/StringBuilder;-><init>()V
  
1183 ····const-string·v4,·"Failed·to·add·local·dns·IP·"1183 ····const-string·v4,·"Failed·to·add·local·dns·IP·"
Offset 1199, 52 lines modifiedOffset 1199, 52 lines modified
  
1199 ····invoke-virtual·{v3},·Ljava/lang/StringBuilder;->toString()Ljava/lang/String;1199 ····invoke-virtual·{v3},·Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
  
1200 ····move-result-object·v31200 ····move-result-object·v3
  
1201 ····invoke-virtual·{v2,·v3},·Landroid/net/util/SharedLog;->e(Ljava/lang/String;)V1201 ····invoke-virtual·{v2,·v3},·Landroid/net/util/SharedLog;->e(Ljava/lang/String;)V
  
1202 ····.line·8281202 ····.line·824
1203 ····invoke-virtual·{p2,·v0},·Ljava/util/HashSet;->remove(Ljava/lang/Object;)Z1203 ····invoke-virtual·{p2,·v0},·Ljava/util/HashSet;->remove(Ljava/lang/Object;)Z
  
1204 ····.line·8311204 ····.line·827
1205 ····:cond_51205 ····:cond_5
1206 ····iget-object·v2,·p0,·Landroid/net/ip/IpServer;->mLinkProperties:Landroid/net/LinkProperties;1206 ····iget-object·v2,·p0,·Landroid/net/ip/IpServer;->mLinkProperties:Landroid/net/LinkProperties;
  
1207 ····new-instance·v3,·Landroid/net/LinkAddress;1207 ····new-instance·v3,·Landroid/net/LinkAddress;
  
1208 ····invoke-direct·{v3,·v0,·v1},·Landroid/net/LinkAddress;-><init>(Ljava/net/InetAddress;I)V1208 ····invoke-direct·{v3,·v0,·v1},·Landroid/net/LinkAddress;-><init>(Ljava/net/InetAddress;I)V
  
1209 ····invoke-virtual·{v2,·v3},·Landroid/net/LinkProperties;->addLinkAddress(Landroid/net/LinkAddress;)Z1209 ····invoke-virtual·{v2,·v3},·Landroid/net/LinkProperties;->addLinkAddress(Landroid/net/LinkAddress;)Z
  
1210 ····goto·:goto_11210 ····goto·:goto_1
  
1211 ····.line·8361211 ····.line·832
1212 ····:cond_61212 ····:cond_6
1213 ····:try_start_01213 ····:try_start_0
1214 ····iget-object·p1,·p0,·Landroid/net/ip/IpServer;->mNetd:Landroid/net/INetd;1214 ····iget-object·p1,·p0,·Landroid/net/ip/IpServer;->mNetd:Landroid/net/INetd;
  
1215 ····invoke-interface·{p1},·Landroid/net/INetd;->tetherApplyDnsInterfaces()Z1215 ····invoke-interface·{p1},·Landroid/net/INetd;->tetherApplyDnsInterfaces()Z
1216 ····:try_end_01216 ····:try_end_0
1217 ····.catch·Landroid/os/ServiceSpecificException;·{:try_start_0·..·:try_end_0}·:catch_01217 ····.catch·Landroid/os/ServiceSpecificException;·{:try_start_0·..·:try_end_0}·:catch_0
1218 ····.catch·Landroid/os/RemoteException;·{:try_start_0·..·:try_end_0}·:catch_01218 ····.catch·Landroid/os/RemoteException;·{:try_start_0·..·:try_end_0}·:catch_0
  
1219 ····goto·:goto_21219 ····goto·:goto_2
  
1220 ····.line·8381220 ····.line·834
1221 ····:catch_01221 ····:catch_0
1222 ····iget-object·p0,·p0,·Landroid/net/ip/IpServer;->mLog:Landroid/net/util/SharedLog;1222 ····iget-object·p0,·p0,·Landroid/net/ip/IpServer;->mLog:Landroid/net/util/SharedLog;
  
1223 ····const-string·p1,·"Failed·to·update·local·DNS·caching·server"1223 ····const-string·p1,·"Failed·to·update·local·DNS·caching·server"
  
1224 ····invoke-virtual·{p0,·p1},·Landroid/net/util/SharedLog;->e(Ljava/lang/String;)V1224 ····invoke-virtual·{p0,·p1},·Landroid/net/util/SharedLog;->e(Ljava/lang/String;)V
  
1225 ····if-eqz·p2,·:cond_71225 ····if-eqz·p2,·:cond_7
  
1226 ····.line·8391226 ····.line·835
1227 ····invoke-virtual·{p2},·Ljava/util/HashSet;->clear()V1227 ····invoke-virtual·{p2},·Ljava/util/HashSet;->clear()V
  
1228 ····:cond_71228 ····:cond_7
1229 ····:goto_21229 ····:goto_2
1230 ····return-void1230 ····return-void
1231 .end·method1231 .end·method
  
Offset 1258, 66 lines modifiedOffset 1258, 66 lines modified
1258 ············">;",1258 ············">;",
1259 ············"Ljava/util/HashSet<",1259 ············"Ljava/util/HashSet<",
1260 ············"Landroid/net/IpPrefix;",1260 ············"Landroid/net/IpPrefix;",
1261 ············">;)V"1261 ············">;)V"
1262 ········}1262 ········}
1263 ····.end·annotation1263 ····.end·annotation
  
1264 ····.line·7811264 ····.line·777
1265 ····invoke-virtual·{p1},·Ljava/util/HashSet;->isEmpty()Z1265 ····invoke-virtual·{p1},·Ljava/util/HashSet;->isEmpty()Z
  
1266 ····move-result·v01266 ····move-result·v0
  
1267 ····if-nez·v0,·:cond_01267 ····if-nez·v0,·:cond_0
  
1268 ····.line·7821268 ····.line·778
1269 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer;->mIfaceName:Ljava/lang/String;1269 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer;->mIfaceName:Ljava/lang/String;
  
1270 ····invoke-static·{v0,·p1},·Landroid/net/ip/IpServer;->getLocalRoutesFor(Ljava/lang/String;Ljava/util/HashSet;)Ljava/util/ArrayList;1270 ····invoke-static·{v0,·p1},·Landroid/net/ip/IpServer;->getLocalRoutesFor(Ljava/lang/String;Ljava/util/HashSet;)Ljava/util/ArrayList;
  
1271 ····move-result-object·p11271 ····move-result-object·p1
  
1272 ····invoke-direct·{p0,·p1},·Landroid/net/ip/IpServer;->removeRoutesFromLocalNetwork(Ljava/util/List;)V1272 ····invoke-direct·{p0,·p1},·Landroid/net/ip/IpServer;->removeRoutesFromLocalNetwork(Ljava/util/List;)V
  
1273 ····:cond_01273 ····:cond_0
1274 ····if-eqz·p2,·:cond_21274 ····if-eqz·p2,·:cond_2
  
1275 ····.line·7861275 ····.line·782
1276 ····invoke-virtual·{p2},·Ljava/util/HashSet;->isEmpty()Z1276 ····invoke-virtual·{p2},·Ljava/util/HashSet;->isEmpty()Z
  
1277 ····move-result·p11277 ····move-result·p1
  
1278 ····if-nez·p1,·:cond_21278 ····if-nez·p1,·:cond_2
  
1279 ····.line·7871279 ····.line·783
1280 ····invoke-virtual·{p2},·Ljava/util/HashSet;->clone()Ljava/lang/Object;1280 ····invoke-virtual·{p2},·Ljava/util/HashSet;->clone()Ljava/lang/Object;
  
1281 ····move-result-object·p11281 ····move-result-object·p1
  
1282 ····check-cast·p1,·Ljava/util/HashSet;1282 ····check-cast·p1,·Ljava/util/HashSet;
  
1283 ····.line·7881283 ····.line·784
1284 ····iget-object·p2,·p0,·Landroid/net/ip/IpServer;->mLastRaParams:Landroid/net/ip/RouterAdvertisementDaemon$RaParams;1284 ····iget-object·p2,·p0,·Landroid/net/ip/IpServer;->mLastRaParams:Landroid/net/ip/RouterAdvertisementDaemon$RaParams;
  
1285 ····if-eqz·p2,·:cond_11285 ····if-eqz·p2,·:cond_1
  
1286 ····.line·7891286 ····.line·785
1287 ····iget-object·p2,·p2,·Landroid/net/ip/RouterAdvertisementDaemon$RaParams;->prefixes:Ljava/util/HashSet;1287 ····iget-object·p2,·p2,·Landroid/net/ip/RouterAdvertisementDaemon$RaParams;->prefixes:Ljava/util/HashSet;
  
1288 ····invoke-virtual·{p1,·p2},·Ljava/util/HashSet;->removeAll(Ljava/util/Collection;)Z1288 ····invoke-virtual·{p1,·p2},·Ljava/util/HashSet;->removeAll(Ljava/util/Collection;)Z
  
1289 ····.line·7921289 ····.line·788
1290 ····:cond_11290 ····:cond_1
1291 ····invoke-virtual·{p1},·Ljava/util/HashSet;->isEmpty()Z1291 ····invoke-virtual·{p1},·Ljava/util/HashSet;->isEmpty()Z
  
1292 ····move-result·p21292 ····move-result·p2
  
1293 ····if-nez·p2,·:cond_21293 ····if-nez·p2,·:cond_2
  
1294 ····.line·7931294 ····.line·789
1295 ····iget-object·p2,·p0,·Landroid/net/ip/IpServer;->mIfaceName:Ljava/lang/String;1295 ····iget-object·p2,·p0,·Landroid/net/ip/IpServer;->mIfaceName:Ljava/lang/String;
  
1296 ····invoke-static·{p2,·p1},·Landroid/net/ip/IpServer;->getLocalRoutesFor(Ljava/lang/String;Ljava/util/HashSet;)Ljava/util/ArrayList;1296 ····invoke-static·{p2,·p1},·Landroid/net/ip/IpServer;->getLocalRoutesFor(Ljava/lang/String;Ljava/util/HashSet;)Ljava/util/ArrayList;
  
1297 ····move-result-object·p11297 ····move-result-object·p1
  
1298 ····invoke-direct·{p0,·p1},·Landroid/net/ip/IpServer;->addRoutesToLocalNetwork(Ljava/util/List;)V1298 ····invoke-direct·{p0,·p1},·Landroid/net/ip/IpServer;->addRoutesToLocalNetwork(Ljava/util/List;)V
Offset 1325, 18 lines modifiedOffset 1325, 18 lines modified
1325 ····:cond_21325 ····:cond_2
1326 ····return-void1326 ····return-void
1327 .end·method1327 .end·method
  
1328 .method·private·getDirectConnectedRoute(Landroid/net/LinkAddress;)Landroid/net/RouteInfo;1328 .method·private·getDirectConnectedRoute(Landroid/net/LinkAddress;)Landroid/net/RouteInfo;
1329 ····.locals·31329 ····.locals·3
  
1330 ····.line·5161330 ····.line·512
1331 ····invoke-static·{p1},·Ljava/util/Objects;->requireNonNull(Ljava/lang/Object;)Ljava/lang/Object;1331 ····invoke-static·{p1},·Ljava/util/Objects;->requireNonNull(Ljava/lang/Object;)Ljava/lang/Object;
  
1332 ····.line·5171332 ····.line·513
1333 ····new-instance·v0,·Landroid/net/RouteInfo;1333 ····new-instance·v0,·Landroid/net/RouteInfo;
  
1334 ····invoke-static·{p1},·Landroid/net/util/PrefixUtils;->asIpPrefix(Landroid/net/LinkAddress;)Landroid/net/IpPrefix;1334 ····invoke-static·{p1},·Landroid/net/util/PrefixUtils;->asIpPrefix(Landroid/net/LinkAddress;)Landroid/net/IpPrefix;
  
1335 ····move-result-object·p11335 ····move-result-object·p1
  
1336 ····iget-object·p0,·p0,·Landroid/net/ip/IpServer;->mIfaceName:Ljava/lang/String;1336 ····iget-object·p0,·p0,·Landroid/net/ip/IpServer;->mIfaceName:Ljava/lang/String;
Offset 1349, 73 lines modifiedOffset 1349, 73 lines modified
  
1349 ····return-object·v01349 ····return-object·v0
1350 .end·method1350 .end·method
  
1351 .method·private·getHopLimit(Ljava/lang/String;I)B1351 .method·private·getHopLimit(Ljava/lang/String;I)B
1352 ····.locals·41352 ····.locals·4
  
1353 ····.line·9821353 ····.line·978
1354 ····:try_start_01354 ····:try_start_0
1355 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer;->mNetd:Landroid/net/INetd;1355 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer;->mNetd:Landroid/net/INetd;
  
1356 ····const/4·v1,·0x61356 ····const/4·v1,·0x6
  
1357 ····const/4·v2,·0x11357 ····const/4·v2,·0x1
  
1358 ····const-string·v3,·"hop_limit"1358 ····const-string·v3,·"hop_limit"
  
1359 ····.line·9831359 ····.line·979
1360 ····invoke-interface·{v0,·v1,·v2,·p1,·v3},·Landroid/net/INetd;->getProcSysNet(IILjava/lang/String;Ljava/lang/String;)Ljava/lang/String;1360 ····invoke-interface·{v0,·v1,·v2,·p1,·v3},·Landroid/net/INetd;->getProcSysNet(IILjava/lang/String;Ljava/lang/String;)Ljava/lang/String;
  
1361 ····move-result-object·p11361 ····move-result-object·p1
  
1362 ····.line·9821362 ····.line·978
1363 ····invoke-static·{p1},·Ljava/lang/Integer;->parseUnsignedInt(Ljava/lang/String;)I1363 ····invoke-static·{p1},·Ljava/lang/Integer;->parseUnsignedInt(Ljava/lang/String;)I
  
1364 ····move-result·p11364 ····move-result·p1
  
1365 ····add-int/2addr·p1,·p21365 ····add-int/2addr·p1,·p2
  
1366 ····const/16·p2,·0xff1366 ····const/16·p2,·0xff
  
1367 ····.line·9861367 ····.line·982
1368 ····invoke-static·{p1,·p2},·Ljava/lang/Integer;->min(II)I1368 ····invoke-static·{p1,·p2},·Ljava/lang/Integer;->min(II)I
  
1369 ····move-result·p01369 ····move-result·p0
1370 ····:try_end_01370 ····:try_end_0
1371 ····.catch·Ljava/lang/Exception;·{:try_start_0·..·:try_end_0}·:catch_01371 ····.catch·Ljava/lang/Exception;·{:try_start_0·..·:try_end_0}·:catch_0
  
1372 ····int-to-byte·p0,·p01372 ····int-to-byte·p0,·p0
  
1373 ····return·p01373 ····return·p0
  
1374 ····:catch_01374 ····:catch_0
1375 ····move-exception·p11375 ····move-exception·p1
  
1376 ····.line·9881376 ····.line·984
1377 ····iget-object·p0,·p0,·Landroid/net/ip/IpServer;->mLog:Landroid/net/util/SharedLog;1377 ····iget-object·p0,·p0,·Landroid/net/ip/IpServer;->mLog:Landroid/net/util/SharedLog;
  
1378 ····const-string·p2,·"Failed·to·find·upstream·interface·hop·limit"1378 ····const-string·p2,·"Failed·to·find·upstream·interface·hop·limit"
  
1379 ····invoke-virtual·{p0,·p2,·p1},·Landroid/net/util/SharedLog;->e(Ljava/lang/String;Ljava/lang/Throwable;)V1379 ····invoke-virtual·{p0,·p2,·p1},·Landroid/net/util/SharedLog;->e(Ljava/lang/String;Ljava/lang/Throwable;)V
  
1380 ····const/16·p0,·0x411380 ····const/16·p0,·0x41
  
1381 ····return·p01381 ····return·p0
1382 .end·method1382 .end·method
  
1383 .method·private·static·getLocalDnsIpFor(Landroid/net/IpPrefix;)Ljava/net/Inet6Address;1383 .method·private·static·getLocalDnsIpFor(Landroid/net/IpPrefix;)Ljava/net/Inet6Address;
1384 ····.locals·61384 ····.locals·6
  
1385 ····.line·13721385 ····.line·1368
1386 ····invoke-virtual·{p0},·Landroid/net/IpPrefix;->getRawAddress()[B1386 ····invoke-virtual·{p0},·Landroid/net/IpPrefix;->getRawAddress()[B
  
1387 ····move-result-object·v01387 ····move-result-object·v0
  
1388 ····.line·13731388 ····.line·1369
1389 ····array-length·v1,·v01389 ····array-length·v1,·v0
  
1390 ····const/4·v2,·0x11390 ····const/4·v2,·0x1
  
1391 ····sub-int/2addr·v1,·v21391 ····sub-int/2addr·v1,·v2
  
1392 ····const/4·v3,·0x21392 ····const/4·v3,·0x2
Offset 1442, 25 lines modifiedOffset 1442, 25 lines modified
  
1442 ····move-result·v21442 ····move-result·v2
  
1443 ····aput-byte·v2,·v0,·v11443 ····aput-byte·v2,·v0,·v1
  
1444 ····const/4·v1,·0x01444 ····const/4·v1,·0x0
  
1445 ····.line·13751445 ····.line·1371
1446 ····:try_start_01446 ····:try_start_0
1447 ····invoke-static·{v1,·v0,·v4},·Ljava/net/Inet6Address;->getByAddress(Ljava/lang/String;[BI)Ljava/net/Inet6Address;1447 ····invoke-static·{v1,·v0,·v4},·Ljava/net/Inet6Address;->getByAddress(Ljava/lang/String;[BI)Ljava/net/Inet6Address;
  
1448 ····move-result-object·p01448 ····move-result-object·p0
1449 ····:try_end_01449 ····:try_end_0
1450 ····.catch·Ljava/net/UnknownHostException;·{:try_start_0·..·:try_end_0}·:catch_01450 ····.catch·Ljava/net/UnknownHostException;·{:try_start_0·..·:try_end_0}·:catch_0
  
1451 ····return-object·p01451 ····return-object·p0
  
1452 ····.line·13771452 ····.line·1373
1453 ····:catch_01453 ····:catch_0
1454 ····new-instance·v0,·Ljava/lang/StringBuilder;1454 ····new-instance·v0,·Ljava/lang/StringBuilder;
  
1455 ····invoke-direct·{v0},·Ljava/lang/StringBuilder;-><init>()V1455 ····invoke-direct·{v0},·Ljava/lang/StringBuilder;-><init>()V
  
1456 ····const-string·v2,·"Failed·to·construct·Inet6Address·from:·"1456 ····const-string·v2,·"Failed·to·construct·Inet6Address·from:·"
  
Offset 1490, 20 lines modifiedOffset 1490, 20 lines modified
1490 ············">;)",1490 ············">;)",
1491 ············"Ljava/util/ArrayList<",1491 ············"Ljava/util/ArrayList<",
1492 ············"Landroid/net/RouteInfo;",1492 ············"Landroid/net/RouteInfo;",
1493 ············">;"1493 ············">;"
1494 ········}1494 ········}
1495 ····.end·annotation1495 ····.end·annotation
  
1496 ····.line·13631496 ····.line·1359
1497 ····new-instance·v0,·Ljava/util/ArrayList;1497 ····new-instance·v0,·Ljava/util/ArrayList;
  
1498 ····invoke-direct·{v0},·Ljava/util/ArrayList;-><init>()V1498 ····invoke-direct·{v0},·Ljava/util/ArrayList;-><init>()V
  
1499 ····.line·13641499 ····.line·1360
1500 ····invoke-virtual·{p1},·Ljava/util/HashSet;->iterator()Ljava/util/Iterator;1500 ····invoke-virtual·{p1},·Ljava/util/HashSet;->iterator()Ljava/util/Iterator;
  
1501 ····move-result-object·p11501 ····move-result-object·p1
  
1502 ····:goto_01502 ····:goto_0
1503 ····invoke-interface·{p1},·Ljava/util/Iterator;->hasNext()Z1503 ····invoke-interface·{p1},·Ljava/util/Iterator;->hasNext()Z
  
Offset 1513, 15 lines modifiedOffset 1513, 15 lines modified
  
1513 ····invoke-interface·{p1},·Ljava/util/Iterator;->next()Ljava/lang/Object;1513 ····invoke-interface·{p1},·Ljava/util/Iterator;->next()Ljava/lang/Object;
  
1514 ····move-result-object·v11514 ····move-result-object·v1
  
1515 ····check-cast·v1,·Landroid/net/IpPrefix;1515 ····check-cast·v1,·Landroid/net/IpPrefix;
  
1516 ····.line·13651516 ····.line·1361
1517 ····new-instance·v2,·Landroid/net/RouteInfo;1517 ····new-instance·v2,·Landroid/net/RouteInfo;
  
1518 ····const/4·v3,·0x01518 ····const/4·v3,·0x0
  
1519 ····const/4·v4,·0x11519 ····const/4·v4,·0x1
  
1520 ····invoke-direct·{v2,·v1,·v3,·p0,·v4},·Landroid/net/RouteInfo;-><init>(Landroid/net/IpPrefix;Ljava/net/InetAddress;Ljava/lang/String;I)V1520 ····invoke-direct·{v2,·v1,·v3,·p0,·v4},·Landroid/net/RouteInfo;-><init>(Landroid/net/IpPrefix;Ljava/net/InetAddress;Ljava/lang/String;I)V
Offset 1533, 26 lines modifiedOffset 1533, 26 lines modified
1533 ····:cond_01533 ····:cond_0
1534 ····return-object·v01534 ····return-object·v0
1535 .end·method1535 .end·method
  
1536 .method·private·static·varargs·getRandomSanitizedByte(B[B)B1536 .method·private·static·varargs·getRandomSanitizedByte(B[B)B
1537 ····.locals·41537 ····.locals·4
  
1538 ····.line·13831538 ····.line·1379
1539 ····new-instance·v0,·Ljava/util/Random;1539 ····new-instance·v0,·Ljava/util/Random;
  
1540 ····invoke-direct·{v0},·Ljava/util/Random;-><init>()V1540 ····invoke-direct·{v0},·Ljava/util/Random;-><init>()V
  
1541 ····invoke-virtual·{v0},·Ljava/util/Random;->nextInt()I1541 ····invoke-virtual·{v0},·Ljava/util/Random;->nextInt()I
  
1542 ····move-result·v01542 ····move-result·v0
  
1543 ····int-to-byte·v0,·v01543 ····int-to-byte·v0,·v0
  
1544 ····.line·13841544 ····.line·1380
1545 ····array-length·v1,·p11545 ····array-length·v1,·p1
  
1546 ····const/4·v2,·0x01546 ····const/4·v2,·0x0
  
1547 ····:goto_01547 ····:goto_0
1548 ····if-ge·v2,·v1,·:cond_11548 ····if-ge·v2,·v1,·:cond_1
  
Offset 1625, 113 lines modifiedOffset 1625, 113 lines modified
  
1625 ····return-object·p01625 ····return-object·p0
1626 .end·method1626 .end·method
  
1627 .method·private·handleNeighborEvent(Landroid/net/ip/IpNeighborMonitor$NeighborEvent;)V1627 .method·private·handleNeighborEvent(Landroid/net/ip/IpNeighborMonitor$NeighborEvent;)V
1628 ····.locals·31628 ····.locals·3
  
1629 ····.line·9121629 ····.line·908
1630 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer;->mInterfaceParams:Landroid/net/util/InterfaceParams;1630 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer;->mInterfaceParams:Landroid/net/util/InterfaceParams;
  
1631 ····if-eqz·v0,·:cond_01631 ····if-eqz·v0,·:cond_0
  
1632 ····iget·v1,·v0,·Landroid/net/util/InterfaceParams;->index:I1632 ····iget·v1,·v0,·Landroid/net/util/InterfaceParams;->index:I
  
1633 ····iget·v2,·p1,·Landroid/net/ip/IpNeighborMonitor$NeighborEvent;->ifindex:I1633 ····iget·v2,·p1,·Landroid/net/ip/IpNeighborMonitor$NeighborEvent;->ifindex:I
  
1634 ····if-ne·v1,·v2,·:cond_01634 ····if-ne·v1,·v2,·:cond_0
  
1635 ····iget-boolean·v0,·v0,·Landroid/net/util/InterfaceParams;->hasMacAddress:Z1635 ····iget-boolean·v0,·v0,·Landroid/net/util/InterfaceParams;->hasMacAddress:Z
  
1636 ····if-eqz·v0,·:cond_01636 ····if-eqz·v0,·:cond_0
  
1637 ····.line·9151637 ····.line·911
1638 ····iget·v0,·p0,·Landroid/net/ip/IpServer;->mLastIPv6UpstreamIfindex:I1638 ····iget·v0,·p0,·Landroid/net/ip/IpServer;->mLastIPv6UpstreamIfindex:I
  
1639 ····invoke-direct·{p0,·v0,·v0,·p1},·Landroid/net/ip/IpServer;->updateIpv6ForwardingRules(IILandroid/net/ip/IpNeighborMonitor$NeighborEvent;)V1639 ····invoke-direct·{p0,·v0,·v0,·p1},·Landroid/net/ip/IpServer;->updateIpv6ForwardingRules(IILandroid/net/ip/IpNeighborMonitor$NeighborEvent;)V
  
1640 ····:cond_01640 ····:cond_0
1641 ····return-void1641 ····return-void
1642 .end·method1642 .end·method
  
1643 .method·private·handleNewPrefixRequest(Landroid/net/IpPrefix;)V1643 .method·private·handleNewPrefixRequest(Landroid/net/IpPrefix;)V
1644 ····.locals·31644 ····.locals·3
  
1645 ····.line·9201645 ····.line·916
1646 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer;->mIpv4Address:Landroid/net/LinkAddress;1646 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer;->mIpv4Address:Landroid/net/LinkAddress;
  
1647 ····invoke-virtual·{v0},·Landroid/net/LinkAddress;->getAddress()Ljava/net/InetAddress;1647 ····invoke-virtual·{v0},·Landroid/net/LinkAddress;->getAddress()Ljava/net/InetAddress;
  
1648 ····move-result-object·v01648 ····move-result-object·v0
  
1649 ····invoke-virtual·{p1,·v0},·Landroid/net/IpPrefix;->contains(Ljava/net/InetAddress;)Z1649 ····invoke-virtual·{p1,·v0},·Landroid/net/IpPrefix;->contains(Ljava/net/InetAddress;)Z
  
1650 ····move-result·v01650 ····move-result·v0
  
1651 ····if-eqz·v0,·:cond_41651 ····if-eqz·v0,·:cond_4
  
1652 ····.line·9211652 ····.line·917
1653 ····invoke-virtual·{p1},·Landroid/net/IpPrefix;->getPrefixLength()I1653 ····invoke-virtual·{p1},·Landroid/net/IpPrefix;->getPrefixLength()I
  
1654 ····move-result·v01654 ····move-result·v0
  
1655 ····iget-object·v1,·p0,·Landroid/net/ip/IpServer;->mIpv4Address:Landroid/net/LinkAddress;1655 ····iget-object·v1,·p0,·Landroid/net/ip/IpServer;->mIpv4Address:Landroid/net/LinkAddress;
  
1656 ····invoke-virtual·{v1},·Landroid/net/LinkAddress;->getPrefixLength()I1656 ····invoke-virtual·{v1},·Landroid/net/LinkAddress;->getPrefixLength()I
  
1657 ····move-result·v11657 ····move-result·v1
  
1658 ····if-eq·v0,·v1,·:cond_01658 ····if-eq·v0,·v1,·:cond_0
  
1659 ····goto/16·:goto_21659 ····goto/16·:goto_2
  
1660 ····.line·9261660 ····.line·922
1661 ····:cond_01661 ····:cond_0
1662 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer;->mIpv4Address:Landroid/net/LinkAddress;1662 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer;->mIpv4Address:Landroid/net/LinkAddress;
  
1663 ····.line·9271663 ····.line·923
1664 ····invoke-direct·{p0},·Landroid/net/ip/IpServer;->requestIpv4Address()Landroid/net/LinkAddress;1664 ····invoke-direct·{p0},·Landroid/net/ip/IpServer;->requestIpv4Address()Landroid/net/LinkAddress;
  
1665 ····move-result-object·v11665 ····move-result-object·v1
  
1666 ····iput-object·v1,·p0,·Landroid/net/ip/IpServer;->mIpv4Address:Landroid/net/LinkAddress;1666 ····iput-object·v1,·p0,·Landroid/net/ip/IpServer;->mIpv4Address:Landroid/net/LinkAddress;
  
1667 ····if-nez·v1,·:cond_11667 ····if-nez·v1,·:cond_1
  
1668 ····.line·9291668 ····.line·925
1669 ····iget-object·p0,·p0,·Landroid/net/ip/IpServer;->mLog:Landroid/net/util/SharedLog;1669 ····iget-object·p0,·p0,·Landroid/net/ip/IpServer;->mLog:Landroid/net/util/SharedLog;
  
1670 ····const-string·p1,·"Fail·to·request·a·new·downstream·prefix"1670 ····const-string·p1,·"Fail·to·request·a·new·downstream·prefix"
  
1671 ····invoke-virtual·{p0,·p1},·Landroid/net/util/SharedLog;->e(Ljava/lang/String;)V1671 ····invoke-virtual·{p0,·p1},·Landroid/net/util/SharedLog;->e(Ljava/lang/String;)V
  
1672 ····return-void1672 ····return-void
  
1673 ····.line·9321673 ····.line·928
1674 ····:cond_11674 ····:cond_1
1675 ····invoke-virtual·{v1},·Landroid/net/LinkAddress;->getAddress()Ljava/net/InetAddress;1675 ····invoke-virtual·{v1},·Landroid/net/LinkAddress;->getAddress()Ljava/net/InetAddress;
  
1676 ····move-result-object·v11676 ····move-result-object·v1
  
1677 ····check-cast·v1,·Ljava/net/Inet4Address;1677 ····check-cast·v1,·Ljava/net/Inet4Address;
  
1678 ····.line·9351678 ····.line·931
1679 ····iget-object·v2,·p0,·Landroid/net/ip/IpServer;->mInterfaceCtrl:Landroid/net/ip/InterfaceController;1679 ····iget-object·v2,·p0,·Landroid/net/ip/IpServer;->mInterfaceCtrl:Landroid/net/ip/InterfaceController;
  
1680 ····invoke-virtual·{p1},·Landroid/net/IpPrefix;->getPrefixLength()I1680 ····invoke-virtual·{p1},·Landroid/net/IpPrefix;->getPrefixLength()I
  
1681 ····move-result·p11681 ····move-result·p1
  
1682 ····invoke-virtual·{v2,·v1,·p1},·Landroid/net/ip/InterfaceController;->addAddress(Ljava/net/InetAddress;I)Z1682 ····invoke-virtual·{v2,·v1,·p1},·Landroid/net/ip/InterfaceController;->addAddress(Ljava/net/InetAddress;I)Z
  
1683 ····move-result·p11683 ····move-result·p1
  
1684 ····if-nez·p1,·:cond_21684 ····if-nez·p1,·:cond_2
  
1685 ····.line·9361685 ····.line·932
1686 ····iget-object·p0,·p0,·Landroid/net/ip/IpServer;->mLog:Landroid/net/util/SharedLog;1686 ····iget-object·p0,·p0,·Landroid/net/ip/IpServer;->mLog:Landroid/net/util/SharedLog;
  
1687 ····new-instance·p1,·Ljava/lang/StringBuilder;1687 ····new-instance·p1,·Ljava/lang/StringBuilder;
  
1688 ····invoke-direct·{p1},·Ljava/lang/StringBuilder;-><init>()V1688 ····invoke-direct·{p1},·Ljava/lang/StringBuilder;-><init>()V
  
1689 ····const-string·v0,·"Failed·to·add·new·IP·"1689 ····const-string·v0,·"Failed·to·add·new·IP·"
Offset 1744, 92 lines modifiedOffset 1744, 92 lines modified
  
1744 ····move-result-object·p11744 ····move-result-object·p1
  
1745 ····invoke-virtual·{p0,·p1},·Landroid/net/util/SharedLog;->e(Ljava/lang/String;)V1745 ····invoke-virtual·{p0,·p1},·Landroid/net/util/SharedLog;->e(Ljava/lang/String;)V
  
1746 ····return-void1746 ····return-void
  
1747 ····.line·9421747 ····.line·938
1748 ····:cond_21748 ····:cond_2
1749 ····invoke-direct·{p0,·v0},·Landroid/net/ip/IpServer;->getDirectConnectedRoute(Landroid/net/LinkAddress;)Landroid/net/RouteInfo;1749 ····invoke-direct·{p0,·v0},·Landroid/net/ip/IpServer;->getDirectConnectedRoute(Landroid/net/LinkAddress;)Landroid/net/RouteInfo;
  
1750 ····move-result-object·p11750 ····move-result-object·p1
  
1751 ····invoke-static·{p1},·Ljava/util/Collections;->singletonList(Ljava/lang/Object;)Ljava/util/List;1751 ····invoke-static·{p1},·Ljava/util/Collections;->singletonList(Ljava/lang/Object;)Ljava/util/List;
  
1752 ····move-result-object·p11752 ····move-result-object·p1
  
1753 ····.line·9411753 ····.line·937
1754 ····invoke-direct·{p0,·p1},·Landroid/net/ip/IpServer;->removeRoutesFromLocalNetwork(Ljava/util/List;)V1754 ····invoke-direct·{p0,·p1},·Landroid/net/ip/IpServer;->removeRoutesFromLocalNetwork(Ljava/util/List;)V
  
1755 ····.line·9431755 ····.line·939
1756 ····iget-object·p1,·p0,·Landroid/net/ip/IpServer;->mLinkProperties:Landroid/net/LinkProperties;1756 ····iget-object·p1,·p0,·Landroid/net/ip/IpServer;->mLinkProperties:Landroid/net/LinkProperties;
  
1757 ····invoke-virtual·{p1,·v0},·Landroid/net/LinkProperties;->removeLinkAddress(Landroid/net/LinkAddress;)Z1757 ····invoke-virtual·{p1,·v0},·Landroid/net/LinkProperties;->removeLinkAddress(Landroid/net/LinkAddress;)Z
  
1758 ····.line·9461758 ····.line·942
1759 ····iget-object·p1,·p0,·Landroid/net/ip/IpServer;->mIpv4Address:Landroid/net/LinkAddress;1759 ····iget-object·p1,·p0,·Landroid/net/ip/IpServer;->mIpv4Address:Landroid/net/LinkAddress;
  
1760 ····.line·9471760 ····.line·943
1761 ····invoke-direct·{p0,·p1},·Landroid/net/ip/IpServer;->getDirectConnectedRoute(Landroid/net/LinkAddress;)Landroid/net/RouteInfo;1761 ····invoke-direct·{p0,·p1},·Landroid/net/ip/IpServer;->getDirectConnectedRoute(Landroid/net/LinkAddress;)Landroid/net/RouteInfo;
  
1762 ····move-result-object·p11762 ····move-result-object·p1
  
1763 ····invoke-static·{p1},·Ljava/util/Collections;->singletonList(Ljava/lang/Object;)Ljava/util/List;1763 ····invoke-static·{p1},·Ljava/util/Collections;->singletonList(Ljava/lang/Object;)Ljava/util/List;
  
1764 ····move-result-object·p11764 ····move-result-object·p1
  
1765 ····.line·9461765 ····.line·942
1766 ····invoke-direct·{p0,·p1},·Landroid/net/ip/IpServer;->addRoutesToLocalNetwork(Ljava/util/List;)V1766 ····invoke-direct·{p0,·p1},·Landroid/net/ip/IpServer;->addRoutesToLocalNetwork(Ljava/util/List;)V
  
1767 ····.line·9481767 ····.line·944
1768 ····iget-object·p1,·p0,·Landroid/net/ip/IpServer;->mLinkProperties:Landroid/net/LinkProperties;1768 ····iget-object·p1,·p0,·Landroid/net/ip/IpServer;->mLinkProperties:Landroid/net/LinkProperties;
  
1769 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer;->mIpv4Address:Landroid/net/LinkAddress;1769 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer;->mIpv4Address:Landroid/net/LinkAddress;
  
1770 ····invoke-virtual·{p1,·v0},·Landroid/net/LinkProperties;->addLinkAddress(Landroid/net/LinkAddress;)Z1770 ····invoke-virtual·{p1,·v0},·Landroid/net/LinkProperties;->addLinkAddress(Landroid/net/LinkAddress;)Z
  
1771 ····.line·9541771 ····.line·950
1772 ····:try_start_01772 ····:try_start_0
1773 ····iget-object·p1,·p0,·Landroid/net/ip/IpServer;->mNetd:Landroid/net/INetd;1773 ····iget-object·p1,·p0,·Landroid/net/ip/IpServer;->mNetd:Landroid/net/INetd;
  
1774 ····invoke-interface·{p1},·Landroid/net/INetd;->tetherApplyDnsInterfaces()Z1774 ····invoke-interface·{p1},·Landroid/net/INetd;->tetherApplyDnsInterfaces()Z
1775 ····:try_end_01775 ····:try_end_0
1776 ····.catch·Landroid/os/ServiceSpecificException;·{:try_start_0·..·:try_end_0}·:catch_11776 ····.catch·Landroid/os/ServiceSpecificException;·{:try_start_0·..·:try_end_0}·:catch_1
1777 ····.catch·Landroid/os/RemoteException;·{:try_start_0·..·:try_end_0}·:catch_11777 ····.catch·Landroid/os/RemoteException;·{:try_start_0·..·:try_end_0}·:catch_1
  
1778 ····.line·9591778 ····.line·955
1779 ····invoke-direct·{p0},·Landroid/net/ip/IpServer;->sendLinkProperties()V1779 ····invoke-direct·{p0},·Landroid/net/ip/IpServer;->sendLinkProperties()V
  
1780 ····.line·9621780 ····.line·958
1781 ····iget-object·p1,·p0,·Landroid/net/ip/IpServer;->mStaticIpv4ClientAddr:Landroid/net/LinkAddress;1781 ····iget-object·p1,·p0,·Landroid/net/ip/IpServer;->mStaticIpv4ClientAddr:Landroid/net/LinkAddress;
  
1782 ····if-nez·p1,·:cond_31782 ····if-nez·p1,·:cond_3
  
1783 ····const/4·p1,·0x01783 ····const/4·p1,·0x0
  
1784 ····goto·:goto_01784 ····goto·:goto_0
  
1785 ····.line·9631785 ····.line·959
1786 ····:cond_31786 ····:cond_3
1787 ····invoke-virtual·{p1},·Landroid/net/LinkAddress;->getAddress()Ljava/net/InetAddress;1787 ····invoke-virtual·{p1},·Landroid/net/LinkAddress;->getAddress()Ljava/net/InetAddress;
  
1788 ····move-result-object·p11788 ····move-result-object·p1
  
1789 ····check-cast·p1,·Ljava/net/Inet4Address;1789 ····check-cast·p1,·Ljava/net/Inet4Address;
  
1790 ····.line·9641790 ····.line·960
1791 ····:goto_01791 ····:goto_0
1792 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer;->mIpv4Address:Landroid/net/LinkAddress;1792 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer;->mIpv4Address:Landroid/net/LinkAddress;
  
1793 ····invoke-direct·{p0,·v1,·v1,·v0,·p1},·Landroid/net/ip/IpServer;->makeServingParams(Ljava/net/Inet4Address;Ljava/net/Inet4Address;Landroid/net/LinkAddress;Ljava/net/Inet4Address;)Landroid/net/dhcp/DhcpServingParamsParcel;1793 ····invoke-direct·{p0,·v1,·v1,·v0,·p1},·Landroid/net/ip/IpServer;->makeServingParams(Ljava/net/Inet4Address;Ljava/net/Inet4Address;Landroid/net/LinkAddress;Ljava/net/Inet4Address;)Landroid/net/dhcp/DhcpServingParamsParcel;
  
1794 ····move-result-object·p11794 ····move-result-object·p1
  
1795 ····.line·9671795 ····.line·963
1796 ····:try_start_11796 ····:try_start_1
1797 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer;->mDhcpServer:Landroid/net/dhcp/IDhcpServer;1797 ····iget-object·v0,·p0,·Landroid/net/ip/IpServer;->mDhcpServer:Landroid/net/dhcp/IDhcpServer;
  
1798 ····new-instance·v1,·Landroid/net/ip/IpServer$2;1798 ····new-instance·v1,·Landroid/net/ip/IpServer$2;
  
1799 ····invoke-direct·{v1,·p0},·Landroid/net/ip/IpServer$2;-><init>(Landroid/net/ip/IpServer;)V1799 ····invoke-direct·{v1,·p0},·Landroid/net/ip/IpServer$2;-><init>(Landroid/net/ip/IpServer;)V
  
Offset 1838, 35 lines modifiedOffset 1838, 35 lines modified
1838 ····.catch·Landroid/os/RemoteException;·{:try_start_1·..·:try_end_1}·:catch_01838 ····.catch·Landroid/os/RemoteException;·{:try_start_1·..·:try_end_1}·:catch_0
  
1839 ····goto·:goto_11839 ····goto·:goto_1
  
1840 ····:catch_01840 ····:catch_0
1841 ····move-exception·p11841 ····move-exception·p1
  
1842 ····.line·9761842 ····.line·972
1843 ····iget-object·p0,·p0,·Landroid/net/ip/IpServer;->mLog:Landroid/net/util/SharedLog;1843 ····iget-object·p0,·p0,·Landroid/net/ip/IpServer;->mLog:Landroid/net/util/SharedLog;
  
1844 ····const-string·v0,·"Error·updating·DHCP·serving·params"1844 ····const-string·v0,·"Error·updating·DHCP·serving·params"
  
1845 ····invoke-virtual·{p0,·v0,·p1},·Landroid/net/util/SharedLog;->e(Ljava/lang/String;Ljava/lang/Throwable;)V1845 ····invoke-virtual·{p0,·v0,·p1},·Landroid/net/util/SharedLog;->e(Ljava/lang/String;Ljava/lang/Throwable;)V
  
1846 ····:goto_11846 ····:goto_1
1847 ····return-void1847 ····return-void
  
1848 ····.line·9561848 ····.line·952
1849 ····:catch_11849 ····:catch_1
1850 ····iget-object·p0,·p0,·Landroid/net/ip/IpServer;->mLog:Landroid/net/util/SharedLog;1850 ····iget-object·p0,·p0,·Landroid/net/ip/IpServer;->mLog:Landroid/net/util/SharedLog;
  
1851 ····const-string·p1,·"Failed·to·update·local·DNS·caching·server"1851 ····const-string·p1,·"Failed·to·update·local·DNS·caching·server"
  
1852 ····invoke-virtual·{p0,·p1},·Landroid/net/util/SharedLog;->e(Ljava/lang/String;)V1852 ····invoke-virtual·{p0,·p1},·Landroid/net/util/SharedLog;->e(Ljava/lang/String;)V
  
1853 ····return-void1853 ····return-void
  
1854 ····.line·9221854 ····.line·918
1855 ····:cond_41855 ····:cond_4
1856 ····:goto_21856 ····:goto_2
1857 ····new-instance·p0,·Ljava/lang/StringBuilder;1857 ····new-instance·p0,·Ljava/lang/StringBuilder;
  
1858 ····invoke-direct·{p0},·Ljava/lang/StringBuilder;-><init>()V1858 ····invoke-direct·{p0},·Ljava/lang/StringBuilder;-><init>()V
  
1859 ····const-string·v0,·"Invalid·prefix:·"1859 ····const-string·v0,·"Invalid·prefix:·"
Offset 1885, 15 lines modifiedOffset 1885, 15 lines modified
  
1885 ····return-void1885 ····return-void
1886 .end·method1886 .end·method
  
1887 .method·private·logMessage(Lcom/android/networkstack/tethering/util/State;I)V1887 .method·private·logMessage(Lcom/android/networkstack/tethering/util/State;I)V
1888 ····.locals·21888 ····.locals·2
  
1889 ····.line·10111889 ····.line·1007
1890 ····iget-object·p0,·p0,·Landroid/net/ip/IpServer;->mLog:Landroid/net/util/SharedLog;1890 ····iget-object·p0,·p0,·Landroid/net/ip/IpServer;->mLog:Landroid/net/util/SharedLog;
  
1891 ····new-instance·v0,·Ljava/lang/StringBuilder;1891 ····new-instance·v0,·Ljava/lang/StringBuilder;
  
1892 ····invoke-direct·{v0},·Ljava/lang/StringBuilder;-><init>()V1892 ····invoke-direct·{v0},·Ljava/lang/StringBuilder;-><init>()V
  
1893 ····invoke-virtual·{p1},·Lcom/android/networkstack/tethering/util/State;->getName()Ljava/lang/String;1893 ····invoke-virtual·{p1},·Lcom/android/networkstack/tethering/util/State;->getName()Ljava/lang/String;
Offset 1928, 15 lines modifiedOffset 1928, 15 lines modified
  
1928 ····return-void1928 ····return-void
1929 .end·method1929 .end·method
  
1930 .method·private·makeServingParams(Ljava/net/Inet4Address;Ljava/net/Inet4Address;Landroid/net/LinkAddress;Ljava/net/Inet4Address;)Landroid/net/dhcp/DhcpServingParamsParcel;1930 .method·private·makeServingParams(Ljava/net/Inet4Address;Ljava/net/Inet4Address;Landroid/net/LinkAddress;Ljava/net/Inet4Address;)Landroid/net/dhcp/DhcpServingParamsParcel;
1931 ····.locals·51931 ····.locals·5
  
1932 ····.line·5231932 ····.line·519
1933 ····iget·p0,·p0,·Landroid/net/ip/IpServer;->mInterfaceType:I1933 ····iget·p0,·p0,·Landroid/net/ip/IpServer;->mInterfaceType:I
  
1934 ····const/4·v0,·0x01934 ····const/4·v0,·0x0
  
1935 ····const/4·v1,·0x11935 ····const/4·v1,·0x1
  
1936 ····const/4·v2,·0x41936 ····const/4·v2,·0x4
Offset 1948, 104 lines modifiedOffset 1948, 104 lines modified
1948 ····move·p0,·v11948 ····move·p0,·v1
  
1949 ····goto·:goto_01949 ····goto·:goto_0
Max diff block lines reached; 25198/54997 bytes (45.82%) of diff not shown.