/* * Append ildg-data-lfn record to LIME configuration file * * dp (20051216) */ #include #include #include int main(int argc, char* argv[]) { n_uint64_t nbytes, len; LimeWriter *writer; LimeRecordHeader *hdr; char *limefile, *datalfn; FILE *fp; if (argc != 3) { fprintf(stderr, "Usage: addlfn \n"); return 1; } limefile = argv[1]; datalfn = argv[2]; /* Open file and create LIME writer */ fp = fopen(limefile, "a"); if (fp == NULL) { fprintf(stderr, "Unable to open \"%s\"\n", limefile); } writer = limeCreateWriter(fp); if (writer == (LimeWriter *)NULL) { fprintf(stderr, "Unable to initialise LIME\n"); return 1; } /* Generate and write LIME record */ len = strlen(datalfn); hdr = limeCreateHeader(1, 1, "ildg-data-lfn", len); limeWriteRecordHeader(hdr, writer); limeWriteRecordData(datalfn, &nbytes, writer); if (nbytes != len) { fprintf(stderr, "Failed to write %lld bytes\n", len); return 1; } /* Close file and destroy LIME writer */ limeDestroyWriter(writer); fclose(fp); return 0; }