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

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

51自学网 2021-06-03 08:57:18
  C++
这篇教程C++ transport_disconnect函数代码示例写得很实用,希望能帮到您。

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

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

示例1: add_to_alternates_file

static const struct ref *clone_local(const char *src_repo,				     const char *dest_repo){	const struct ref *ret;	struct strbuf src = STRBUF_INIT;	struct strbuf dest = STRBUF_INIT;	struct remote *remote;	struct transport *transport;	if (option_shared)		add_to_alternates_file(src_repo);	else {		strbuf_addf(&src, "%s/objects", src_repo);		strbuf_addf(&dest, "%s/objects", dest_repo);		copy_or_link_directory(&src, &dest);		strbuf_release(&src);		strbuf_release(&dest);	}	remote = remote_get(src_repo);	transport = transport_get(remote, src_repo);	ret = transport_get_remote_refs(transport);	transport_disconnect(transport);	return ret;}
开发者ID:astubbs,项目名称:git,代码行数:25,


示例2: add_refs_from_alternate

static int add_refs_from_alternate(struct alternate_object_database *e, void *unused){	char *other;	size_t len;	struct remote *remote;	struct transport *transport;	const struct ref *extra;	e->name[-1] = '/0';	other = xstrdup(make_absolute_path(e->base));	e->name[-1] = '/';	len = strlen(other);	while (other[len-1] == '/')		other[--len] = '/0';	if (len < 8 || memcmp(other + len - 8, "/objects", 8))		return 0;	/* Is this a git repository with refs? */	memcpy(other + len - 8, "/refs", 6);	if (!is_directory(other))		return 0;	other[len - 8] = '/0';	remote = remote_get(other);	transport = transport_get(remote, other);	for (extra = transport_get_remote_refs(transport);	     extra;	     extra = extra->next) {		add_extra_ref(".have", extra->old_sha1, 0);	}	transport_disconnect(transport);	free(other);	return 0;}
开发者ID:AndyA,项目名称:git-andya,代码行数:33,


示例3: freerdp_disconnect

void freerdp_disconnect(freerdp* instance){	rdpRdp* rdp;	rdp = (rdpRdp*) instance->rdp;	transport_disconnect(rdp->transport);}
开发者ID:kidfolk,项目名称:FreeRDP,代码行数:7,


示例4: rdp_client_reconnect

BOOL rdp_client_reconnect(rdpRdp* rdp){	UINT32 i;	transport_disconnect(rdp->transport);	mcs_free(rdp->mcs);	nego_free(rdp->nego);	license_free(rdp->license);	transport_free(rdp->transport);	/* Reset virtual channel status */	for (i = 0; i < rdp->mcs->channelCount; i++)	{		rdp->mcs->channels[i].joined = FALSE;	}	rdp->transport = transport_new(rdp->settings);	rdp->license = license_new(rdp);	rdp->nego = nego_new(rdp->transport);	rdp->mcs = mcs_new(rdp->transport);	rdp->transport->layer = TRANSPORT_LAYER_TCP;	return rdp_client_connect(rdp);}
开发者ID:AhmadKabakibi,项目名称:FreeRDP,代码行数:26,


示例5: refs_from_alternate_cb

static int refs_from_alternate_cb(struct alternate_object_database *e,				  void *data){	char *other;	size_t len;	struct remote *remote;	struct transport *transport;	const struct ref *extra;	struct alternate_refs_data *cb = data;	e->name[-1] = '/0';	other = xstrdup(real_path(e->base));	e->name[-1] = '/';	len = strlen(other);	while (other[len-1] == '/')		other[--len] = '/0';	if (len < 8 || memcmp(other + len - 8, "/objects", 8))		return 0;	/* Is this a git repository with refs? */	memcpy(other + len - 8, "/refs", 6);	if (!is_directory(other))		return 0;	other[len - 8] = '/0';	remote = remote_get(other);	transport = transport_get(remote, other);	for (extra = transport_get_remote_refs(transport);	     extra;	     extra = extra->next)		cb->fn(extra, cb->data);	transport_disconnect(transport);	free(other);	return 0;}
开发者ID:ruoso,项目名称:git,代码行数:34,


示例6: strbuf_addf

