Beispiel #1
0
void logRmdir(const char *relpath) {
    GenericOperation genop = GENERIC_OPERATION__INIT;
    RmdirOperation rmdirop = RMDIR_OPERATION__INIT;

    genop.type = GENERIC_OPERATION__TYPE__RMDIR;
    genop.rmdir_op = &rmdirop;

    logGeneric(relpath, genop);
}
Beispiel #2
0
void logChmod(const char *relpath, mode_t mode) {
    GenericOperation genop = GENERIC_OPERATION__INIT;
    ChmodOperation chmodop = CHMOD_OPERATION__INIT;

    chmodop.mode = (uint32_t) mode;

    genop.type = GENERIC_OPERATION__TYPE__CHMOD;
    genop.chmod_op = &chmodop;

    logGeneric(relpath, genop);
}
Beispiel #3
0
void logTruncate(const char *relpath, off_t newsize) {
    GenericOperation genop = GENERIC_OPERATION__INIT;
    TruncateOperation truncateop = TRUNCATE_OPERATION__INIT;

    truncateop.newsize = (int64_t) newsize;

    genop.type = GENERIC_OPERATION__TYPE__TRUNCATE;
    genop.truncate_op = &truncateop;

    logGeneric(relpath, genop);
}
Beispiel #4
0
void logMkdir(const char *relpath, mode_t mode) {
    GenericOperation genop = GENERIC_OPERATION__INIT;
    MkdirOperation mkdirop = MKDIR_OPERATION__INIT;

    mkdirop.mode = (uint32_t) mode;

    genop.type = GENERIC_OPERATION__TYPE__MKDIR;
    genop.mkdir_op = &mkdirop;

    logGeneric(relpath, genop);
}
Beispiel #5
0
void logCreate(const char *relpath, mode_t mode) {
    GenericOperation genop = GENERIC_OPERATION__INIT;
    CreateOperation creatop = CREATE_OPERATION__INIT;

    creatop.mode = (uint32_t) mode;

    genop.type = GENERIC_OPERATION__TYPE__CREATE;
    genop.create_op = &creatop;

    logGeneric(relpath, genop);
}
Beispiel #6
0
void logChown(const char *relpath, uid_t uid, gid_t gid) {
    GenericOperation genop = GENERIC_OPERATION__INIT;
    ChownOperation chownop = CHOWN_OPERATION__INIT;

    chownop.uid = (uint32_t) uid;
    chownop.gid = (uint32_t) gid;

    genop.type = GENERIC_OPERATION__TYPE__CHOWN;
    genop.chown_op = &chownop;

    logGeneric(relpath, genop);
}
Beispiel #7
0
void logLink(const char *relpath, const char *newpath) {
    GenericOperation genop = GENERIC_OPERATION__INIT;
    LinkOperation linkop = LINK_OPERATION__INIT;

    linkop.oldpath = (char *) relpath;
    linkop.newpath = (char *) newpath;

    genop.type = GENERIC_OPERATION__TYPE__LINK;
    genop.link_op = &linkop;

    logGeneric(relpath, genop);
}
Beispiel #8
0
void logSymlink(const char *relpath, const char *newpath) {
    GenericOperation genop = GENERIC_OPERATION__INIT;
    SymlinkOperation symlinkop = SYMLINK_OPERATION__INIT;

    symlinkop.oldpath = (char *) relpath;
    symlinkop.newpath = (char *) newpath;

    genop.type = GENERIC_OPERATION__TYPE__SYMLINK;
    genop.symlink_op = &symlinkop;

    logGeneric(relpath, genop);
}
Beispiel #9
0
void logMknod(const char *relpath, mode_t mode, dev_t dev) {
    GenericOperation genop = GENERIC_OPERATION__INIT;
    MknodOperation mknodop = MKNOD_OPERATION__INIT;

    mknodop.mode = (uint32_t) mode;
    mknodop.dev = (uint64_t) dev;

    genop.type = GENERIC_OPERATION__TYPE__MKNOD;
    genop.mknod_op = &mknodop;

    logGeneric(relpath, genop);
}
Beispiel #10
0
void logWrite(const char *relpath, size_t size, off_t offset) {
    GenericOperation genop = GENERIC_OPERATION__INIT;
    WriteOperation writeop = WRITE_OPERATION__INIT;

    writeop.offset = (int64_t) offset;
    writeop.size = (int32_t) size;
    // we don't store data (to save space on disk)

    genop.type = GENERIC_OPERATION__TYPE__WRITE;
    genop.write_op = &writeop;

    logGeneric(relpath, genop);
}
Beispiel #11
0
void logUnlink(const char *relpath, nlink_t nlink, ino_t inode) {
    GenericOperation genop = GENERIC_OPERATION__INIT;
    UnlinkOperation unlinkop = UNLINK_OPERATION__INIT;

    unlinkop.inode = (int64_t) inode;
    if (nlink > 1)
        unlinkop.last_link = 0;
    else
        unlinkop.last_link = 1;

    genop.type = GENERIC_OPERATION__TYPE__UNLINK;
    genop.unlink_op = &unlinkop;

    logGeneric(relpath, genop);
}
Beispiel #12
0
void logRename(const char *relpath, const char *newpath, nlink_t nlink,
        ino_t inode) {

    GenericOperation genop = GENERIC_OPERATION__INIT;
    RenameOperation renameop = RENAME_OPERATION__INIT;

    renameop.oldpath = (char *) relpath;
    renameop.newpath = (char *) newpath;
    renameop.inode = (int64_t) inode;
    if (nlink > 1)
        renameop.last_link = 0;
    else
        renameop.last_link = 1;

    genop.type = GENERIC_OPERATION__TYPE__RENAME;
    genop.rename_op = &renameop;

    logGeneric(relpath, genop);
}
Beispiel #13
0
FILE* openConfigFile (FILE *file, const char * filename)
{

	char linebuffer[129]="x"; // read buffer for file-input
	char charbuffer='x';		// read buffer for file-input
	unsigned ownerID=0xFF, start=0xFF, duration=0xFF; // local buffer for reading proccess properties
	char ownerIDStr[21]="", startStr[21]=""; // buffers for reading process type-string
	char durationStr[21]="", processTypeStr [21]=""; 	// buffers for reading process type-string
	ProcessType_t processType;

	// try to open file for read
	file = fopen (filename, "r");
	// test for success and error handling
	if (file == NULL)
		{
		logGeneric("Fehler beim Oeffnen der Datei mit Prozessinformationen.");
		return NULL;
		}
	// skip first line, only a comment
	if (!feof(file))
		fgets(linebuffer, 128, file);
		printf("Read from File: %s ", linebuffer);
	return file;
}