Add osmo_sock_init2() function, allowing both BIND *and* CONNECT

The old osmo_sock_init() function allows only either a bind (for a
server socket), or a connect (for a client socket), but not both
together.  So there's no way to have a client socket that is bound to a
specific local IP and/or port, which is needed for some use cases.

Change-Id: Idab124bcca47872f55311a82d6818aed590965e6
diff --git a/tests/socket/socket_test.ok b/tests/socket/socket_test.ok
index d6ec40e..4b24fbc 100644
--- a/tests/socket/socket_test.ok
+++ b/tests/socket/socket_test.ok
@@ -1,3 +1,7 @@
 Checking osmo_sock_init() with bind to a random local UDP port
 Checking for OSMO_SOCK_F_NONBLOCK
 Checking for invalid flags
+Checking osmo_sock_init2() with bind to a random local UDP port
+Checking osmo_sock_init2() for OSMO_SOCK_F_NONBLOCK
+Checking osmo_sock_init2() for invalid flags
+Checking osmo_sock_init2() for combined BIND + CONNECT