static const struct ref *clone_local(const char *src_repo,				     const char *dest_repo){	const struct ref *ret;	struct remote *remote;	struct transport *transport;	if (option_shared) {		struct strbuf alt = STRBUF_INIT;		strbuf_addf(&alt, "%s/objects", src_repo);		add_to_alternates_file(alt.buf);		strbuf_release(&alt);	} else {		struct strbuf src = STRBUF_INIT;		struct strbuf dest = STRBUF_INIT;		strbuf_addf(&src, "%s/objects", src_repo);		strbuf_addf(&dest, "%s/objects", dest_repo);		copy_or_link_directory(&src, &dest, src_repo, src.len);		strbuf_release(&src);		strbuf_release(&dest);	}	remote = remote_get(src_repo);	transport = transport_get(remote, src_repo);	ret = transport_get_remote_refs(transport);	transport_disconnect(transport);	if (0 <= option_verbosity)		printf(_("done./n"));	return ret;}
开发者ID:AsherBond,项目名称:MondocosmOS-Dependencies,代码行数:30,


示例7: add_one_reference

static int add_one_reference(struct string_list_item *item, void *cb_data){	char *ref_git;	struct strbuf alternate = STRBUF_INIT;	struct remote *remote;	struct transport *transport;	const struct ref *extra;	/* Beware: real_path() and mkpath() return static buffer */	ref_git = xstrdup(real_path(item->string));	if (is_directory(mkpath("%s/.git/objects", ref_git))) {		char *ref_git_git = xstrdup(mkpath("%s/.git", ref_git));		free(ref_git);		ref_git = ref_git_git;	} else if (!is_directory(mkpath("%s/objects", ref_git)))		die(_("reference repository '%s' is not a local directory."),		    item->string);	strbuf_addf(&alternate, "%s/objects", ref_git);	add_to_alternates_file(alternate.buf);	strbuf_release(&alternate);	remote = remote_get(ref_git);	transport = transport_get(remote, ref_git);	for (extra = transport_get_remote_refs(transport); extra;	     extra = extra->next)		add_extra_ref(extra->name, extra->old_sha1, 0);	transport_disconnect(transport);	free(ref_git);	return 0;}
开发者ID:AsherBond,项目名称:MondocosmOS-Dependencies,代码行数:32,


示例8: setup_reference

static void setup_reference(const char *repo){	const char *ref_git;	char *ref_git_copy;	struct remote *remote;	struct transport *transport;	const struct ref *extra;	ref_git = make_absolute_path(option_reference);	if (is_directory(mkpath("%s/.git/objects", ref_git)))		ref_git = mkpath("%s/.git", ref_git);	else if (!is_directory(mkpath("%s/objects", ref_git)))		die("reference repository '%s' is not a local directory.",		    option_reference);	ref_git_copy = xstrdup(ref_git);	add_to_alternates_file(ref_git_copy);	remote = remote_get(ref_git_copy);	transport = transport_get(remote, ref_git_copy);	for (extra = transport_get_remote_refs(transport); extra;	     extra = extra->next)		add_extra_ref(extra->name, extra->old_sha1, 0);	transport_disconnect(transport);	free(ref_git_copy);}
开发者ID:astubbs,项目名称:git,代码行数:31,


示例9: push_with_options

static int push_with_options(struct transport *transport, int flags){	int err;	int nonfastforward;	transport_set_verbosity(transport, verbosity, progress);	if (receivepack)		transport_set_option(transport,				     TRANS_OPT_RECEIVEPACK, receivepack);	if (thin)		transport_set_option(transport, TRANS_OPT_THIN, "yes");	if (verbosity > 0)		fprintf(stderr, _("Pushing to %s/n"), transport->url);	err = transport_push(transport, refspec_nr, refspec, flags,			     &nonfastforward);	if (err != 0)		error(_("failed to push some refs to '%s'"), transport->url);	err |= transport_disconnect(transport);	if (!err)		return 0;	if (nonfastforward && advice_push_nonfastforward) {		fprintf(stderr, _("To prevent you from losing history, non-fast-forward updates were rejected/n"				"Merge the remote changes (e.g. 'git pull') before pushing again.  See the/n"				"'Note about fast-forwards' section of 'git push --help' for details./n"));	}	return 1;}
开发者ID:julesbowden,项目名称:git,代码行数:33,


