This patch adds some basic file descriptor sanity checks to the file access
routines. Check whether the given file descriptor is in the files array range,
and whether the file entry is valid.
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
We can't truncate device files. Make sure that if we want to
write beyond the device that the bytes that still fit into the
device get written.
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
When a nor0 devices has no partitions assigned, then a call to
open() to create a file will jump with a NULL fct ptr.
Much more cheching code is missing and pointers to function are
jumped without any NULL ptr check. This must be fixed as well later.
Signed-off-by: Carsten Schlote <c.schlote@konzeptpark.de>
this fixes:
fs/fs.c:210:6: warning: symbol 'files' was not declared. Should it be static?
fs/fs.c:212:6: warning: symbol 'get_file' was not declared. Should it be static?
fs/fs.c:227:6: warning: symbol 'put_file' was not declared. Should it be static?
fs/fs.c:248:5: warning: symbol 'dir_is_empty' was not declared. Should it be static?
fs/fs.c:613:41: warning: Using plain integer as NULL pointer
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
- Use device tree structure to implement partitions
- Let devinfo print a nice tree
- Introduce 'fixed' partitions which are not removable
- Fix mount: It was not possible to mount on a relative path.
int open(const char *pathname, int flags);
-> int open(const char *pathname, int flags, ...);
int mkdir(const char *pathname);
-> int mkdir(const char *pathname, mode_t mode);
With this function we can get a pointer to directly memory mapped
devices like nor flash or RAM. Useful for bootm where we save one
memcopy when the image is mappable
- do more POSIX:
- use DIR instead of struct dirent
- use (struct dirent)->d_name instead of (struct dirent)->name
- switch to a new layout for U_BOOT_CMD:
- use C99 initializers to be able to add more fields to the
command struct
- add aliases for commands (needed mainly for help -> ? and test -> [
- This is not done for all commands yet, but the compiler will tell you ;)