comparison packages/services/objloader/current/src/loader_fs.c @ 2243:6fd46febe457

Warnings, cosmetic fixes from Anthony Tonizzo
author gthomas
date Wed, 28 Jun 2006 12:48:46 +0000
parents 662e1b34b811
children 74dbf4c3f2e1
comparison
equal deleted inserted replaced
2242:ccc0f40c3371 2243:6fd46febe457
40 * ------------------------------------------- 40 * -------------------------------------------
41 * ####ECOSGPLCOPYRIGHTEND#### 41 * ####ECOSGPLCOPYRIGHTEND####
42 * ================================================================= 42 * =================================================================
43 * #####DESCRIPTIONBEGIN#### 43 * #####DESCRIPTIONBEGIN####
44 * 44 *
45 * Author(s): atonizzo@lycos.com 45 * Author(s): Anthony Tonizzo (atonizzo@gmail.com)
46 * Contributors: nickg@ecoscentric.com 46 * Contributors: nickg@ecoscentric.com
47 * Date: 2005-05-13 47 * Date: 2005-05-13
48 * Purpose: 48 * Purpose:
49 * Description: 49 * Description:
50 * 50 *
64 #include <cyg/objloader/elf.h> 64 #include <cyg/objloader/elf.h>
65 #include <cyg/objloader/objelf.h> 65 #include <cyg/objloader/objelf.h>
66 #include <cyg/objloader/loader_fs.h> 66 #include <cyg/objloader/loader_fs.h>
67 67
68 size_t 68 size_t
69 cyg_ldr_fs_read( PELF_OBJECT p, size_t s, size_t n, void *mem ) 69 cyg_ldr_fs_read(PELF_OBJECT p, size_t s, size_t n, void *mem)
70 { 70 {
71 return fread( mem, s, n, (FILE*)p->ptr ); 71 return fread(mem, s, n, (FILE*)p->ptr);
72 } 72 }
73 73
74 cyg_int32 74 cyg_int32
75 cyg_ldr_fs_seek( PELF_OBJECT p, cyg_uint32 offs ) 75 cyg_ldr_fs_seek(PELF_OBJECT p, cyg_uint32 offs)
76 { 76 {
77 return fseek( (FILE*)p->ptr, offs, SEEK_SET ); 77 return fseek((FILE*)p->ptr, offs, SEEK_SET);
78 } 78 }
79 79
80 cyg_int32 80 cyg_int32
81 cyg_ldr_fs_close( PELF_OBJECT p ) 81 cyg_ldr_fs_close(PELF_OBJECT p)
82 { 82 {
83 return fclose( (FILE*)p->ptr ); 83 return fclose((FILE*)p->ptr);
84 } 84 }
85 85
86 PELF_OBJECT 86 PELF_OBJECT
87 cyg_ldr_open_library_fs( cyg_uint8 *ptr ) 87 cyg_ldr_open_library_fs(char *ptr)
88 { 88 {
89 PELF_OBJECT e_obj; 89 FILE *fp = fopen(ptr, "rb");
90 FILE *fp; 90 if (fp == NULL)
91
92 fp = fopen( ptr, "rb" );
93 if ( fp == 0 )
94 { 91 {
95 cyg_ldr_last_error = "FILE NOT FOUND"; 92 cyg_ldr_last_error = "FILE NOT FOUND";
96 return (void*)0; 93 return (void*)0;
97 } 94 }
98 95
99 // Create a file object to keep track of this library. 96 // Create a file object to keep track of this library.
100 e_obj = (PELF_OBJECT)malloc( sizeof( ELF_OBJECT ) ); 97 PELF_OBJECT e_obj = (PELF_OBJECT)malloc(sizeof(ELF_OBJECT));
101 CYG_ASSERT( e_obj != 0, "Cannot malloc() e_obj" ); 98 CYG_ASSERT(e_obj != 0, "Cannot malloc() e_obj");
102 if ( e_obj == 0 ) 99 if (e_obj == 0)
103 { 100 {
104 cyg_ldr_last_error = "ERROR IN MALLOC"; 101 cyg_ldr_last_error = "ERROR IN MALLOC";
105 fclose( fp ); 102 fclose(fp);
106 return (void*)0; 103 return (void*)0;
107 } 104 }
108 memset( e_obj, 0, sizeof( ELF_OBJECT ) ); 105 memset(e_obj, 0, sizeof(ELF_OBJECT));
109 e_obj->ptr = (CYG_ADDRWORD)fp; 106 e_obj->ptr = (CYG_ADDRWORD)fp;
110 e_obj->mode = CYG_LDR_MODE_FILESYSTEM; 107 e_obj->mode = CYG_LDR_MODE_FILESYSTEM;
111 108
112 // Handlers for the file system open. 109 // Handlers for the file system open.
113 e_obj->read = cyg_ldr_fs_read; 110 e_obj->read = cyg_ldr_fs_read;
115 e_obj->close = cyg_ldr_fs_close; 112 e_obj->close = cyg_ldr_fs_close;
116 return e_obj; 113 return e_obj;
117 } 114 }
118 115
119 void 116 void
120 cyg_ldr_close_library_fs( PELF_OBJECT p ) 117 cyg_ldr_close_library_fs(PELF_OBJECT p)
121 { 118 {
122 } 119 }
123 120