示例10: nego_tcp_disconnect

int nego_tcp_disconnect(rdpNego* nego){    if (nego->tcp_connected)        transport_disconnect(nego->transport);    nego->tcp_connected = 0;    return 1;}
开发者ID:ydal,项目名称:FreeRDP,代码行数:8,


示例11: freerdp_disconnect

boolean freerdp_disconnect(freerdp* instance){	rdpRdp* rdp;	rdp = instance->context->rdp;	transport_disconnect(rdp->transport);	return true;}
开发者ID:EdWatts,项目名称:FreeRDP,代码行数:9,


示例12: freerdp_disconnect

BOOL freerdp_disconnect(freerdp* instance){	rdpRdp* rdp;	rdp = instance->context->rdp;	transport_disconnect(rdp->transport);	return TRUE;}
开发者ID:absmall,项目名称:FreeRDP,代码行数:9,


示例13: nego_transport_disconnect

BOOL nego_transport_disconnect(rdpNego* nego){	if (nego->TcpConnected)		transport_disconnect(nego->transport);	nego->TcpConnected = FALSE;	nego->SecurityConnected = FALSE;	return TRUE;}
开发者ID:FreeRDP,项目名称:FreeRDP,代码行数:9,


示例14: nego_transport_disconnect

int nego_transport_disconnect(rdpNego* nego){	if (nego->tcp_connected)		transport_disconnect(nego->transport);	nego->tcp_connected = FALSE;	nego->security_connected = FALSE;	return 1;}
开发者ID:effort,项目名称:FreeRDP,代码行数:10,


示例15: run_remote_archiver

static int run_remote_archiver(int argc, const char **argv,			       const char *remote, const char *exec,			       const char *name_hint){	char buf[LARGE_PACKET_MAX];	int fd[2], i, len, rv;	struct transport *transport;	struct remote *_remote;	_remote = remote_get(remote);	if (!_remote->url[0])		die(_("git archive: Remote with no URL"));	transport = transport_get(_remote, _remote->url[0]);	transport_connect(transport, "git-upload-archive", exec, fd);	/*	 * Inject a fake --format field at the beginning of the	 * arguments, with the format inferred from our output	 * filename. This way explicit --format options can override	 * it.	 */	if (name_hint) {		const char *format = archive_format_from_filename(name_hint);		if (format)			packet_write(fd[1], "argument --format=%s/n", format);	}	for (i = 1; i < argc; i++)		packet_write(fd[1], "argument %s/n", argv[i]);	packet_flush(fd[1]);	len = packet_read_line(fd[0], buf, sizeof(buf));	if (!len)		die(_("git archive: expected ACK/NAK, got EOF"));	if (buf[len-1] == '/n')		buf[--len] = 0;	if (strcmp(buf, "ACK")) {		if (len > 5 && !prefixcmp(buf, "NACK "))			die(_("git archive: NACK %s"), buf + 5);		die(_("git archive: protocol error"));	}	len = packet_read_line(fd[0], buf, sizeof(buf));	if (len)		die(_("git archive: expected a flush"));	/* Now, start reading from fd[0] and spit it out to stdout */	rv = recv_sideband("archive", fd[0], 1);	rv |= transport_disconnect(transport);	return !!rv;}
开发者ID:AsherBond,项目名称:MondocosmOS-Dependencies,代码行数:51,


示例16: push_with_options

