void *initP(void *hnd, c4snet_data_t *spt, c4snet_data_t *skey, int size) { char *pt = (char *) C4SNetGetData(spt); char *key = (char *) C4SNetGetData(skey); char *K = (char *) SCCMallocPtr(size * 7); char *D = (char *) SCCMallocPtr(size * 8); int i; for (i = 0; i < size; i++) { Permute( &K[i * 7], key, KeyPermuteMap, 7 ); Permute( &D[i * 8], pt, InitialPermuteMap, 8 ); } C4SNetOut(hnd, 1, C4SNetCreate(CTYPE_char, 8 * size, &D[0]), C4SNetCreate(CTYPE_char, 7 * size, &K[0]), 0, size); C4SNetFree(spt); C4SNetFree(skey); SCCFreePtr (K); SCCFreePtr (D); return hnd; }
void *SNetMemAlloc( size_t size) { void *ptr = NULL; if (size && (ptr = SCCMallocPtr(size)) == NULL) { SNetMemFailed(); } return ptr; }
static channels_t *ChannelsCreate(lpel_stream_t *in, lpel_stream_t *out, int id) { //channels_t *ch = (channels_t *) malloc( sizeof(channels_t)); channels_t *ch = (channels_t *) SCCMallocPtr( sizeof(channels_t)); ch->in = in; ch->out = out; ch->id = id; return ch; }
void *finalP(void *hnd, c4snet_data_t *sd, c4snet_data_t *sk, int c, int size) { char *D = (char *) C4SNetGetData(sd); int i; char *E = (char *) SCCMallocPtr(8 * size); for (i = 0; i < size; i++) Permute( &E[i * 8], &D[i * 8], FinalPermuteMap, 8 ); //printbyte(E, size); C4SNetOut(hnd, 1, C4SNetCreate(CTYPE_char, size, &E[0]), size); C4SNetFree(sd); C4SNetFree(sk); //SCCFreePtr(E); return hnd; }
void SNetDistribFetchRef(snet_ref_t *ref) { int node = SNetRefNode(ref); snet_comm_type_t type = snet_ref_fetch; start_write_node(node); cpy_mem_to_mpb(node, &type, sizeof(snet_comm_type_t)); SNetRefSerialise(ref, (void*) node, &PackInt, &PackByte); if (remap) { cpy_mem_to_mpb(node, &node_location, sizeof(node_location)); } else { lut_addr_t addr = SCCPtr2Addr(SCCMallocPtr(SNetRefAllocSize(ref))); cpy_mem_to_mpb(node, &addr, sizeof(lut_addr_t)); } stop_write_node(node); }
static void *Inputter(void *arg) { lpel_stream_desc_t *out = LpelStreamOpen((lpel_stream_t*)arg, 'w'); char *buf; printf("\nInputter START\n\n"); do { //buf = fgets( malloc( 120 * sizeof(char) ), 119, stdin ); buf = fgets( SCCMallocPtr( 120 * sizeof(char) ), 119, stdin ); printf("\nLPEL STREAM WRITE\n\n"); LpelStreamWrite( out, buf); } while ( 0 != strcmp(buf, "T\n") ); LpelStreamClose( out, 0); printf("\nInputter TERM\n\n"); return NULL; }
static void *SCCMalloc(size_t s) { if (!remap) return SNetMemAlloc(s); return SCCMallocPtr(s); }