diff options
| author | Krishnan Parthasarathi <kparthas@redhat.com> | 2013-04-18 23:46:37 +0530 | 
|---|---|---|
| committer | Vijay Bellur <vbellur@redhat.com> | 2013-05-16 08:32:59 -0700 | 
| commit | fbfe5b99b14694b252c0fd3b28e2d3490b8212dd (patch) | |
| tree | 092b39b836b521d9a449ac9e6cfbee3f17d3ba8d /rpc | |
| parent | db18b17c88c1976f9e523c4c6712c7e444927cc4 (diff) | |
rpc-transport: Moved unix socket options function to rpc-transport
This change removes the asymmetry in the 'layer' (read rpc, transport
etc) in which transport options were being filled for inet and unix
sockets.
Change-Id: Iaa080691fd5e4c3baedffa97e9c3f16642c1fc12
BUG: 955919
Signed-off-by: Krishnan Parthasarathi <kparthas@redhat.com>
Reviewed-on: http://review.gluster.org/4850
Reviewed-by: Raghavendra G <raghavendra@gluster.com>
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Diffstat (limited to 'rpc')
| -rw-r--r-- | rpc/rpc-lib/src/rpc-clnt.c | 56 | ||||
| -rw-r--r-- | rpc/rpc-lib/src/rpc-clnt.h | 4 | ||||
| -rw-r--r-- | rpc/rpc-lib/src/rpc-transport.c | 57 | ||||
| -rw-r--r-- | rpc/rpc-lib/src/rpc-transport.h | 4 | 
4 files changed, 61 insertions, 60 deletions
diff --git a/rpc/rpc-lib/src/rpc-clnt.c b/rpc/rpc-lib/src/rpc-clnt.c index 55ac88a93..c8bb8e298 100644 --- a/rpc/rpc-lib/src/rpc-clnt.c +++ b/rpc/rpc-lib/src/rpc-clnt.c @@ -1669,59 +1669,3 @@ rpc_clnt_reconfig (struct rpc_clnt *rpc, struct rpc_clnt_config *config)          }  } -int -rpc_clnt_transport_unix_options_build (dict_t **options, char *filepath, -                                       int frame_timeout) -{ -        dict_t                  *dict = NULL; -        char                    *fpath = NULL; -        int                     ret = -1; - -        GF_ASSERT (filepath); -        GF_ASSERT (options); - -        dict = dict_new (); -        if (!dict) -                goto out; - -        fpath = gf_strdup (filepath); -        if (!fpath) { -                ret = -1; -                goto out; -        } - -        ret = dict_set_dynstr (dict, "transport.socket.connect-path", fpath); -        if (ret) -                goto out; - -        ret = dict_set_str (dict, "transport.address-family", "unix"); -        if (ret) -                goto out; - -        ret = dict_set_str (dict, "transport.socket.nodelay", "off"); -        if (ret) -                goto out; - -        ret = dict_set_str (dict, "transport-type", "socket"); -        if (ret) -                goto out; - -        ret = dict_set_str (dict, "transport.socket.keepalive", "off"); -        if (ret) -                goto out; - -        if (frame_timeout > 0) { -                ret = dict_set_int32 (dict, "frame-timeout", frame_timeout); -                if (ret) -                        goto out; -        } - -        *options = dict; -out: -        if (ret) { -                GF_FREE (fpath); -                if (dict) -                        dict_unref (dict); -        } -        return ret; -} diff --git a/rpc/rpc-lib/src/rpc-clnt.h b/rpc/rpc-lib/src/rpc-clnt.h index 0da165559..1f74e55d7 100644 --- a/rpc/rpc-lib/src/rpc-clnt.h +++ b/rpc/rpc-lib/src/rpc-clnt.h @@ -237,10 +237,6 @@ void rpc_clnt_reconfig (struct rpc_clnt *rpc, struct rpc_clnt_config *config);  int rpcclnt_cbk_program_register (struct rpc_clnt *svc,                                    rpcclnt_cb_program_t *program, void *mydata); -int -rpc_clnt_transport_unix_options_build (dict_t **options, char *filepath, -                                       int frame_timeout); -  void  rpc_clnt_disable (struct rpc_clnt *rpc); diff --git a/rpc/rpc-lib/src/rpc-transport.c b/rpc/rpc-lib/src/rpc-transport.c index 2d64a1a1c..55ff0a3e8 100644 --- a/rpc/rpc-lib/src/rpc-transport.c +++ b/rpc/rpc-lib/src/rpc-transport.c @@ -559,6 +559,63 @@ out:  }  int +rpc_transport_unix_options_build (dict_t **options, char *filepath, +                                  int frame_timeout) +{ +        dict_t                  *dict = NULL; +        char                    *fpath = NULL; +        int                     ret = -1; + +        GF_ASSERT (filepath); +        GF_ASSERT (options); + +        dict = dict_new (); +        if (!dict) +                goto out; + +        fpath = gf_strdup (filepath); +        if (!fpath) { +                ret = -1; +                goto out; +        } + +        ret = dict_set_dynstr (dict, "transport.socket.connect-path", fpath); +        if (ret) +                goto out; + +        ret = dict_set_str (dict, "transport.address-family", "unix"); +        if (ret) +                goto out; + +        ret = dict_set_str (dict, "transport.socket.nodelay", "off"); +        if (ret) +                goto out; + +        ret = dict_set_str (dict, "transport-type", "socket"); +        if (ret) +                goto out; + +        ret = dict_set_str (dict, "transport.socket.keepalive", "off"); +        if (ret) +                goto out; + +        if (frame_timeout > 0) { +                ret = dict_set_int32 (dict, "frame-timeout", frame_timeout); +                if (ret) +                        goto out; +        } + +        *options = dict; +out: +        if (ret) { +                GF_FREE (fpath); +                if (dict) +                        dict_unref (dict); +        } +        return ret; +} + +int  rpc_transport_inet_options_build (dict_t **options, const char *hostname,                                    int port)  { diff --git a/rpc/rpc-lib/src/rpc-transport.h b/rpc/rpc-lib/src/rpc-transport.h index 272de9d7d..9e78b5a04 100644 --- a/rpc/rpc-lib/src/rpc-transport.h +++ b/rpc/rpc-lib/src/rpc-transport.h @@ -302,5 +302,9 @@ rpc_transport_keepalive_options_set (dict_t *options, int32_t interval,                                       int32_t time);  int +rpc_transport_unix_options_build (dict_t **options, char *filepath, +                                  int frame_timeout); + +int  rpc_transport_inet_options_build (dict_t **options, const char *hostname, int port);  #endif /* __RPC_TRANSPORT_H__ */  | 