static int push_with_options(struct transport *transport, struct refspec *rs,			     int flags){	int err;	unsigned int reject_reasons;	transport_set_verbosity(transport, verbosity, progress);	transport->family = family;	if (receivepack)		transport_set_option(transport,				     TRANS_OPT_RECEIVEPACK, receivepack);	transport_set_option(transport, TRANS_OPT_THIN, thin ? "yes" : NULL);	if (!is_empty_cas(&cas)) {		if (!transport->smart_options)			die("underlying transport does not support --%s option",			    CAS_OPT_NAME);		transport->smart_options->cas = &cas;	}	if (verbosity > 0)		fprintf(stderr, _("Pushing to %s/n"), transport->url);	err = transport_push(the_repository, transport,			     rs, flags, &reject_reasons);	if (err != 0) {		fprintf(stderr, "%s", push_get_color(PUSH_COLOR_ERROR));		error(_("failed to push some refs to '%s'"), transport->url);		fprintf(stderr, "%s", push_get_color(PUSH_COLOR_RESET));	}	err |= transport_disconnect(transport);	if (!err)		return 0;	if (reject_reasons & REJECT_NON_FF_HEAD) {		advise_pull_before_push();	} else if (reject_reasons & REJECT_NON_FF_OTHER) {		advise_checkout_pull_push();	} else if (reject_reasons & REJECT_ALREADY_EXISTS) {		advise_ref_already_exists();	} else if (reject_reasons & REJECT_FETCH_FIRST) {		advise_ref_fetch_first();	} else if (reject_reasons & REJECT_NEEDS_FORCE) {		advise_ref_needs_force();	}	return 1;}
开发者ID:dscho,项目名称:git,代码行数:49,


示例17: fetch_one

static int fetch_one(struct remote *remote, int argc, const char **argv){	int i;	static const char **refs = NULL;	int ref_nr = 0;	int exit_code;	if (!remote)		die("Where do you want to fetch from today?");	transport = transport_get(remote, NULL);	transport_set_verbosity(transport, verbosity, progress);	if (upload_pack)		set_option(TRANS_OPT_UPLOADPACK, upload_pack);	if (keep)		set_option(TRANS_OPT_KEEP, "yes");	if (depth)		set_option(TRANS_OPT_DEPTH, depth);	if (argc > 0) {		int j = 0;		refs = xcalloc(argc + 1, sizeof(const char *));		for (i = 0; i < argc; i++) {			if (!strcmp(argv[i], "tag")) {				char *ref;				i++;				if (i >= argc)					die("You need to specify a tag name.");				ref = xmalloc(strlen(argv[i]) * 2 + 22);				strcpy(ref, "refs/tags/");				strcat(ref, argv[i]);				strcat(ref, ":refs/tags/");				strcat(ref, argv[i]);				refs[j++] = ref;			} else				refs[j++] = argv[i];		}		refs[j] = NULL;		ref_nr = j;	}	sigchain_push_common(unlock_pack_on_signal);	atexit(unlock_pack);	exit_code = do_fetch(transport,			parse_fetch_refspec(ref_nr, refs), ref_nr);	transport_disconnect(transport);	transport = NULL;	return exit_code;}
开发者ID:davvid,项目名称:git,代码行数:49,


示例18: do_push

static int do_push(const char *repo, int flags){	int i, errs;	struct remote *remote = remote_get(repo);	if (!remote)		die("bad repository '%s'", repo);	if (remote->mirror)		flags |= (TRANSPORT_PUSH_MIRROR|TRANSPORT_PUSH_FORCE);	if ((flags & (TRANSPORT_PUSH_ALL|TRANSPORT_PUSH_MIRROR)) && refspec)		return -1;	if ((flags & (TRANSPORT_PUSH_ALL|TRANSPORT_PUSH_MIRROR)) ==				(TRANSPORT_PUSH_ALL|TRANSPORT_PUSH_MIRROR)) {		return error("--all and --mirror are incompatible");	}	if (!refspec		&& !(flags & TRANSPORT_PUSH_ALL)		&& remote->push_refspec_nr) {		refspec = remote->push_refspec;		refspec_nr = remote->push_refspec_nr;	}	errs = 0;	for (i = 0; i < remote->url_nr; i++) {		struct transport *transport =			transport_get(remote, remote->url[i]);		int err;		if (receivepack)			transport_set_option(transport,					     TRANS_OPT_RECEIVEPACK, receivepack);		if (thin)			transport_set_option(transport, TRANS_OPT_THIN, "yes");		if (verbose)			fprintf(stderr, "Pushing to %s/n", remote->url[i]);		err = transport_push(transport, refspec_nr, refspec, flags);		err |= transport_disconnect(transport);		if (!err)			continue;		error("failed to push some refs to '%s'", remote->url[i]);		errs++;	}	return !!errs;}
开发者ID:Jatinpurohit,项目名称:git,代码行数:49,


示例19: cape_exit

