]> git.llucax.com Git - z.facultad/75.06/emufs.git/blobdiff - emufs/did.c
no encuentro el error, el archivo idx en vez de achicarse crece.... fijense si lo...
[z.facultad/75.06/emufs.git] / emufs / did.c
index ac09cab3e47931a7455eeaccae7a203f130f8c51..407b123e418e1db47f92a6d080391d3ac2a03ebf 100644 (file)
@@ -20,6 +20,7 @@
  *----------------------------------------------------------------------------
  * Creado:  jue abr  8 18:07:57 ART 2004
  * Autores: Nicolás Dimov <sagardua@uolsinectis.com.ar>
+ *          Leandro Lucarella <llucare@fi.uba.ar>
  *----------------------------------------------------------------------------
  *
  * $Id$
  */
 
 #include "did.h"
+#include <string.h>
+#include <unistd.h>
+
+int emufs_did_crear(EMUFS* efs)
+{
+       return emufs_crear_archivo_auxiliar(efs->nombre, EMUFS_DID_EXT);
+}
 
 int emufs_did_get_last(EMUFS *emu)
 {
@@ -44,7 +52,7 @@ int emufs_did_get_last(EMUFS *emu)
        char name_f_did[255];
        
        strcpy(name_f_did, emu->nombre);
-       strcat(name_f_did, ".did");
+       strcat(name_f_did, EMUFS_DID_EXT);
        
        if ( (f_did = fopen(name_f_did,"r")) == NULL) return -1; /*ERROR*/
        fseek(f_did, 0, SEEK_END);
@@ -68,3 +76,19 @@ int emufs_did_get_last(EMUFS *emu)
        }
        return id;
 }
+
+/*agrego un elemento al archivo */
+int emufs_did_agregar(EMUFS *emu, int ID)
+{
+       FILE *f_did;
+       char name_f_did[255];
+       
+       strcpy(name_f_did, emu->nombre);
+       strcat(name_f_did,  EMUFS_DID_EXT);
+       
+       if ( (f_did = fopen(name_f_did,"a+")) == NULL) return -1;
+       fwrite(&ID, sizeof(int), 1, f_did);
+       fclose(f_did);
+       
+       return 0;
+}