diff options
author | Andrea Adami <andrea.adami@gmail.com> | 2014-06-29 00:40:15 +0200 |
---|---|---|
committer | David Oberhollenzer <david.oberhollenzer@sigma-star.at> | 2017-03-29 13:35:48 +0200 |
commit | 5c57076891fd773190eb0f1657a09a4b64dfbc47 (patch) | |
tree | c08da6b4e5e2e5aef7b363669a12402d0fbd35a9 | |
parent | dede98ffb706676309488d7cc660f569548d5930 (diff) |
libubi.c: add klibc specific fixes for ioctl
First issue is that ioctl() in klibc doesn't expect a constant as arg3.
Second issue is that arg3 in klibc ioctl() implementation is not optional.
Fixes:
| ubi-utils/libubi.c: In function 'do_attach':
| ubi-utils/libubi.c:698:8: warning: passing argument 3 of 'ioctl' discards
| 'const' qualifier from pointer target type
| ret = ioctl(fd, UBI_IOCATT, r);
| ^
| In file included from ubi-utils/libubi.c:32:0:
| .../lib/klibc/include/sys/ioctl.h:15:14: note: expected 'void *' but argument
| is of type 'const struct ubi_attach_req *'
| __extern int ioctl(int, int, void *);
| ^
| ubi-utils/libubi.c: In function 'ubi_vol_block_create':
| ubi-utils/libubi.c:1118:9: error: too few arguments to function 'ioctl'
| return ioctl(fd, UBI_IOCVOLCRBLK);
| ^
| In file included from ubi-utils/libubi.c:32:0:
| .../lib/klibc/include/sys/ioctl.h:15:14: note: declared here
| __extern int ioctl(int, int, void *);
| ^
| ubi-utils/libubi.c: In function 'ubi_vol_block_remove':
| ubi-utils/libubi.c:1123:9: error: too few arguments to function 'ioctl'
| return ioctl(fd, UBI_IOCVOLRMBLK);
| ^
| In file included from ubi-utils/libubi.c:32:0:
| .../usr/lib/klibc/include/sys/ioctl.h:15:14: note: declared here
| __extern int ioctl(int, int, void *);
| ^
Signed-off-by: Andrea Adami <andrea.adami@gmail.com>
Signed-off-by: David Oberhollenzer <david.oberhollenzer@sigma-star.at>
-rw-r--r-- | lib/libubi.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/lib/libubi.c b/lib/libubi.c index f1cc37a..dcf6337 100644 --- a/lib/libubi.c +++ b/lib/libubi.c @@ -687,7 +687,7 @@ void libubi_close(libubi_t desc) * success and %-1 in case of failure. @r->ubi_num contains newly created UBI * device number. */ -static int do_attach(const char *node, const struct ubi_attach_req *r) +static int do_attach(const char *node, struct ubi_attach_req *r) { int fd, ret; @@ -1086,12 +1086,12 @@ int ubi_rsvol(libubi_t desc, const char *node, int vol_id, long long bytes) int ubi_vol_block_create(int fd) { - return ioctl(fd, UBI_IOCVOLCRBLK); + return ioctl(fd, UBI_IOCVOLCRBLK, NULL); } int ubi_vol_block_remove(int fd) { - return ioctl(fd, UBI_IOCVOLRMBLK); + return ioctl(fd, UBI_IOCVOLRMBLK, NULL); } int ubi_update_start(libubi_t desc, int fd, long long bytes) |