summaryrefslogtreecommitdiff
path: root/core/java/android/net/RouteInfo.java
Commit message (Collapse)AuthorAgeFilesLines
* Move module sources to packages/ConnectivityRemi NGUYEN VAN2021-02-011-658/+0
| | | | | | | | | | | | | | Files that are planned to be part of the connectivity module are grouped in packages/Connectivity, so they can be built separately and moved in one operation with their history into packages/modules/Connectivity. This places the files in the existing framework-connectivity-sources filegroup instead of the current framework-core-sources filegroup. Both are used the same way in framework-non-updatable-sources. Bug: 171540887 Test: m Change-Id: I62d9d91574ace6f5c4624035d190260c3126b91e
* Move module utils to the module package.Chalard Jean2020-12-161-1/+2
| | | | | | Test: FrameworksWifiTest FrameworksNetTest Change-Id: If5d1e4a58fb2d6d9544e6d01995dabe445cf1f25 Merged-In: I067eeecd458c34b7f2fbfa439072682661ac750c
* Add maxTargetSdk restriction to unused APIs.Mathew Inwood2020-11-041-2/+2
| | | | | | | | | | | These are APIs that have @UnsupportedAppUsage but for which we don't have any evidence of them currently being used, so should be safe to remove from the unsupported list. Bug: 170729553 Test: Treehugger Merged-In: I626caf7c1fe46c5ab1f39c2895b42a34319f771a Change-Id: I54e5ecd11e76ca1de3c5893e3a98b0108e735413
* Remove @TestApi from @SystemApi symbolsAnton Hansson2020-10-191-6/+0
| | | | | | | | | | | | | | I ran these commands: cd frameworks/base grep -rl '@TestApi' --include '*.java' | xargs perl -i -p0e \ 's/\@SystemApi[\s\n]+(\@\w+[\s\n]+)?\@TestApi/\@SystemApi\1/gs' grep -rl '@TestApi' --include '*.java' | xargs perl -i -p0e \ 's/\@TestApi[\s\n]+(\@\w+[\s\n]+)?\@SystemApi/\1\@SystemApi/gs' Bug: 171179806 Test: m checkapi Change-Id: I772790b783b0a8730b8bf680c9e569a886b8d789 Merged-In: I772790b783b0a8730b8bf680c9e569a886b8d789
* Treat RouteInfo with different interfaces as different routesRubin Xu2020-06-171-7/+36
| | | | | | | | | | | | | | | | | On Android different interfaces usually use different routing tables. As a result, a change in interface should not be treated as route update, but rather a remove and an add. This change fixes a bug in VPN seamless handover where routes failed to be updated when a new tunnel interface replaces the existing one within the same network. Bug: 158696878 Test: atest com.android.cts.net.HostsideVpnTests Test: atest NetworkStackTests Test: atest CtsNetTestCases Test: atest FrameworksNetTests Change-Id: I57987233d42a0253eaee2e1ca5f28728c2354620
* Only apply VPN isolation if it's fully routedRubin Xu2020-04-011-0/+26
| | | | | | | | | VPN is considered fully routed if both IPv4 and IPv6 have either a default route or a prohibit route. Bug: 145332510 Test: atest FrameworksNetTests Change-Id: I59cf48552bca98092d1212e3d718fd420add5458
* Fix addRoute replace default route unexpectedlyjunyulai2020-03-241-13/+18
| | | | | | | | | | | | | | | | | | | | | | In aosp/1203789, if two routes are with the same destination, it will be replaced instead of added when calling addRoute. This breaks scenarios which rely on the ability to add multiple default routes, such as multiple IPv6 default routes learned via address autoconfiguration. This change treats the route is an update if the destination and nexthop are the same, but different in other properties. Test: atest OffloadControllerTest#testSetUpstreamLinkPropertiesWorking Test: atest LinkPropertiesUtilsTest#testLinkPropertiesIdenticalEqual Test: atest ConnectivityServiceTest#testStackedLinkProperties Test: atest ConnectivityServiceTest#testRouteAddDeleteUpdate (only directly related tests are listed) Fix: 152170074 Fix: 151911339 Bug: 142892223 Change-Id: I7153ec9866f14a109ba8155c905e5d9e4f85eb64
* mtu: Add MTU parameter to RoutesTyler Wear2020-03-111-0/+20
| | | | | | | | | - Change route to update existing route - MTU parameter added to AddRoute Bug: 142892223 Test: unit test Change-Id: Ie339d0cee5be12c2232a4631fed61219a0facc64
* Remove framework code that has moved to frameworks/libs/netAaron Huang2020-03-101-15/+2
| | | | | | | | | | | | | | | Add srcs to framework and change import path. Remove the codes which are moved to frameworks/libs/net. Bug: 139268426 Bug: 135998869 Bug: 138306002 Bug: 143925787 Test: atest FrameworksNetTests atest FrameworksTelephonyTests ./frameworks/opt/net/wifi/tests/wifitests/runtests.sh Change-Id: Ia5692aade490fbc8a037186fcdfc453e0dd8045b Merged-In: Ibf2f370c97a602f186e37ea9ffbe177dd2ee0f1c
* Revert "Remove framework code that has moved to frameworks/libs/net"Isabelle Taylor2020-02-141-2/+15
| | | | | | | | | | | | | | | | Revert "Use createRandomUnicastAddress from MacAddressUtils" Revert "Add net-utils-framework-net to telephony-common" Revert submission 1191997-net-utils-framework-net Reason for revert: Droidcop-triggered revert due to breakage https://android-build.googleplex.com/builds/quarterdeck?branch=git_qt-qpr1-dev-plus-aosp&target=aosp_taimen-userdebug&lkgb=6208131&lkbb=6208273&fkbb=6208273, bug b/149551544 Reverted Changes: Ib1c807d64:Use createRandomUnicastAddress from MacAddressUtil... I9e0f297e0:Add net-utils-framework-net to telephony-common Ieb8927f9a:Remove framework code that has moved to frameworks... Change-Id: I2824f781babd9f7e0bb9df524dadf6b8397dcaa1
* Remove framework code that has moved to frameworks/libs/netAaron Huang2020-02-031-15/+2
| | | | | | | | | | | | | | | Add srcs to framework and change import path. Remove the codes which are moved to frameworks/libs/net. Bug: 139268426 Bug: 135998869 Bug: 138306002 Bug: 143925787 Test: atest FrameworksNetTests atest FrameworksTelephonyTests ./frameworks/opt/net/wifi/tests/wifitests/runtests.sh Change-Id: Ieb8927f9af7f87a5ae038bd6c7daeb3d70117fef Merged-In: Ieb8927f9af7f87a5ae038bd6c7daeb3d70117fef
* API changes for IPv6 MTU supportSarah Chin2020-01-301-8/+53
| | | | | | | | | | Change mtu->mtuV4 and add mtuV6 for DataProfile and DataCallResult Add mtu to RouteInfo and update test Test: atest FrameworksTelephonyTests Bug: 146668814 Change-Id: I43c7e088e46e40f38d8114548e0fc4e39d7f91cb Merged-In: I43c7e088e46e40f38d8114548e0fc4e39d7f91cb
* Use new UnsupportedAppUsage annotation.Artur Satayev2020-01-081-1/+1
| | | | | | | | | Existing annotations in libcore/ and frameworks/ will deleted after the migration. This also means that any java library that compiles @UnsupportedAppUsage requires a direct dependency on "unsupportedappusage" java_library. Bug: 145132366 Test: m && diff unsupportedappusage_index.csv Change-Id: I0c336de56bc4a041dc97ff9b7927f62f0b44b457 Merged-In: I0c336de56bc4a041dc97ff9b7927f62f0b44b457
* Merge "Fix ApfCapabilities, LinkAddress, RouteInfo, IpPrefix API issues." ↵Paul Hu2019-04-011-12/+51
|\ | | | | | | | | | | | | | | am: f9d61f1c6d am: 96f34c3151 am: bf3e6f5e75 Change-Id: I599dcdb2312a3e1bb1de8e03f349df207c7cc075
| * Fix ApfCapabilities, LinkAddress, RouteInfo, IpPrefix API issues.paulhu2019-04-011-12/+51
| | | | | | | | | | | | | | | | | | Fix: 129362082 Fix: 129361362 Fix: 129360330 Fix: 129362379 Test: atest FrameworksNetTests NetworkStackTests Change-Id: I05fbc6f98207d5cf002e3cbc5829040af7d6be52
* | Merge "Fix Automated API Review issues." am: 43c1ade661 am: 9e3f29037bPaul Hu2019-03-211-1/+3
|\| | | | | | | | | | | am: ce18c5a1ec Change-Id: Iba1630161579571d4975aba9bbd5c767f82c8a98
| * Fix Automated API Review issues.paulhu2019-03-211-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1. Some API's argument/return value must be marked either @NonNull or @Nullable. 2. Change some system APIs to public APIs. 3. Modify the method name Bug: 126700123 Bug: 126702339 Bug: 126699682 Bug: 118296575 Bug: 126699216 Bug: 126699675 Bug: 126699429 Bug: 126699193 Bug: 123586045 Test: atest FrameworksNetTests Change-Id: Iaa2832cdcf83758ed0fec81b954a0c63bc5a7bf6
| * Add additional SystemApi for NetworkStackRemi NGUYEN VAN2019-01-241-0/+2
| | | | | | | | | | | | | | | | | | Members in this CL were missed in earlier changes. Test: m Bug: 112869080 Merged-In: I8b5b80ea7b267357eb0387d504a2f78358d6d502 Change-Id: I8b9b15f8b91962f3ef554fd222a825e471806c9e
* | All Parcelable CREATOR fields are @NonNull.Jeff Sharkey2019-02-281-1/+1
| | | | | | | | | | | | | | | | | | If they were null, then the Parcelable would fail to work. Bug: 126726802 Test: manual Change-Id: I7929ffa2f20e5de1c8e68e8263cca99496e9d014 Exempt-From-Owner-Approval: Trivial API annotations
* | Add additional SystemApi for NetworkStackRemi NGUYEN VAN2019-01-241-0/+2
|/ | | | | | | | Members in this CL were missed in earlier changes. Test: m Bug: 112869080 Change-Id: I8b5b80ea7b267357eb0387d504a2f78358d6d502
* Add fields used by NetworkStack to the APIRemi NGUYEN VAN2019-01-211-5/+12
| | | | | | Test: m Bug: 112869080 Change-Id: I59f6d5ae8a601b7496548b87f137a577f2365a37
* Limit access to suspected false positives.Mathew Inwood2018-12-281-2/+3
| | | | | | | | | | | | | | | | | | | | | | Members modified herein are suspected to be false positives: i.e. things that were added to the greylist in P, but subsequent data analysis suggests that they are not, in fact, used after all. Add a maxTargetSdk=P to these APIs. This is lower-risk that simply removing these things from the greylist, as none of out data sources are perfect nor complete. For APIs that are not supported yet by annotations, move them to hiddenapi-greylist-max-p.txt instead which has the same effect. Exempted-From-Owner-Approval: Automatic changes to the codebase affecting only @UnsupportedAppUsage annotations, themselves added without requiring owners approval earlier. Bug: 115609023 Test: m Change-Id: Ia937d8c41512e7f1b6e7f67b9104c1878b5cc3a0 Merged-In: I020a9c09672ebcae64c5357abc4993e07e744687
* Add @UnsupportedAppUsage annotationsMathew Inwood2018-08-141-0/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | For packages: android.net.wimax android.net.wifi.p2p.nsd android.net.wifi.p2p android.net.wifi.hotspot2.pps android.net.wifi.hotspot2.omadm android.net.wifi.hotspot2 android.net.wifi.aware android.net.wifi android.net.util android.net.sip android.net.rtp android.net.nsd android.net.metrics android.net.lowpan android.net.http android.net.captiveportal android.net This is an automatically generated CL. See go/UnsupportedAppUsage for more details. Exempted-From-Owner-Approval: Mechanical changes to the codebase which have been approved by Android API council and announced on android-eng@ Bug: 110868826 Test: m Change-Id: Ie25423113ee1a8071cd5039382c00de6ce0af7fd Merged-In: I520be7a4c79e68310c12e4f55bf66acaa94145a1
* Add android.net.IpPrefix#contains()Erik Kline2015-04-141-7/+1
| | | | | | | | | This was originally to avoid RuntimeException in RouteInfo#matches(): When an IPv6 prefix with a length greater than the max permitted for IPv4 is matched against an Inet4Address, the call to NetworkUtils throws RuntimeException. Change-Id: I92e2bd19a4e7d656cf682fd27678da07e211850d
* Support non-unicast route types: unreachable and throw.Lorenzo Colitti2014-09-221-8/+85
| | | | | Bug: 17462989 Change-Id: I8635472ca3e96ec2866af2de48e6260ab2da13fb
* Switch RouteInfo to use IpPrefix instead of LinkAddress.Lorenzo Colitti2014-08-131-55/+30
| | | | | | | | | This addresses a TODO and also makes it possible to create routes to destinations that are not valid LinkAddresses, such as multicast addresses. Bug: 16875580 Change-Id: Id4c77b00dc3064bf27d78cdcbbe035e645748cfe
* Minor changes to RouteInfo.Lorenzo Colitti2014-06-251-33/+27
| | | | | | | | | | | | | 1. Realize that mDestination can never be null and update the code accordingly. 2. Simplify isDefaultRoute. 3. Provide two new hidden utility methods, isIPv4Default() and isIPv6Default(), that can be used by LinkProperties to to determine if the system has connectivity. 4. Update tests. Bug: 9180552 Change-Id: I85028d50556c888261d250925962bdedfe08e0c6
* Fix buildRobert Greenwalt2014-06-121-5/+2
| | | | | | | Re-finalizing some classes. The api/current.txt was updated separately but the change that made them final got skipped. Also had same issue for some @hide's that were removed. Change-Id: I423bb7b3029ee03425a3c446bda51ab8191887c1
* Fix wifi connectivity issues.Sreeram Ramachandran2014-06-111-1/+1
| | | | | | | | | | | | | | http://ag/480881 changed RouteInfo.getDestination() to return an IpPrefix instead of a LinkAddress. This makes the equals() comparison always fail. So, when ConnectivityService.updateRoutes() is given identical routes, instead of realizing that there's no diff, it would consider them different, and thus add and remove the same route. The add would fail, since the route already existed in netd, but the remove would succeed, leaving the system with no routes and thus no connectivity. Bug: 15564210 Change-Id: I2003b0fcb809cc20837dc489c58af37891ca4556
* Minor changes to the LinkAddress API docs.Lorenzo Colitti2014-06-101-9/+9
| | | | | | | | | | | | | | | | | 1. Rename getNetworkPrefixLength to getPrefixLength. Update all callers in frameworks/base and add a shim method and a TODO for the rest. 2. @hide isSameAddressAs. It doesn't add much, and it's just one-liner that callers can implement if they want. 3. Fix the alignment of the initial paragraph (<ul> should have been </ul>). 4. Remove the documentation that talks about creating LinkAddresses, since there's no public API for creating them. With these changes I think LinkAddress is fine as a public API. Bug: 15142362 Change-Id: Iaf3b1db577745bb68a9e1dd7f96d666dd3f3ec7c
* Add a new IpPrefix class and use it in RouteInfo.Sreeram Ramachandran2014-06-101-11/+66
| | | | | | | | | | | | | | | | | This change uses IpPrefix only in the public API and continues to use LinkAddress for everything else. It does not change the callers to use the new APIs, with the exception of changing all current uses of getDestination to getDestinationLinkAddress to make room for the new getDestination method that returns an IpPrefix. Based on Sreeram's earlier change: https://googleplex-android-review.git.corp.google.com/#/c/477874/ but a bit simplified and with a bit more documentation. Bug: 15142362 Bug: 13885501 Change-Id: Ib4cd96b22cbff4ea31bb26a7853989f50da8de4e
* Apply Doc fixes to RouteInfoRobert Greenwalt2014-05-191-35/+40
| | | | Change-Id: Ib76df135d5514f7b8baafbbe91fa3d1cdd632f00
* Update RouteInfo docs and make public.Robert Greenwalt2014-05-181-77/+153
| | | | Change-Id: I1a8fe04022ea8291076af166f09112d19114ee16
* Add new route.hasGateway() apiRobert Greenwalt2013-04-121-0/+7
| | | | | | | | | Fixes issues brought in by change to isHostRoute. isHostRoute was technically correct, but the callers really wanted hasNextHop behavior. bug:8597268 Change-Id: I360761ccfa98b2ba34642f717a78fa71ec1bae4f
* Make isHostRoute match only host routesLorenzo Colitti2013-03-271-1/+4
| | | | | | | | | | | | | | | | | | | Currently, isHostRoute returns true iff the gateway address is the unspecified address (0.0.0.0 or ::). Thus, it will return true for any route that has no gateway (e.g., a route pointing at a point-to-point interface), even if the route is not a host route. Fix this by checking the prefix length instead. This should be safe because: 1. mDestination cannot be null, since it's created using new. 2. Host routes created using makeHostRoute (which is what ConnectivityService calls) always have the correct prefix lengths (/32 or /128) set. Bug: 8276725 Change-Id: I14285398823fa6c312349128c7cc216cad4a84c9
* Unbreak documentation build.Lorenzo Colitti2013-03-121-3/+3
| | | | Change-Id: I1e904b111e23d221dcb5f917201d4c27f0c1c05b
* Always specify an interface for host routes.Lorenzo Colitti2013-03-081-5/+5
| | | | Change-Id: I05b4d87e7d7e8237c6f4a70f1fedae00f416f581
* RouteInfo changes.Lorenzo Colitti2013-03-081-13/+59
| | | | | | | | | | - Add the interface name. - Fix a bug where a default route would match an address of another protocol (e.g., 0.0.0.0/0 would match 2001::). - Tweak the hashCode method. - Write a unit test. Change-Id: Ida8266de440a9b1d9eaa132f182b9f1ce8978c44
* Revert "Add default route constants to RouteInfo."Robert Greenwalt2013-03-071-12/+0
| | | | | | This reverts commit 642eb63a65b58fb31635f264fc8ffe44fdf075c5 Change-Id: Ide6d7f3b935da41477b736ef0ef20ec9872563e1
* Add default route constants to RouteInfo.Lorenzo Colitti2013-03-071-0/+12
| | | | | Bug: 8276725 Change-Id: I9c3ad7393430de9275f5b1c0189a94e5a27975fc
* Remove DhcpInfoInternalRobert Greenwalt2012-11-091-0/+4
| | | | | | | First step in accepting a set of patches. bug:6799630 Change-Id: I6c894c60aeb3022960c2aaa45451bb1dde2b493b
* Apply the dns and route diff which we get a changeRobert Greenwalt2011-07-141-0/+11
| | | | | bug:5008973 Change-Id: Ib99e43d9d852452cc1f2aea6bef07bbd194f28cc
* Merge "Reset connection while data state changed." into honeycomb-LTEWink Saville2011-05-191-0/+27
|\
| * Reset connection while data state changed.Wink Saville2011-05-181-0/+27
| | | | | | | | | | | | | | Check data call states and reset connection if any link properties changed. Change-Id: I008aea969378648192852161959fdf4aad6211a1
* | Switch to use netd to add/remove routes.Robert Greenwalt2011-05-181-10/+22
|/ | | | | | Also adds support for v6 routes and for removing single routes. Change-Id: I1c4f08c7938371090944d8d6f603e1e0d6d70c01
* Fix initialization of RouteInfoKazuhiro Ondo2011-05-111-3/+15
| | | | | | IPv6 gateway is not correctly set in RouteInfo Change-Id: I24b1ab71a64e3097c9ba641899240fc27847b86c
* Fix the adding of host routes.Robert Greenwalt2011-05-101-17/+50
| | | | | | We used to just add Change-Id: I991e4cc976cc2932887dd3242fd50e013d521b0a
* Add RouteInfo objects for tracking routes.Robert Greenwalt2011-05-021-0/+162
Used to have list of gateways for default routes, but general static routes should be supported. Change-Id: I01730142c6139f2b833b9d48f5381d2d320b69f6