|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [[UNIKRAFT PATCH] lib/uk9p, 9pfs: Change file mode from uint8_t to uint32_t
At least UK_9P_OEXCL(0x1000) is uint8_t overflowed. To avoid potential
file mode undesigned truncating, change it uint8_t to uint32_t.
Signed-off-by: Jia He <justin.he@xxxxxxx>
---
lib/9pfs/9pfs_vnops.c | 6 +++---
lib/uk9p/9p.c | 4 ++--
lib/uk9p/include/uk/9p.h | 4 ++--
3 files changed, 7 insertions(+), 7 deletions(-)
diff --git a/lib/9pfs/9pfs_vnops.c b/lib/9pfs/9pfs_vnops.c
index c81c82a..5a0700c 100644
--- a/lib/9pfs/9pfs_vnops.c
+++ b/lib/9pfs/9pfs_vnops.c
@@ -47,10 +47,10 @@
#include "9pfs.h"
-static uint8_t uk_9pfs_open_mode_from_posix_flags(unsigned long flags)
+static uint32_t uk_9pfs_open_mode_from_posix_flags(int flags)
{
- uint8_t mode = 0;
- uint8_t flags_rw = flags & (UK_FREAD | UK_FWRITE);
+ uint32_t mode = 0;
+ uint32_t flags_rw = flags & (UK_FREAD | UK_FWRITE);
if (flags_rw == UK_FREAD)
mode = UK_9P_OREAD;
diff --git a/lib/uk9p/9p.c b/lib/uk9p/9p.c
index 9ac7e8a..abddb60 100644
--- a/lib/uk9p/9p.c
+++ b/lib/uk9p/9p.c
@@ -266,7 +266,7 @@ out:
return newfid;
}
-int uk_9p_open(struct uk_9pdev *dev, struct uk_9pfid *fid, uint8_t mode)
+int uk_9p_open(struct uk_9pdev *dev, struct uk_9pfid *fid, uint32_t mode)
{
struct uk_9preq *req;
int rc = 0;
@@ -294,7 +294,7 @@ out:
}
int uk_9p_create(struct uk_9pdev *dev, struct uk_9pfid *fid,
- const char *name, uint32_t perm, uint8_t mode,
+ const char *name, uint32_t perm, uint32_t mode,
const char *extension)
{
struct uk_9preq *req;
diff --git a/lib/uk9p/include/uk/9p.h b/lib/uk9p/include/uk/9p.h
index 59d18d9..e91b147 100644
--- a/lib/uk9p/include/uk/9p.h
+++ b/lib/uk9p/include/uk/9p.h
@@ -129,7 +129,7 @@ struct uk_9pfid *uk_9p_walk(struct uk_9pdev *dev, struct
uk_9pfid *fid,
* - 0: Successful.
* - (< 0): An error occurred.
*/
-int uk_9p_open(struct uk_9pdev *dev, struct uk_9pfid *fid, uint8_t mode);
+int uk_9p_open(struct uk_9pdev *dev, struct uk_9pfid *fid, uint32_t mode);
/**
* Creates a new file with the given name in the directory associated with fid,
@@ -153,7 +153,7 @@ int uk_9p_open(struct uk_9pdev *dev, struct uk_9pfid *fid,
uint8_t mode);
* - (< 0): An error occurred.
*/
int uk_9p_create(struct uk_9pdev *dev, struct uk_9pfid *fid,
- const char *name, uint32_t perm, uint8_t mode,
+ const char *name, uint32_t perm, uint32_t mode,
const char *extension);
/**
--
2.17.1
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |