Expose TCP_USER_TIMEOUT as a settable socket option.

This is for systems whose tcp.h defines this constant, which is
true for bionic on recent versions of Android but not the prebuilt
glibc-2.15-4.8 currently on host (checked for host/x86_64).

Exposed android.system.Os.setsocketoptInt(). Added a test that
checks that TCP_USER_TIMEOUT can be set and gotten from stream
sockets. Since this is just piping through behavior from the
kernel, added no tests for the semantics of that socket option.

Test: Checked that the newly added tests pass in cts on Nexus6P.

Bug: 30402085
Change-Id: I5fb9e491ce5c856587423d074e9fa3c4b722d956
5 files changed