void cape_exit(void){	struct assembly *assembly;	qb_map_iter_t *iter;	qb_enter();	iter = qb_map_iter_create(assembly_map);	while ((qb_map_iter_next(iter, (void **)&assembly)) != NULL) {		transport_disconnect(assembly);	}	qb_map_iter_free(iter);	qb_leave();}
开发者ID:sdake,项目名称:pacemaker-cloud,代码行数:15,


示例20: node_recover_restart

static voidnode_recover_restart(void * inst){	struct assembly *a = (struct assembly *)inst;	qb_enter();	transport_disconnect(a);	node_op_history_clear(a);	instance_create(a);	qb_leave();}
开发者ID:sdake,项目名称:pacemaker-cloud,代码行数:15,


示例21: transport_free

void transport_free(rdpTransport* transport){	if (!transport)		return;	transport_disconnect(transport);	if (transport->ReceiveBuffer)		Stream_Release(transport->ReceiveBuffer);	StreamPool_Free(transport->ReceivePool);	CloseHandle(transport->connectedEvent);	DeleteCriticalSection(&(transport->ReadLock));	DeleteCriticalSection(&(transport->WriteLock));	free(transport);}
开发者ID:bceverly,项目名称:FreeRDP,代码行数:17,


示例22: lshd_line_handler

static voidlshd_line_handler(struct transport_connection *connection,		  uint32_t length, const uint8_t *line){  verbose("Client version string: %ps/n", length, line);  /* Line must start with "SSH-2.0-" (we may need to allow "SSH-1.99"     as well). */  if (length < 8 || 0 != memcmp(line, "SSH-2.0-", 4))    {      transport_disconnect(connection, 0, "Bad version string.");      return;    }  connection->kex.version[0] = ssh_format("%ls", length, line);  connection->line_handler = NULL;}
开发者ID:jeremyfrench,项目名称:lsh,代码行数:17,


示例23: freerdp_disconnect

BOOL freerdp_disconnect(freerdp* instance){	rdpRdp* rdp;	rdp = instance->context->rdp;	transport_disconnect(rdp->transport);	IFCALL(instance->PostDisconnect, instance);	if (instance->update->pcap_rfx)	{		instance->update->dump_rfx = FALSE;		pcap_close(instance->update->pcap_rfx);		instance->update->pcap_rfx = NULL;	}	return TRUE;}
开发者ID:AhmadKabakibi,项目名称:FreeRDP,代码行数:18,


示例24: push_with_options

static int push_with_options(struct transport *transport, int flags){	int err;	unsigned int reject_reasons;	transport_set_verbosity(transport, verbosity, progress);	if (receivepack)		transport_set_option(transport,				     TRANS_OPT_RECEIVEPACK, receivepack);	if (thin)		transport_set_option(transport, TRANS_OPT_THIN, "yes");	if (verbosity > 0)		fprintf(stderr, _("Pushing to %s/n"), transport->url);	err = transport_push(transport, refspec_nr, refspec, flags,			     &reject_reasons);	if (err != 0)		error(_("failed to push some refs to '%s'"), transport->url);	err |= transport_disconnect(transport);	if (!err)		return 0;	if (reject_reasons & REJECT_NON_FF_HEAD) {		advise_pull_before_push();	} else if (reject_reasons & REJECT_NON_FF_OTHER) {		if (default_matching_used)			advise_use_upstream();		else			advise_checkout_pull_push();	} else if (reject_reasons & REJECT_ALREADY_EXISTS) {		advise_ref_already_exists();	} else if (reject_reasons & REJECT_FETCH_FIRST) {		advise_ref_fetch_first();	} else if (reject_reasons & REJECT_NEEDS_FORCE) {		advise_ref_needs_force();	}	return 1;}
开发者ID:ANKIT-KS,项目名称:git,代码行数:41,


示例25: push_with_options

