1.1 --- a/libext2fs_blockserver/lib/src/blockserver_io.c Sun Jul 11 23:55:34 2021 +0200
1.2 +++ b/libext2fs_blockserver/lib/src/blockserver_io.c Mon Jul 12 00:27:07 2021 +0200
1.3 @@ -124,7 +124,7 @@
1.4 {
1.5 /* Open a device via the named capability. */
1.6
1.7 - file_t *file = client_open_device(blockserver_default_cap, name, flags);
1.8 + file_t *file = client_open_using(name, flags, blockserver_default_cap);
1.9
1.10 /* NOTE: May want a more appropriate error code. */
1.11
2.1 --- a/libfsclient/include/fsclient/client.h Sun Jul 11 23:55:34 2021 +0200
2.2 +++ b/libfsclient/include/fsclient/client.h Mon Jul 12 00:27:07 2021 +0200
2.3 @@ -31,8 +31,9 @@
2.4
2.5 void client_close(file_t *file);
2.6 file_t *client_open(const char *name, flags_t flags);
2.7 -file_t *client_open_device(const char *cap, const char *name, flags_t flags);
2.8 +file_t *client_open_using(const char *name, flags_t flags, const char *cap);
2.9 long client_pipe(file_t **reader, file_t **writer);
2.10 +long client_pipe_using(file_t **reader, file_t **writer, const char *cap);
2.11
2.12 /* File and region operations. */
2.13
3.1 --- a/libfsclient/lib/src/client.cc Sun Jul 11 23:55:34 2021 +0200
3.2 +++ b/libfsclient/lib/src/client.cc Mon Jul 12 00:27:07 2021 +0200
3.3 @@ -160,12 +160,12 @@
3.4
3.5 file_t *client_open(const char *name, flags_t flags)
3.6 {
3.7 - return client_open_device("server", name, flags);
3.8 + return client_open_using(name, flags, "server");
3.9 }
3.10
3.11 /* Open a filesystem object via a named capability. */
3.12
3.13 -file_t *client_open_device(const char *cap, const char *name, flags_t flags)
3.14 +file_t *client_open_using(const char *name, flags_t flags, const char *cap)
3.15 {
3.16 file_t *file = (file_t *) malloc(sizeof(file_t));
3.17
3.18 @@ -189,6 +189,11 @@
3.19
3.20 long client_pipe(file_t **reader, file_t **writer)
3.21 {
3.22 + return client_pipe_using(reader, writer, "pipes");
3.23 +}
3.24 +
3.25 +long client_pipe_using(file_t **reader, file_t **writer, const char *cap)
3.26 +{
3.27 *reader = (file_t *) malloc(sizeof(file_t));
3.28
3.29 if (*reader == NULL)
3.30 @@ -202,7 +207,7 @@
3.31 return -L4_ENOMEM;
3.32 }
3.33
3.34 - l4_cap_idx_t server = l4re_env_get_cap("pipes");
3.35 + l4_cap_idx_t server = l4re_env_get_cap(cap);
3.36
3.37 long err = pipe_open(DEFAULT_PIPE_SIZE, *reader, *writer, server);
3.38