BlockReadableFix::BlockReadableFix(Block block, Schema *schema) :BlockReadable(block), schema(schema) { cur=(char*)start; end=getend(); }
int choice(int sfd,packet* pk,int* fd) { switch(pk->type) { case 0: get(pk,fd); break; case 1: mycd(pk); break; case 2: myls(pk); break; case 3: myputs(sfd,pk); break; case 4: mygets(pk,fd); break; case 5: myremove(pk); break; case 6: mypwd(pk); break; case 7: getend(fd); break; default: break; } return 0; }
int msr_iso_read(int fd, msr_tracks_t * tracks) { int r; int i; r = msr_cmd (fd, MSR_CMD_READ); if (r == -1) err(1, "Command write failed"); /* Wait for start delimiter. */ if (getstart (fd) == -1) err(1, "get start delimiter failed"); /* Read track data */ for (i = 0; i < MSR_MAX_TRACKS; i++) gettrack_iso (fd, i + 1, tracks->msr_tracks[i].msr_tk_data, &tracks->msr_tracks[i].msr_tk_len); /* Wait for end delimiter. */ if (getend (fd) == -1) { warnx("read failed"); return (-1); } return (0); }
int msr_raw_read(int fd, msr_tracks_t * tracks) { int r; int i; r = msr_cmd (fd, MSR_CMD_RAW_READ); if (r == -1) err(1, "Command write failed"); if (getstart (fd) == -1) err(1, "get start delimiter failed"); for (i = 0; i < MSR_MAX_TRACKS; i++) gettrack_raw (fd, i + 1, tracks->msr_tracks[i].msr_tk_data, &tracks->msr_tracks[i].msr_tk_len); if (getend (fd) == -1) err(1, "read failed"); return (0); }
void BlockReadableFix::reset() { cur=(char*)start; end=getend(); }