static int push_with_options(struct transport *transport, int flags){	int err;	int nonfastforward;	transport_set_verbosity(transport, verbosity, progress);	if (receivepack)		transport_set_option(transport,				     TRANS_OPT_RECEIVEPACK, receivepack);	if (thin)		transport_set_option(transport, TRANS_OPT_THIN, "yes");	if (verbosity > 0)		fprintf(stderr, _("Pushing to %s/n"), transport->url);	err = transport_push(transport, refspec_nr, refspec, flags,			     &nonfastforward);	if (err != 0)		error(_("failed to push some refs to '%s'"), transport->url);	err |= transport_disconnect(transport);	if (!err)		return 0;	switch (nonfastforward) {	default:		break;	case NON_FF_HEAD:		advise_pull_before_push();		break;	case NON_FF_OTHER:		if (default_matching_used)			advise_use_upstream();		else			advise_checkout_pull_push();		break;	}	return 1;}
开发者ID:Advael,项目名称:git,代码行数:40,


示例26: run_remote_archiver

static int run_remote_archiver(int argc, const char **argv,			       const char *remote, const char *exec){	char buf[LARGE_PACKET_MAX];	int fd[2], i, len, rv;	struct transport *transport;	struct remote *_remote;	_remote = remote_get(remote);	if (!_remote->url[0])		die(_("git archive: Remote with no URL"));	transport = transport_get(_remote, _remote->url[0]);	transport_connect(transport, "git-upload-archive", exec, fd);	for (i = 1; i < argc; i++)		packet_write(fd[1], "argument %s/n", argv[i]);	packet_flush(fd[1]);	len = packet_read_line(fd[0], buf, sizeof(buf));	if (!len)		die(_("git archive: expected ACK/NAK, got EOF"));	if (buf[len-1] == '/n')		buf[--len] = 0;	if (strcmp(buf, "ACK")) {		if (len > 5 && !prefixcmp(buf, "NACK "))			die(_("git archive: NACK %s"), buf + 5);		die(_("git archive: protocol error"));	}	len = packet_read_line(fd[0], buf, sizeof(buf));	if (len)		die(_("git archive: expected a flush"));	/* Now, start reading from fd[0] and spit it out to stdout */	rv = recv_sideband("archive", fd[0], 1);	rv |= transport_disconnect(transport);	return !!rv;}
开发者ID:JamesChan,项目名称:4msysgit-utf8-filepath,代码行数:39,


示例27: add_to_alternates_file

static const struct ref *clone_local(const char *src_repo,				     const char *dest_repo){	const struct ref *ret;	char src[PATH_MAX];	char dest[PATH_MAX];	struct remote *remote;	struct transport *transport;	if (option_shared)		add_to_alternates_file(src_repo);	else {		snprintf(src, PATH_MAX, "%s/objects", src_repo);		snprintf(dest, PATH_MAX, "%s/objects", dest_repo);		copy_or_link_directory(src, dest);	}	remote = remote_get(src_repo);	transport = transport_get(remote, src_repo);	ret = transport_get_remote_refs(transport);	transport_disconnect(transport);	return ret;}
开发者ID:Inkdit,项目名称:git,代码行数:23,


示例28: cmd_ls_remote

int cmd_ls_remote(int argc, const char **argv, const char *prefix){	int i;	const char *dest = NULL;	int nongit;	unsigned flags = 0;	const char *uploadpack = NULL;	const char **pattern = NULL;	struct remote *remote;	struct transport *transport;	const struct ref *ref;	setup_git_directory_gently(&nongit);	for (i = 1; i < argc; i++) {		const char *arg = argv[i];		if (*arg == '-') {			if (!prefixcmp(arg, "--upload-pack=")) {				uploadpack = arg + 14;				continue;			}			if (!prefixcmp(arg, "--exec=")) {				uploadpack = arg + 7;				continue;			}			if (!strcmp("--tags", arg) || !strcmp("-t", arg)) {				flags |= REF_TAGS;				continue;			}			if (!strcmp("--heads", arg) || !strcmp("-h", arg)) {				flags |= REF_HEADS;				continue;			}			if (!strcmp("--refs", arg)) {				flags |= REF_NORMAL;				continue;			}			usage(ls_remote_usage);		}		dest = arg;		i++;		break;	}	if (!dest)		usage(ls_remote_usage);	if (argv[i]) {		int j;		pattern = xcalloc(sizeof(const char *), argc - i + 1);		for (j = i; j < argc; j++) {			int len = strlen(argv[j]);			char *p = xmalloc(len + 3);			sprintf(p, "*/%s", argv[j]);			pattern[j - i] = p;		}	}	remote = nongit ? NULL : remote_get(dest);	if (remote && !remote->url_nr)		die("remote %s has no configured URL", dest);	transport = transport_get(remote, remote ? remote->url[0] : dest);	if (uploadpack != NULL)		transport_set_option(transport, TRANS_OPT_UPLOADPACK, uploadpack);	ref = transport_get_remote_refs(transport);	if (transport_disconnect(transport))		return 1;	for ( ; ref; ref = ref->next) {		if (!check_ref_type(ref, flags))			continue;		if (!tail_match(pattern, ref->name))			continue;		printf("%s	%s/n", sha1_to_hex(ref->old_sha1), ref->name);	}	return 0;}
开发者ID:AndyA,项目名称:git-andya,代码行数:78,


