void __internal write_smi_data(u8 *buffer, size_t size) { char fn[bufsize] = {0,}; FILE *fd = 0; fnprintf("\n"); strcat(fn, sysfs_basedir); strcat(fn, smi_data_fn); fnprintf("open data file: '%s'\n", fn); fd = fopen(fn, "w+b"); if (!fd) goto out; size_t recs = fwrite(buffer, 1, size, fd); UNREFERENCED_PARAMETER(recs); fnprintf("wrote %zd recs\nclose()\n", recs); fclose(fd); fnprintf("fflush()\n"); fflush(NULL); out: fnprintf("return\n"); return; }
// returns physaddr u32 __internal set_phys_buf_size(u32 newsize) { char fn[bufsize] = {0,}; FILE *fd = 0; char linebuf[bufsize] = {0,}; u32 phys_buf_addr=0; fnprintf("\n"); strcat(fn, sysfs_basedir); strcat(fn, smi_data_buf_size_fn); fd = fopen(fn, "w+b"); if (!fd) goto out; snprintf(linebuf, bufsize, "%d", newsize); size_t recs = fwrite(linebuf, strlen(linebuf)+1, 1, fd); if (recs != 1) goto out; fclose(fd); fflush(NULL); phys_buf_addr = get_phys_buf_addr(); goto out; out: return phys_buf_addr; }
u32 __internal get_phys_buf_addr() { char fn[bufsize] = {0,}; FILE *fd = 0; u32 physaddr = 0; char linebuf[bufsize] = {0,}; fnprintf("\n"); strcat(fn, sysfs_basedir); strcat(fn, smi_data_buf_phys_addr_fn); fd = fopen(fn, "rb"); if (!fd) goto out; fseek(fd, 0L, 0); size_t numBytes = fread(linebuf, 1, bufsize, fd); if (!numBytes) goto out_close; physaddr = strtoll(linebuf, NULL, 16); out_close: fclose(fd); fflush(NULL); out: return physaddr; }
FILE *open_request_file() { char fn[bufsize] = {0,}; FILE *fd = 0; int ret; strcat(fn, sysfs_basedir); strcat(fn, smi_request_fn); fnprintf("open request file: '%s'\n", fn); fd = fopen(fn, "wb"); if(fd) ret = fwrite("0", 1, 1, fd); fnprintf("got fd for request file: %p\n", fd); UNREFERENCED_PARAMETER(ret); return fd; }
int xmlNanoFTPGetConnection() { char buf[200]; int adp[4] = {1,4,2,0}; int portp[2] = {20,4}; #ifdef HAVE_FNPRINTF int fnp[2] = {10,1}; #endif int len; #ifdef HAVE_FNPRINTF len = fnprintf(buf, sizeof(buf), "PORT %d,%d,%d,%d,%d,%d\r\n", adp[0] & 0xff, adp[1] & 0xff, fnp[0] & 0xff, adp[3] & 0xff, fnp[1] & 0xff, portp[1] & 0xff); #else #ifndef HAVE_SNPRINTF len = sprintf2(buf, "PORT %d,%d,%d,%d,%d,%d\r\n", #else /* HAVE_SNPRINTF */ len = snprintf2(buf, sizeof(buf), "PORT %d,%d,%d,%d,%d,%d\r\n", #endif /* HAVE_SNPRINTF */ adp[0] & 0xff, adp[1] & 0xff, adp[2] & 0xff, adp[3] & 0xff, portp[0] & 0xff, portp[1] & 0xff); #endif return len; }
void __internal trigger_smi(FILE *fd) { fnprintf("\n"); if (!fd) goto out; size_t recs = fwrite("1", 1, 2, fd); UNREFERENCED_PARAMETER(recs); fflush(NULL); out: return; }
void __internal get_smi_results(u8 *buffer, size_t size) { char fn[bufsize] = {0,}; FILE *fd = 0; fnprintf("\n"); strcat(fn, sysfs_basedir); strcat(fn, smi_data_fn); fd = fopen(fn, "rb"); if (!fd) goto out; size_t recs = fread(buffer, size, 1, fd); UNREFERENCED_PARAMETER(recs); fclose(fd); out: return; }