#include "idx.h"
#include "fsc.h"
#include "did.h"
+#include "error.h"
+#include <unistd.h>
+#include <sys/types.h>
+#include <stdio.h>
+#include <string.h>
/* Asigna los punteros a las funciones apropiadas para el Tipo2 */
int emufs_tipo2_inicializar(EMUFS* efs)
/* Obtenemos la posicion del registro en el .dat */
reg_offset = emufs_idx_buscar_registro(efs, id_reg);
if (reg_offset == EMUFS_NOT_FOUND) {
- /* TODO Manejo de errores */
PERR("Registro no encontrado");
*err = EMUFS_NOT_FOUND;
return NULL;
/* Levantamos el registro */
if ((f_data = fopen(name_f, "rb")) == NULL) {
PERR("No se puede abrir archivo");
- *err = 4; /* EMUFS_ERROR_CANT_OPEN_FILE */
- return NULL; /* FIXME ERROR */
+ *err = EMUFS_ERROR_CANT_OPEN_FILE;
+ return NULL;
}
fseek(f_data,reg_offset+sizeof(EMUFS_REG_ID),0);
fread(reg_size,sizeof(EMUFS_REG_SIZE),1,f_data);
FILE *f_data;
char name_f[255];
char *dummyfill;
- char *ptr_cur;
- unsigned long fill_size,byte_count;
+ unsigned long fill_size;
/* Armamos el filename del archivo de datos */
strcpy(name_f,efs->nombre);
fill_size = amount+sizeof(EMUFS_REG_ID)+sizeof(EMUFS_REG_SIZE);
dummyfill = (char*)malloc(fill_size);
memset(dummyfill, 0, fill_size);
- ptr_cur = dummyfill;
- for (byte_count = 0; byte_count < fill_size; ++byte_count) memcpy(ptr_cur+byte_count,0,1);
fseek(f_data,reg_pos,SEEK_SET);
fwrite(dummyfill,fill_size,1,f_data);
fclose(f_data);
EMUFS_FSC reg1,reg2;
unsigned long cant_gaps = 0,mustmove_bytes = 0,source = 0,
destination = 0,datsize = 0,totalfsc = 0;
-
+
strcpy(name_fdat,efs->nombre);
strcpy(name_ffsc,efs->nombre);
strcat(name_fdat,".dat");