]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
core: Fix path for opening ffs endpoint ep0 2885/head
authorGeorgia Brikis <g.brikis@samsung.com>
Tue, 22 Mar 2016 11:08:42 +0000 (12:08 +0100)
committerGeorgia Brikis <g.brikis@samsung.com>
Wed, 23 Mar 2016 16:47:45 +0000 (17:47 +0100)
usbffs_address_create() expects an absolute path to the file that is
supposed to be opened. The path specified only leads to the directory
containing the endpoint ep0 not the endpoint itself. This commit adds
the endpoints name to the path.

src/core/socket.c

index 87586c1c2e3587fd1ca0dc5aa71b647fdd997d68..dd515a17a57b7f475efdbd449a7c60302dc8abf6 100644 (file)
@@ -1341,8 +1341,12 @@ static int socket_open_fds(Socket *s) {
                         break;
 
                 case SOCKET_USB_FUNCTION:
+                {
+                        _cleanup_free_ char *ep = NULL;
 
-                        p->fd = usbffs_address_create(p->path);
+                        ep = path_make_absolute("ep0", p->path);
+
+                        p->fd = usbffs_address_create(ep);
                         if (p->fd < 0) {
                                 r = p->fd;
                                 goto rollback;
@@ -1357,7 +1361,7 @@ static int socket_open_fds(Socket *s) {
                                 goto rollback;
 
                         break;
-
+                }
                 default:
                         assert_not_reached("Unknown port type");
                 }