示例29: cmd_clone

//.........这里部分代码省略.........	if (option_depth)		transport_set_option(transport, TRANS_OPT_DEPTH,				     option_depth);	if (option_single_branch)		transport_set_option(transport, TRANS_OPT_FOLLOWTAGS, "1");	transport_set_verbosity(transport, option_verbosity, option_progress);	if (option_upload_pack)		transport_set_option(transport, TRANS_OPT_UPLOADPACK,				     option_upload_pack);	if (transport->smart_options && !option_depth)		transport->smart_options->check_self_contained_and_connected = 1;	refs = transport_get_remote_refs(transport);	if (refs) {		mapped_refs = wanted_peer_refs(refs, refspec);		/*		 * transport_get_remote_refs() may return refs with null sha-1		 * in mapped_refs (see struct transport->get_refs_list		 * comment). In that case we need fetch it early because		 * remote_head code below relies on it.		 *		 * for normal clones, transport_get_remote_refs() should		 * return reliable ref set, we can delay cloning until after		 * remote HEAD check.		 */		for (ref = refs; ref; ref = ref->next)			if (is_null_sha1(ref->old_sha1)) {				complete_refs_before_fetch = 0;				break;			}		if (!is_local && !complete_refs_before_fetch)			transport_fetch_refs(transport, mapped_refs);		remote_head = find_ref_by_name(refs, "HEAD");		remote_head_points_at =			guess_remote_head(remote_head, mapped_refs, 0);		if (option_branch) {			our_head_points_at =				find_remote_branch(mapped_refs, option_branch);			if (!our_head_points_at)				die(_("Remote branch %s not found in upstream %s"),				    option_branch, option_origin);		}		else			our_head_points_at = remote_head_points_at;	}	else {		if (option_branch)			die(_("Remote branch %s not found in upstream %s"),					option_branch, option_origin);		warning(_("You appear to have cloned an empty repository."));		mapped_refs = NULL;		our_head_points_at = NULL;		remote_head_points_at = NULL;		remote_head = NULL;		option_no_checkout = 1;		if (!option_bare)			install_branch_config(0, "master", option_origin,					      "refs/heads/master");	}	write_refspec_config(src_ref_prefix, our_head_points_at,			remote_head_points_at, &branch_top);	if (is_local)		clone_local(path, git_dir);	else if (refs && complete_refs_before_fetch)		transport_fetch_refs(transport, mapped_refs);	update_remote_refs(refs, mapped_refs, remote_head_points_at,			   branch_top.buf, reflog_msg.buf, transport, !is_local);	update_head(our_head_points_at, remote_head, reflog_msg.buf);	transport_unlock_pack(transport);	transport_disconnect(transport);	if (option_dissociate)		dissociate_from_references();	junk_mode = JUNK_LEAVE_REPO;	err = checkout();	strbuf_release(&reflog_msg);	strbuf_release(&branch_top);	strbuf_release(&key);	strbuf_release(&value);	junk_mode = JUNK_LEAVE_ALL;	free(refspec);	return err;}
开发者ID:IAmAnubhavSaini,项目名称:git,代码行数:101,


示例30: freerdp_peer_disconnect

static void freerdp_peer_disconnect(freerdp_peer* client){	rdpTransport* transport = client->context->rdp->transport;	transport_disconnect(transport);}
开发者ID:awakecoding,项目名称:FreeRDP,代码行数:5,



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


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