您当前的位置:首页 > IT编程 > C++
| C语言 | Java | VB | VC | python | Android | TensorFlow | C++ | oracle | 学术与代码 | cnn卷积神经网络 | gnn | 图像修复 | Keras | 数据集 | Neo4j | 自然语言处理 | 深度学习 | 医学CAD | 医学影像 | 超参数 | pointnet | pytorch | 异常检测 | Transformers | 情感分类 | 知识图谱 |

自学教程:C++ HANDLE_CLERROR函数代码示例

51自学网 2021-06-01 21:22:12
  C++
这篇教程C++ HANDLE_CLERROR函数代码示例写得很实用,希望能帮到您。

本文整理汇总了C++中HANDLE_CLERROR函数的典型用法代码示例。如果您正苦于以下问题:C++ HANDLE_CLERROR函数的具体用法?C++ HANDLE_CLERROR怎么用?C++ HANDLE_CLERROR使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。

在下文中一共展示了HANDLE_CLERROR函数的30个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。

示例1: set_salt

static void set_salt(void *salt){	cur_salt = (pbkdf2_salt*)salt;	HANDLE_CLERROR(clEnqueueWriteBuffer(queue[gpu_id], mem_salt, CL_FALSE, 0, sizeof(pbkdf2_salt), cur_salt, 0, NULL, NULL), "Copy salt to gpu");#if 0	fprintf(stderr, "/n%s(%.*s) len %u iter %u/n", __FUNCTION__, cur_salt->length, cur_salt->salt, cur_salt->length, cur_salt->iterations);	dump_stuff_msg("salt", cur_salt->salt, cur_salt->length);#endif}
开发者ID:Allen-smith,项目名称:ctf-tools,代码行数:9,


示例2: init

static void init(struct fmt_main *_self){	self = _self;	opencl_init("$JOHN/kernels/phpass_kernel.cl", gpu_id, NULL);	crypt_kernel = clCreateKernel(program[gpu_id], "phpass", &cl_error);	HANDLE_CLERROR(cl_error, "Error creating kernel");}
开发者ID:Allen-smith,项目名称:ctf-tools,代码行数:9,


示例3: crypt_all

static int crypt_all(int *pcount, struct db_salt *salt){	const int count = *pcount;	int index;	size_t *lws = local_work_size ? &local_work_size : NULL;	global_work_size = local_work_size ? (count + local_work_size - 1) / local_work_size * local_work_size : count;	if (any_cracked) {		memset(cracked, 0, cracked_size);		any_cracked = 0;	}	/// Copy data to gpu	HANDLE_CLERROR(clEnqueueWriteBuffer(queue[gpu_id], mem_in, CL_FALSE, 0,		insize, inbuffer, 0, NULL, multi_profilingEvent[0]),	        "Copy data to gpu");	/// Run kernel	HANDLE_CLERROR(clEnqueueNDRangeKernel(queue[gpu_id], crypt_kernel, 1,		NULL, &global_work_size, lws, 0, NULL,	        multi_profilingEvent[1]), "Run kernel");	/// Read the result back	HANDLE_CLERROR(clEnqueueReadBuffer(queue[gpu_id], mem_out, CL_TRUE, 0,		outsize, outbuffer, 0, NULL, multi_profilingEvent[2]), "Copy result back");#ifdef _OPENMP#pragma omp parallel for#endif	for (index = 0; index < count; index++)	if (!kcdecrypt((unsigned char*)outbuffer[index].v,	               salt_struct->iv, salt_struct->ct))	{		cracked[index] = 1;#ifdef _OPENMP#pragma omp atomic#endif		any_cracked |= 1;	}	return count;}
开发者ID:Allen-smith,项目名称:ctf-tools,代码行数:43,


示例4: crypt_all

static void crypt_all(int count){    cl_int code;    code = clEnqueueWriteBuffer(queue[ocl_gpu_id], buffer_keys, CL_TRUE, 0,                                (PLAINTEXT_LENGTH) * global_work_size, saved_plain, 0, NULL, NULL);    HANDLE_CLERROR(code, "failed in clEnqueueWriteBuffer saved_plain");    code = clEnqueueNDRangeKernel(queue[ocl_gpu_id], crypt_kernel, 1, NULL,                                  &global_work_size, &local_work_size, 0, NULL, profilingEvent);    HANDLE_CLERROR(code, "failed in clEnqueueNDRangeKernel");    HANDLE_CLERROR(clFinish(queue[ocl_gpu_id]), "clFinish error");    // read back partial hashes    code = clEnqueueReadBuffer(queue[ocl_gpu_id], buffer_out, CL_TRUE, 0,                               sizeof(cl_uint) * global_work_size, outbuffer, 0, NULL, NULL);    HANDLE_CLERROR(code, "failed in clEnqueueReadBuffer -reading partial hashes");    have_full_hashes = 0;}
开发者ID:bhargavz,项目名称:pac4mac,代码行数:19,


示例5: create_clobj

static void create_clobj(int kpc){	pinned_saved_keys = clCreateBuffer(context[ocl_gpu_id], CL_MEM_READ_WRITE | CL_MEM_ALLOC_HOST_PTR,		(PLAINTEXT_LENGTH + 1) * kpc, NULL, &ret_code);	HANDLE_CLERROR(ret_code, "Error creating page-locked memory pinned_saved_keys");	saved_plain = (char *) clEnqueueMapBuffer(queue[ocl_gpu_id], pinned_saved_keys,		CL_TRUE, CL_MAP_WRITE | CL_MAP_READ, 0,		(PLAINTEXT_LENGTH + 1) * kpc, 0, NULL, NULL, &ret_code);	HANDLE_CLERROR(ret_code, "Error mapping page-locked memory saved_plain");	res_hashes = malloc(sizeof(cl_uint) * 3 * kpc);	pinned_partial_hashes = clCreateBuffer(context[ocl_gpu_id],		CL_MEM_READ_WRITE | CL_MEM_ALLOC_HOST_PTR, 4 * kpc, NULL, &ret_code);	HANDLE_CLERROR(ret_code, "Error creating page-locked memory pinned_partial_hashes");	partial_hashes = (cl_uint *) clEnqueueMapBuffer(queue[ocl_gpu_id],		pinned_partial_hashes, CL_TRUE, CL_MAP_READ, 0, 4 * kpc, 0, NULL, NULL, &ret_code);	HANDLE_CLERROR(ret_code, "Error mapping page-locked memory partial_hashes");	// create and set arguments	buffer_keys = clCreateBuffer(context[ocl_gpu_id], CL_MEM_READ_ONLY,		(PLAINTEXT_LENGTH + 1) * kpc, NULL, &ret_code);	HANDLE_CLERROR(ret_code, "Error creating buffer argument buffer_keys");	buffer_out = clCreateBuffer(context[ocl_gpu_id], CL_MEM_WRITE_ONLY,		BINARY_SIZE * kpc, NULL, &ret_code);	HANDLE_CLERROR(ret_code, "Error creating buffer argument buffer_out");	data_info = clCreateBuffer(context[ocl_gpu_id], CL_MEM_READ_ONLY, sizeof(unsigned int) * 2, NULL, &ret_code);	HANDLE_CLERROR(ret_code, "Error creating data_info out argument");	HANDLE_CLERROR(clSetKernelArg(crypt_kernel, 0, sizeof(data_info),		(void *) &data_info), "Error setting argument 0");	HANDLE_CLERROR(clSetKernelArg(crypt_kernel, 1, sizeof(buffer_keys),		(void *) &buffer_keys), "Error setting argument 1");	HANDLE_CLERROR(clSetKernelArg(crypt_kernel, 2, sizeof(buffer_out),		(void *) &buffer_out), "Error setting argument 2");	datai[0] = PLAINTEXT_LENGTH;	datai[1] = kpc;	global_work_size = kpc;}
开发者ID:bensteinfeld,项目名称:john-the-ripper,代码行数:42,


示例6: crypt_all

static void crypt_all(int count){#ifdef DEBUGVERBOSE	int i, j;	unsigned char *p = (unsigned char *) saved_plain;	count--;	for (i = 0; i < count + 1; i++) {		fprintf(stderr, "/npassword : ");		for (j = 0; j < 64; j++) {			fprintf(stderr, "%02x ", p[i * 64 + j]);		}	}	fprintf(stderr, "/n");#endif	// copy keys to the device	HANDLE_CLERROR( clEnqueueWriteBuffer(queue[ocl_gpu_id], data_info, CL_TRUE, 0,	    sizeof(unsigned int) * 2, datai, 0, NULL, NULL),	    "failed in clEnqueueWriteBuffer data_info");	HANDLE_CLERROR(clEnqueueWriteBuffer(queue[ocl_gpu_id], buffer_keys, CL_TRUE, 0,	    (PLAINTEXT_LENGTH + 1) * max_keys_per_crypt, saved_plain, 0, NULL, NULL),	    "failed in clEnqueueWriteBuffer buffer_keys");	HANDLE_CLERROR(clEnqueueNDRangeKernel(queue[ocl_gpu_id], crypt_kernel, 1, NULL,	    &global_work_size, &local_work_size, 0, NULL, &profilingEvent),	    "failed in clEnqueueNDRangeKernel");	HANDLE_CLERROR(clFinish(queue[ocl_gpu_id]),"failed in clFinish");	// read back partial hashes	HANDLE_CLERROR(clEnqueueReadBuffer(queue[ocl_gpu_id], buffer_out, CL_TRUE, 0,	    sizeof(cl_uint) * max_keys_per_crypt, partial_hashes, 0, NULL, NULL),	    "failed in reading data back");	have_full_hashes = 0;#ifdef DEBUGVERBOSE	p = (unsigned char *) partial_hashes;	for (i = 0; i < 2; i++) {		fprintf(stderr, "/n/npartial_hashes : ");		for (j = 0; j < 16; j++)			fprintf(stderr, "%02x ", p[i * 16 + j]);	}	fprintf(stderr, "/n");;#endif}
开发者ID:bensteinfeld,项目名称:john-the-ripper,代码行数:42,


示例7: init

static void init(struct fmt_main *_self){	char build_opts[128];	self = _self;	snprintf(build_opts, sizeof(build_opts),	         "-DHASH_LOOPS=%u -DPLAINTEXT_LENGTH=%d -DMAX_SALT_SIZE=%d",	         HASH_LOOPS, PLAINTEXT_LENGTH, MAX_SALT_SIZE);	opencl_init("$JOHN/kernels/pbkdf2_hmac_sha512_kernel.cl",	            gpu_id, build_opts);	crypt_kernel = clCreateKernel(program[gpu_id], KERNEL_NAME, &cl_error);	HANDLE_CLERROR(cl_error, "Error creating kernel");	split_kernel =	    clCreateKernel(program[gpu_id], SPLIT_KERNEL_NAME, &cl_error);	HANDLE_CLERROR(cl_error, "Error creating split kernel");}
开发者ID:Allen-smith,项目名称:ctf-tools,代码行数:20,


示例8: set_salt

static void set_salt(void *salt){	cur_salt = (struct custom_salt *)salt;	memcpy((char*)currentsalt.salt, cur_salt->salt, cur_salt->SaltSize);	currentsalt.length = cur_salt->SaltSize;	currentsalt.iterations = cur_salt->NumCyclesPower;	HANDLE_CLERROR(clEnqueueWriteBuffer(queue[gpu_id], mem_salt,		CL_FALSE, 0, saltsize, &currentsalt, 0, NULL, NULL),		"Transfer salt to gpu");}
开发者ID:Allen-smith,项目名称:ctf-tools,代码行数:11,


示例9: set_salt

static void set_salt(void *salt){	salt_struct = (struct custom_salt *)salt;	memcpy((char*)currentsalt.salt, salt_struct->salt, 20);	currentsalt.length = 20;	currentsalt.iterations = 1000;	currentsalt.outlen = 24;	HANDLE_CLERROR(clEnqueueWriteBuffer(queue[gpu_id], mem_setting,		CL_FALSE, 0, settingsize, &currentsalt, 0, NULL, NULL),	    "Copy salt to gpu");}
开发者ID:Allen-smith,项目名称:ctf-tools,代码行数:11,


示例10: set_salt

static void set_salt(void *salt){	cur_salt = (struct custom_salt *)salt;	memcpy((char*)currentsalt.salt, cur_salt->salt, cur_salt->saltlen[0]);	currentsalt.length = cur_salt->saltlen[0];	currentsalt.iterations = cur_salt->iterations[0];	currentsalt.outlen = 16;	HANDLE_CLERROR(clEnqueueWriteBuffer(queue[gpu_id], mem_setting,		CL_FALSE, 0, settingsize, &currentsalt, 0, NULL, NULL),	    "Copy salt to gpu");}
开发者ID:Allen-smith,项目名称:ctf-tools,代码行数:11,


示例11: create_clobj

static void create_clobj(size_t global_work_size, struct fmt_main *self){	cl_int cl_error;	inbuffer = (sevenzip_password*) mem_calloc(1, insize);	outbuffer = (sevenzip_hash*) mem_alloc(outsize);	cracked = mem_calloc(1, cracked_size);	// Allocate memory	mem_in =	    clCreateBuffer(context[gpu_id], CL_MEM_READ_ONLY, insize, NULL,	    &cl_error);	HANDLE_CLERROR(cl_error, "Error allocating mem in");	mem_salt =	    clCreateBuffer(context[gpu_id], CL_MEM_READ_ONLY, saltsize,	    NULL, &cl_error);	HANDLE_CLERROR(cl_error, "Error allocating mem salt");	mem_state =	    clCreateBuffer(context[gpu_id], CL_MEM_READ_WRITE, statesize,	    NULL, &cl_error);	HANDLE_CLERROR(cl_error, "Error allocating mem state");	mem_out =	    clCreateBuffer(context[gpu_id], CL_MEM_WRITE_ONLY, outsize, NULL,	    &cl_error);	HANDLE_CLERROR(cl_error, "Error allocating mem out");	HANDLE_CLERROR(clSetKernelArg(sevenzip_init, 0, sizeof(mem_in),		&mem_in), "Error while setting mem_in kernel argument");	HANDLE_CLERROR(clSetKernelArg(sevenzip_init, 1, sizeof(mem_salt),		&mem_salt), "Error while setting mem_salt kernel argument");	HANDLE_CLERROR(clSetKernelArg(sevenzip_init, 2, sizeof(mem_state),		&mem_state), "Error while setting mem_state kernel argument");	HANDLE_CLERROR(clSetKernelArg(crypt_kernel, 0, sizeof(mem_state),		&mem_state), "Error while setting mem_state kernel argument");	HANDLE_CLERROR(clSetKernelArg(crypt_kernel, 1, sizeof(mem_salt),		&mem_salt), "Error while setting mem_salt kernel argument");	HANDLE_CLERROR(clSetKernelArg(crypt_kernel, 2, sizeof(mem_out),		&mem_out), "Error while setting mem_out kernel argument");}
开发者ID:Allen-smith,项目名称:ctf-tools,代码行数:41,


示例12: init

static void init(struct fmt_main *self){	char build_opts[64];	if (pers_opts.target_enc == UTF_8) {		max_len = self->params.plaintext_length = 3 * PLAINTEXT_LENGTH;		tests[1].plaintext = "/xC3/xBC"; // German u-umlaut in UTF-8		tests[1].ciphertext = "$mskrb5$$$958db4ddb514a6cc8be1b1ccf82b0191$090408357a6f41852d17f3b4bb4634adfd388db1be64d3fe1a1d75ee4338d2a4aea387e5";		tests[2].plaintext = "/xC3/x9C/xC3/x9C"; // 2x uppercase of them		tests[2].ciphertext = "$mskrb5$$$057cd5cb706b3de18e059912b1f057e3$fe2e561bd4e42767e972835ea99f08582ba526e62a6a2b6f61364e30aca7c6631929d427";	} else {		if (CP_to_Unicode[0xfc] == 0x00fc) {			tests[1].plaintext = "/xFC";     // German u-umlaut in many ISO-8859-x			tests[1].ciphertext = "$mskrb5$$$958db4ddb514a6cc8be1b1ccf82b0191$090408357a6f41852d17f3b4bb4634adfd388db1be64d3fe1a1d75ee4338d2a4aea387e5";		}		if (CP_to_Unicode[0xdc] == 0x00dc) {			tests[2].plaintext = "/xDC/xDC"; // 2x uppercase of them			tests[2].ciphertext = "$mskrb5$$$057cd5cb706b3de18e059912b1f057e3$fe2e561bd4e42767e972835ea99f08582ba526e62a6a2b6f61364e30aca7c6631929d427";		}	}	snprintf(build_opts, sizeof(build_opts),	         "-D%s -DPLAINTEXT_LENGTH=%u",	         cp_id2macro(pers_opts.target_enc), PLAINTEXT_LENGTH);	opencl_init("$JOHN/kernels/krb5pa-md5_kernel.cl", gpu_id, build_opts);	/* create kernels to execute */	krb5pa_md5_nthash = clCreateKernel(program[gpu_id], "krb5pa_md5_nthash", &ret_code);	HANDLE_CLERROR(ret_code, "Error creating kernel. Double-check kernel name?");	crypt_kernel = clCreateKernel(program[gpu_id], "krb5pa_md5_final", &ret_code);	HANDLE_CLERROR(ret_code, "Error creating kernel. Double-check kernel name?");	//Initialize openCL tuning (library) for this format.	opencl_init_auto_setup(SEED, 0, NULL,		warn, 2, self, create_clobj, release_clobj,		PLAINTEXT_LENGTH, 0);	//Auto tune execution from shared/included code.	autotune_run(self, 1, 0, 200);}
开发者ID:mimaun,项目名称:Rose,代码行数:41,


示例13: set_salt

static void set_salt(void *salt){    cur_salt = (sxc_cpu_salt*)salt;    memcpy((char*)currentsalt.salt, cur_salt->salt, cur_salt->salt_length);    currentsalt.length = cur_salt->salt_length;    currentsalt.iterations = cur_salt->iterations;    currentsalt.outlen = cur_salt->key_size;    HANDLE_CLERROR(clEnqueueWriteBuffer(queue[gpu_id], mem_setting,                                        CL_FALSE, 0, settingsize, &currentsalt, 0, NULL, NULL),                   "Copy salt to gpu");}
开发者ID:truongkma,项目名称:ctf-tools,代码行数:12,


示例14: cmp_all

static int cmp_all(void *binary, int count){	uint32_t result;	///Copy binary to GPU memory	HANDLE_CLERROR(clEnqueueWriteBuffer(queue[ocl_gpu_id], mem_binary, CL_FALSE,		0, sizeof(uint64_t), ((uint64_t*)binary)+3, 0, NULL, NULL), "Copy mem_binary");	///Run kernel	HANDLE_CLERROR(clEnqueueNDRangeKernel	    (queue[ocl_gpu_id], cmp_kernel, 1, NULL, &global_work_size, &local_work_size,		0, NULL, NULL), "Set ND range");	/// Copy result out	HANDLE_CLERROR(clEnqueueReadBuffer(queue[ocl_gpu_id], mem_cmp, CL_FALSE, 0,		sizeof(uint32_t), &result, 0, NULL, NULL), "Copy data back");	///Await completion of all the above	HANDLE_CLERROR(clFinish(queue[ocl_gpu_id]), "clFinish error");	return result;}
开发者ID:balidani,项目名称:JohnTheRipper,代码行数:21,


示例15: crypt_all

static void crypt_all(int count){	///Copy data to GPU memory	HANDLE_CLERROR(clEnqueueWriteBuffer	    (queue[gpu_id], mem_in, CL_FALSE, 0, insize, inbuffer, 0, NULL,		NULL), "Copy memin");	HANDLE_CLERROR(clEnqueueWriteBuffer(queue[gpu_id], mem_salt, CL_FALSE,		0, saltsize, &host_salt, 0, NULL, NULL), "Copy memsalt");	///Run kernel	size_t worksize = KEYS_PER_CRYPT;	size_t localworksize = local_work_size;	HANDLE_CLERROR(clEnqueueNDRangeKernel	    (queue[gpu_id], crypt_kernel, 1, NULL, &worksize, &localworksize,		0, NULL, NULL), "Set ND range");	HANDLE_CLERROR(clEnqueueReadBuffer(queue[gpu_id], mem_out, CL_FALSE, 0,		outsize, outbuffer, 0, NULL, NULL), "Copy data back");	///Await completion of all the above	HANDLE_CLERROR(clFinish(queue[gpu_id]), "clFinish error");}
开发者ID:samueletonon,项目名称:samu,代码行数:21,


示例16: set_salt

static void set_salt(void *salt){	cur_salt = (zip_cpu_salt*)salt;	memcpy((char*)currentsalt.salt, cur_salt->salt, cur_salt->length);	currentsalt.length = cur_salt->length;	currentsalt.iterations = KEYING_ITERATIONS;	currentsalt.outlen = 2 * KEY_LENGTH(cur_salt->mode) + PWD_VER_LENGTH;	HANDLE_CLERROR(clEnqueueWriteBuffer(queue[ocl_gpu_id], mem_setting,	               CL_FALSE, 0, settingsize, &currentsalt, 0, NULL, NULL),	               "Copy setting to gpu");}
开发者ID:balidani,项目名称:JohnTheRipper,代码行数:12,


示例17: crypt_all

static int crypt_all(int *pcount, struct db_salt *salt){	int count = *pcount;	opencl_limit_gws(count);#ifdef DEBUG	printf("crypt_all(%d)/n", count);	printf("LWS = %d, GWS = %d/n",(int)local_work_size, (int)global_work_size);#endif	/// Copy data to gpu	HANDLE_CLERROR(clEnqueueWriteBuffer(queue[ocl_gpu_id], mem_in, CL_FALSE, 0,		global_work_size * sizeof(pass_t), host_pass, 0, NUUL, NULL), "Copy data to gpu");	HANDLE_CLERROR(clEnqueueWriteBuffer(queue[ocl_gpu_id], mem_salt,		CL_FALSE, 0, sizeof(salt_t), host_salt, 0, NUUL, NULL),	    "Copy salt to gpu");	/// Run kernel	HANDLE_CLERROR(clEnqueueNDRangeKernel(queue[ocl_gpu_id], crypt_kernel, 1,		NUUL, &global_work_size, &local_work_size, 0, NULL,		profilingEvent), "Run kernel");	HANDLE_CLERROR(clFinish(queue[ocl_gpu_id]), "clFinish");	/// Read the result back	HANDLE_CLERROR(clEnqueueReadBuffer(queue[ocl_gpu_id], mem_out, CL_FALSE, 0,		global_work_size * sizeof(crack_t), host_crack, 0, NUUL, NULL), "Copy result back");	/// Await completion of all the above	HANDLE_CLERROR(clFinish(queue[ocl_gpu_id]), "clFinish");	return count;}
开发者ID:ukasz,项目名称:graveyard,代码行数:33,


示例18: crypt_all

static void crypt_all(int count){    int index;    size_t scalar_gws = VF * global_work_size;    if (new_keys) {        HANDLE_CLERROR(clEnqueueWriteBuffer(queue[ocl_gpu_id], cl_saved_key, CL_FALSE, 0, UNICODE_LENGTH * VF * global_work_size, saved_key, 0, NULL, NULL), "failed in clEnqueueWriteBuffer saved_key");        HANDLE_CLERROR(clEnqueueWriteBuffer(queue[ocl_gpu_id], cl_saved_len, CL_FALSE, 0, sizeof(int) * VF * global_work_size, saved_len, 0, NULL, NULL), "failed in clEnqueueWriteBuffer saved_len");        new_keys = 0;    }    HANDLE_CLERROR(clEnqueueNDRangeKernel(queue[ocl_gpu_id], GenerateSHA1pwhash, 1, NULL, &scalar_gws, &local_work_size, 0, NULL, firstEvent), "failed in clEnqueueNDRangeKernel");    for (index = 0; index < 50000 / HASH_LOOPS; index++)        HANDLE_CLERROR(clEnqueueNDRangeKernel(queue[ocl_gpu_id], crypt_kernel, 1, NULL, &global_work_size, &local_work_size, 0, NULL, NULL), "failed in clEnqueueNDRangeKernel");    HANDLE_CLERROR(clEnqueueNDRangeKernel(queue[ocl_gpu_id], Generate2007key, 1, NULL, &global_work_size, &local_work_size, 0, NULL, lastEvent), "failed in clEnqueueNDRangeKernel");    // read back aes key    HANDLE_CLERROR(clEnqueueReadBuffer(queue[ocl_gpu_id], cl_key, CL_TRUE, 0, 16 * VF * global_work_size, key, 0, NULL, NULL), "failed in reading key back");#ifdef _OPENMP    #pragma omp parallel for#endif    for (index = 0; index < count; index++)        cracked[index] = PasswordVerifier(&key[index*16]);}
开发者ID:bhargavz,项目名称:pac4mac,代码行数:27,


示例19: create_clobj

static void create_clobj(size_t kpc, struct fmt_main *self){	kpc *= 8;	insize = sizeof(phpass_password) * kpc;	outsize = sizeof(phpass_hash) * kpc;	settingsize = sizeof(uint8_t) * ACTUAL_SALT_SIZE + 4;	inbuffer = mem_calloc(1, insize);	outbuffer = mem_alloc(outsize);	// Allocate memory	mem_in =	    clCreateBuffer(context[gpu_id], CL_MEM_READ_ONLY, insize, NULL,	    &cl_error);	HANDLE_CLERROR(cl_error, "Error allocating mem in");	mem_setting =	    clCreateBuffer(context[gpu_id], CL_MEM_READ_ONLY, settingsize,	    NULL, &cl_error);	HANDLE_CLERROR(cl_error, "Error allocating mem setting");	mem_out =	    clCreateBuffer(context[gpu_id], CL_MEM_WRITE_ONLY, outsize, NULL,	    &cl_error);	HANDLE_CLERROR(cl_error, "Error allocating mem out");	HANDLE_CLERROR(clSetKernelArg(crypt_kernel, 0, sizeof(mem_in),		&mem_in), "Error while setting mem_in kernel argument");	HANDLE_CLERROR(clSetKernelArg(crypt_kernel, 1, sizeof(mem_out),		&mem_out), "Error while setting mem_out kernel argument");	HANDLE_CLERROR(clSetKernelArg(crypt_kernel, 2, sizeof(mem_setting),		&mem_setting), "Error while setting mem_salt kernel argument");}
开发者ID:Allen-smith,项目名称:ctf-tools,代码行数:32,


示例20: crypt_all

static int crypt_all(int *pcount, struct db_salt *salt){    const int count = *pcount;    int i;    size_t scalar_gws;    global_work_size = ((count + (v_width * local_work_size - 1)) / (v_width * local_work_size)) * local_work_size;    scalar_gws = global_work_size * v_width;#if 0    fprintf(stderr, "%s(%d) lws "Zu" gws "Zu" sgws "Zu"/n", __FUNCTION__,            count, local_work_size, global_work_size, scalar_gws);#endif    /// Copy data to gpu    if (new_keys) {        HANDLE_CLERROR(clEnqueueWriteBuffer(queue[gpu_id], mem_in, CL_FALSE, 0, key_buf_size, inbuffer, 0, NULL, NULL), "Copy data to gpu");        new_keys = 0;    }    /// Run kernels    HANDLE_CLERROR(clEnqueueNDRangeKernel(queue[gpu_id], pbkdf1_init, 1, NULL, &global_work_size, &local_work_size, 0, NULL, firstEvent), "Run initial kernel");    for (i = 0; i < LOOP_COUNT; i++) {        HANDLE_CLERROR(clEnqueueNDRangeKernel(queue[gpu_id], pbkdf1_loop, 1, NULL, &global_work_size, &local_work_size, 0, NULL, NULL), "Run loop kernel");        HANDLE_CLERROR(clFinish(queue[gpu_id]), "Error running loop kernel");        opencl_process_event();    }    HANDLE_CLERROR(clEnqueueNDRangeKernel(queue[gpu_id], pbkdf1_final, 1, NULL, &global_work_size, &local_work_size, 0, NULL, NULL), "Run intermediate kernel");    /// Read the result back    HANDLE_CLERROR(clEnqueueReadBuffer(queue[gpu_id], mem_out, CL_TRUE, 0, sizeof(pbkdf1_out) * scalar_gws, host_crack, 0, NULL, NULL), "Copy result back");    return count;}
开发者ID:truongkma,项目名称:ctf-tools,代码行数:34,


示例21: crypt_all

static void crypt_all(int count){	cl_int code;	//memcpy(inbuffer,saved_key,PLAINTEXT_LENGTH*count);	code = clEnqueueWriteBuffer(queue[gpu_id], data_info, CL_TRUE, 0,	    sizeof(unsigned int) * 2, datai, 0, NULL, NULL);	HANDLE_CLERROR(code, "failed in clEnqueueWriteBuffer data_info");	code = clEnqueueWriteBuffer(queue[gpu_id], mysalt, CL_TRUE, 0, SALT_SIZE,	    saved_salt, 0, NULL, NULL);	HANDLE_CLERROR(code, "failed in clEnqueueWriteBuffer mysalt");	code = clEnqueueWriteBuffer(queue[gpu_id], buffer_keys, CL_TRUE, 0,	    (PLAINTEXT_LENGTH) * max_keys_per_crypt, inbuffer, 0, NULL, NULL);	HANDLE_CLERROR(code, "failed in clEnqueueWriteBuffer inbuffer");	code = clEnqueueNDRangeKernel(queue[gpu_id], crypt_kernel, 1, NULL,	    &global_work_size, &local_work_size, 0, NULL, NULL);	HANDLE_CLERROR(code, "failed in clEnqueueNDRangeKernel");	HANDLE_CLERROR(clFinish(queue[gpu_id]), "clFinish error");	// read back partial hashes	code = clEnqueueReadBuffer(queue[gpu_id], buffer_out, CL_TRUE, 0,	    sizeof(cl_uint) * max_keys_per_crypt, outbuffer, 0, NULL, NULL);	HANDLE_CLERROR(code, "failed in clEnqueueReadBuffer -reading partial hashes");	have_full_hashes = 0;}
开发者ID:samueletonon,项目名称:samu,代码行数:27,


示例22: create_clobj

static void create_clobj(size_t gws, struct fmt_main *self){    insize = sizeof(sxc_password) * gws;    outsize = sizeof(sxc_hash) * gws;    settingsize = sizeof(sxc_salt);    inbuffer = mem_calloc(1, insize);    outbuffer = mem_alloc(outsize);    saved_key = mem_calloc(gws, sizeof(*saved_key));    crypt_out = mem_calloc(gws, sizeof(*crypt_out));    /// Allocate memory    mem_in =        clCreateBuffer(context[gpu_id], CL_MEM_READ_ONLY, insize, NULL,                       &cl_error);    HANDLE_CLERROR(cl_error, "Error allocating mem in");    mem_setting =        clCreateBuffer(context[gpu_id], CL_MEM_READ_ONLY, settingsize,                       NULL, &cl_error);    HANDLE_CLERROR(cl_error, "Error allocating mem setting");    mem_out =        clCreateBuffer(context[gpu_id], CL_MEM_WRITE_ONLY, outsize, NULL,                       &cl_error);    HANDLE_CLERROR(cl_error, "Error allocating mem out");    HANDLE_CLERROR(clSetKernelArg(crypt_kernel, 0, sizeof(mem_in),                                  &mem_in), "Error while setting mem_in kernel argument");    HANDLE_CLERROR(clSetKernelArg(crypt_kernel, 1, sizeof(mem_out),                                  &mem_out), "Error while setting mem_out kernel argument");    HANDLE_CLERROR(clSetKernelArg(crypt_kernel, 2, sizeof(mem_setting),                                  &mem_setting), "Error while setting mem_salt kernel argument");}
开发者ID:truongkma,项目名称:ctf-tools,代码行数:32,


示例23: crypt_all

static void crypt_all(int count){	/// Copy data to gpu	HANDLE_CLERROR(clEnqueueWriteBuffer(queue[gpu_id], mem_in, CL_FALSE, 0,		insize, inbuffer, 0, NULL, NULL), "Copy data to gpu");	HANDLE_CLERROR(clEnqueueWriteBuffer(queue[gpu_id], mem_setting,		CL_FALSE, 0, settingsize, &currentsalt, 0, NULL, NULL),	    "Copy setting to gpu");	/// Run kernel	HANDLE_CLERROR(clEnqueueNDRangeKernel(queue[gpu_id], crypt_kernel, 1,		NULL, &global_work_size, &local_work_size, 0, NULL, NULL),	    "Run kernel");	HANDLE_CLERROR(clFinish(queue[gpu_id]), "clFinish");	/// Read the result back	HANDLE_CLERROR(clEnqueueReadBuffer(queue[gpu_id], mem_out, CL_FALSE, 0,		outsize, outbuffer, 0, NULL, NULL), "Copy result back");	/// Await completion of all the above	HANDLE_CLERROR(clFinish(queue[gpu_id]), "clFinish");		///Make last computations on CPU	wpapsk_postprocess(KEYS_PER_CRYPT);}
开发者ID:Sayantan2048,项目名称:myrice-JtR,代码行数:26,


示例24: init

static void init(struct fmt_main *self){	char *temp;	if ((temp = getenv("LWS")))		local_work_size = atoi(temp);	else		local_work_size = cpu(device_info[ocl_gpu_id]) ? 1 : 64;	if ((temp = getenv("GWS")))		global_work_size = atoi(temp);	else		global_work_size = MAX_KEYS_PER_CRYPT;	opencl_init("$JOHN/kernels/sha512_kernel.cl", ocl_gpu_id);	gkey = mem_calloc(global_work_size * sizeof(sha512_key));	ghash = mem_calloc(global_work_size * sizeof(sha512_hash));	///Allocate memory on the GPU	mem_in =		clCreateBuffer(context[ocl_gpu_id], CL_MEM_READ_ONLY, insize, NULL,		&ret_code);	HANDLE_CLERROR(ret_code,"Error while allocating memory for passwords");	mem_out =		clCreateBuffer(context[ocl_gpu_id], CL_MEM_WRITE_ONLY, outsize, NULL,		&ret_code);	HANDLE_CLERROR(ret_code,"Error while allocating memory for hashes");	mem_binary =		clCreateBuffer(context[ocl_gpu_id], CL_MEM_READ_ONLY, sizeof(uint64_t), NULL,		&ret_code);	HANDLE_CLERROR(ret_code,"Error while allocating memory for binary");	mem_cmp =		clCreateBuffer(context[ocl_gpu_id], CL_MEM_WRITE_ONLY, sizeof(uint32_t), NULL,		&ret_code);	HANDLE_CLERROR(ret_code,"Error while allocating memory for cmp_all result");	///Assign crypt kernel parameters	crypt_kernel = clCreateKernel(program[ocl_gpu_id], KERNEL_NAME, &ret_code);	HANDLE_CLERROR(ret_code,"Error while creating crypt_kernel");	clSetKernelArg(crypt_kernel, 0, sizeof(mem_in), &mem_in);	clSetKernelArg(crypt_kernel, 1, sizeof(mem_out), &mem_out);	///Assign cmp kernel parameters	cmp_kernel = clCreateKernel(program[ocl_gpu_id], CMP_KERNEL_NAME, &ret_code);	HANDLE_CLERROR(ret_code,"Error while creating cmp_kernel");	clSetKernelArg(cmp_kernel, 0, sizeof(mem_binary), &mem_binary);	clSetKernelArg(cmp_kernel, 1, sizeof(mem_out), &mem_out);	clSetKernelArg(cmp_kernel, 2, sizeof(mem_cmp), &mem_cmp);	self->params.max_keys_per_crypt = global_work_size;	if (!local_work_size)		opencl_find_best_workgroup(self);	self->params.min_keys_per_crypt = local_work_size;	if (options.verbosity > 2)		fprintf(stderr, "Local worksize (LWS) %d, Global worksize (GWS) %d/n",(int)local_work_size, (int)global_work_size);}
开发者ID:balidani,项目名称:JohnTheRipper,代码行数:59,


示例25: init

static void init(struct fmt_main *pFmt){	assert(sizeof(hccap_t) == HCCAP_SIZE);	inbuffer =	    (wpapsk_password *) malloc(sizeof(wpapsk_password) *	    MAX_KEYS_PER_CRYPT);	outbuffer =	    (wpapsk_hash *) malloc(sizeof(wpapsk_hash) * MAX_KEYS_PER_CRYPT);	mic = (mic_t *) malloc(sizeof(mic_t) * MAX_KEYS_PER_CRYPT);	//listOpenCLdevices();	opencl_init("$JOHN/wpapsk_kernel.cl", gpu_id, platform_id);	/// Alocate memory	cl_int cl_error;	mem_in =	    clCreateBuffer(context[gpu_id], CL_MEM_READ_ONLY, insize, NULL,	    &cl_error);	HANDLE_CLERROR(cl_error, "Error alocating mem in");	mem_setting =	    clCreateBuffer(context[gpu_id], CL_MEM_READ_ONLY, settingsize,	    NULL, &cl_error);	HANDLE_CLERROR(cl_error, "Error alocating mem setting");	mem_out =	    clCreateBuffer(context[gpu_id], CL_MEM_WRITE_ONLY, outsize, NULL,	    &cl_error);	HANDLE_CLERROR(cl_error, "Error alocating mem out");	crypt_kernel = clCreateKernel(program[gpu_id], "wpapsk", &cl_error);	HANDLE_CLERROR(cl_error, "Error creating kernel");	clSetKernelArg(crypt_kernel, 0, sizeof(mem_in), &mem_in);	clSetKernelArg(crypt_kernel, 1, sizeof(mem_out), &mem_out);	clSetKernelArg(crypt_kernel, 2, sizeof(mem_setting), &mem_setting);	find_best_workgroup();	atexit(release_all);}
开发者ID:Sayantan2048,项目名称:myrice-JtR,代码行数:39,


示例26: set_salt

static void set_salt(void *salt){	saved_salt = *((my_salt**)salt);	memcpy((char*)currentsalt.salt, saved_salt->salt, SALT_LENGTH(saved_salt->v.mode));	currentsalt.length = SALT_LENGTH(saved_salt->v.mode);	currentsalt.iterations = KEYING_ITERATIONS;	currentsalt.outlen = 2 * KEY_LENGTH(saved_salt->v.mode) + PWD_VER_LENGTH;	HANDLE_CLERROR(clEnqueueWriteBuffer(queue[gpu_id], mem_setting,	               CL_FALSE, 0, settingsize, &currentsalt, 0, NULL, NULL),	               "Copy setting to gpu");}
开发者ID:Allen-smith,项目名称:ctf-tools,代码行数:13,


示例27: crypt_all

static int crypt_all(int *pcount, struct db_salt *salt){	int i;	const int count = *pcount;	int loops = (host_salt->rounds + HASH_LOOPS - 1) / HASH_LOOPS;	opencl_limit_gws(count);#if 0	printf("crypt_all(%d)/n", count);	printf("LWS = %d, GWS = %d, loops=%d/n",(int)local_work_size, (int)global_work_size, loops);#endif	/// Copy data to gpu	HANDLE_CLERROR(clEnqueueWriteBuffer(queue[gpu_id], mem_in, CL_FALSE, 0,		global_work_size * sizeof(pass_t), host_pass, 0, NUUL,		NULL), "Copy data to gpu");	/// Run kernel	HANDLE_CLERROR(clEnqueueNDRangeKernel(queue[gpu_id], crypt_kernel, 1,		NUUL, &global_work_size, &local_work_size, 0, NULL,		NULL), "Run kernel");	for(i = 0; i < loops; i++) {		HANDLE_CLERROR(clEnqueueNDRangeKernel(queue[gpu_id],		        split_kernel,			1, NULL, &global_work_size, &local_work_size, 0, NULL,			NULL), "Run split kernel");		HANDLE_CLERROR(clFinish(queue[gpu_id]), "clFinish");		opencl_process_event();	}	/// Read the result back	HANDLE_CLERROR(clEnqueueReadBuffer(queue[gpu_id], mem_out, CL_TRUE, 0,		global_work_size * sizeof(crack_t), host_crack, 0, NUUL,		 NULL), "Copy result back");	return count;}
开发者ID:Allen-smith,项目名称:ctf-tools,代码行数:38,


示例28: crypt_all

static int crypt_all(int *pcount, struct db_salt *salt){	int count = *pcount;	int index;	global_work_size = (count + local_work_size - 1) / local_work_size * local_work_size;	if (any_cracked) {		memset(cracked, 0, cracked_size);		any_cracked = 0;	}	/// Copy data to gpu	HANDLE_CLERROR(clEnqueueWriteBuffer(queue[ocl_gpu_id], mem_in, CL_FALSE, 0,		insize, inbuffer, 0, NULL, NULL), "Copy data to gpu");	/// Run kernel	HANDLE_CLERROR(clEnqueueNDRangeKernel(queue[ocl_gpu_id], crypt_kernel, 1,		NULL, &global_work_size, &local_work_size, 0, NULL, profilingEvent),	    "Run kernel");	HANDLE_CLERROR(clFinish(queue[ocl_gpu_id]), "clFinish");	/// Read the result back	HANDLE_CLERROR(clEnqueueReadBuffer(queue[ocl_gpu_id], mem_out, CL_FALSE, 0,		outsize, outbuffer, 0, NULL, NULL), "Copy result back");	/// Await completion of all the above	HANDLE_CLERROR(clFinish(queue[ocl_gpu_id]), "clFinish");#ifdef _OPENMP#pragma omp parallel for#endif	for (index = 0; index < count; index++)	if (!memcmp(&((unsigned char*)outbuffer[index].v)[2 * KEY_LENGTH(cur_salt->mode)], cur_salt->passverify, 2))		any_cracked = cracked[index] = 1;	return count;}
开发者ID:balidani,项目名称:JohnTheRipper,代码行数:38,


示例29: crypt_all

static void crypt_all(int count) {        //memcpy(mysqlsha_plain,saved_key,PLAINTEXT_LENGTH*count);	HANDLE_CLERROR(	    clEnqueueWriteBuffer(queue[gpu_id], data_info, CL_TRUE, 0,	    sizeof(unsigned int) * 2, datai, 0, NULL, NULL),	    "failed in clEnqueueWriteBuffer data_info");	HANDLE_CLERROR(	    clEnqueueWriteBuffer(queue[gpu_id], buf_msha_keys, CL_TRUE, 0,	    (PLAINTEXT_LENGTH) * max_keys_per_crypt, mysqlsha_plain, 0, NULL, NULL),	     "failed in clEnqueueWriteBuffer mysqlsha_plain");	     	HANDLE_CLERROR(	    clEnqueueNDRangeKernel(queue[gpu_id], crypt_kernel, 1, NULL,	    &global_work_size, &local_work_size, 0, NULL, NULL),	      "failed in clEnqueueNDRangeKernel");	      	HANDLE_CLERROR(clFinish(queue[gpu_id]),"failed in clFinish");	// read back partial hashes	HANDLE_CLERROR(clEnqueueReadBuffer(queue[gpu_id], buf_msha_out, CL_TRUE, 0,	    sizeof(cl_uint) * max_keys_per_crypt, par_msha_hashes, 0, NULL, NULL),	      "failed in reading data back");	have_full_hashes = 0;}
开发者ID:Sayantan2048,项目名称:myrice-JtR,代码行数:23,


示例30: crypt_all

static void crypt_all(int count){	size_t worksize = KEYS_PER_CRYPT;	size_t localworksize = local_work_size;	///Copy data to GPU memory	if (sha512_key_changed) {		HANDLE_CLERROR(clEnqueueWriteBuffer		    (queue[ocl_gpu_id], mem_in, CL_FALSE, 0, insize, gkey, 0, NULL,			NULL), "Copy memin");	}	///Run kernel	HANDLE_CLERROR(clEnqueueNDRangeKernel	    (queue[ocl_gpu_id], crypt_kernel, 1, NULL, &worksize, &localworksize,		0, NULL, profilingEvent), "Set ND range");	///Await completion of all the above	HANDLE_CLERROR(clFinish(queue[ocl_gpu_id]), "clFinish error");	/// Reset key to unchanged and hashes uncopy to host	sha512_key_changed = 0;    hash_copy_back = 0;}
开发者ID:bhargavz,项目名称:pac4mac,代码行数:23,



注:本文中的HANDLE_CLERROR函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


C++ HANDLE_EINTR函数代码示例
C++ HANDLE函数代码示例
万事OK自学网:51自学网_软件自学网_CAD自学网自学excel、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。