int enableInit(int number, char* direction, int active_low, int active) { int err; err = ioCreate(number); if (err != IO_SUCCESS) { enableSetLastError("Coudln't create the io!"); return err; } err = ioSetDirection(number, direction); if (err != IO_SUCCESS) { enableSetLastError("Coudln't set the direction!"); return err; } err = ioSetActiveLow(number, active_low); if (err != IO_SUCCESS) { enableSetLastError("Couldn't set active_low!"); return err; } err = ioSetValue(number, active); if (err != IO_SUCCESS) { enableSetLastError("Coudln't set the value!"); return err; } return ENABLE_SUCCESS; }
// Close all opened FDs. static void ioReset(struct s_io_state *iostate) { int i; for(i=0; i<IO_FDID_COUNT; i++) { if(!(iostate->fd[i].fd < 0)) { close(iostate->fd[i].fd); } } ioCreate(iostate); }