Made the memory backend, should somewhat work
This commit is contained in:
@@ -18,6 +18,20 @@
|
||||
#define __miniffs_internal
|
||||
#include <miniffs.h>
|
||||
|
||||
/* Exported API */
|
||||
miniffs_t *miniffs_openfs(char *host_file)
|
||||
{
|
||||
return NULL;
|
||||
}
|
||||
|
||||
|
||||
/* Some internal functions */
|
||||
void *miniffs_getfileaddr(miniffs_t *fs, fileentry_t *fent)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
|
||||
size_t host_map_file(char *filename, char **dest)
|
||||
{
|
||||
char *ret_ptr;
|
||||
|
||||
@@ -7,4 +7,40 @@
|
||||
******************************************************************************/
|
||||
|
||||
#define __miniffs_internal
|
||||
#include <miniffs.h>
|
||||
#include <miniffs.h>
|
||||
|
||||
#include <stdlib.h>
|
||||
|
||||
/* Public API */
|
||||
miniffs_t *miniffs_openfs(uintptr_t address)
|
||||
{
|
||||
miniffs_t *fs = (miniffs_t *)calloc(1, sizeof(miniffs_t));
|
||||
if (fs == NULL)
|
||||
{
|
||||
miniffs_seterror(MINIFFS_ALLOCATION_ERROR);
|
||||
goto exit;
|
||||
}
|
||||
|
||||
fs->header = (miniffs_header_t *)address;
|
||||
|
||||
if (!miniffs_isvalidfs(fs))
|
||||
{
|
||||
miniffs_seterror(MINIFFS_INVALID_FS);
|
||||
goto free_and_exit;
|
||||
}
|
||||
|
||||
goto exit;
|
||||
|
||||
free_and_exit:
|
||||
free(fs);
|
||||
fs = NULL;
|
||||
|
||||
exit:
|
||||
return fs;
|
||||
}
|
||||
|
||||
/* Private API */
|
||||
void *miniffs_getfileaddr(miniffs_t *fs, fileentry_t *fent)
|
||||
{
|
||||
return fs->memoryOffset + fent->offset;
|
||||
}
|
||||
Reference in New Issue
Block a user