⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 pcmdxfer.c

📁 一个通讯程序源码
💻 C
📖 第 1 页 / 共 2 页
字号:
	strcat(cmdesd->pb,bottom_label);	if(strchr(switches,'N'))		/* force "no curses" */		strcat(cmdesd->pb,"-@ ");	if(strchr(switches,'a'))		strcat(cmdesd->pb,"-a ");	if(strchr(switches,'n'))		strcat(cmdesd->pb,"-n ");	/* overrides -y choice earlier */	if(strchr(switches,'f'))		strcat(cmdesd->pb,"-f ");	if(strchr(switches,'r'))		strcat(cmdesd->pb,"-r ");#if defined(WHT)	/* for testing */	if(strchr(switches,'p'))		strcat(cmdesd->pb,"-, ");#endif	/*	 * update cmdesd esd	 */	cmdesd->cb = strlen(cmdesd->pb);	if(!(pathesd = esdalloc(PATHESD_INITIAL_SIZE)))	{		erc = eNoMemory;		goto FREE_MEM_AND_EXIT;	}	/*	 * get list of pathnames to send	 */	if(erc = gstr(param,pathesd,1))		goto FREE_MEM_AND_EXIT;	/*	 * append filelist to command	 */	if(erc = esdcat(cmdesd,pathesd,1))		goto FREE_MEM_AND_EXIT;	/*	 * perform the operation	 */	erc = _smart_sender_common(cmdesd->pb);FREE_MEM_AND_EXIT:	if(pathesd)		esdfree(pathesd);	if(cmdesd)		esdfree(cmdesd);	return(erc);}	/* end of pcmd_sz *//*+-------------------------------------------------------------------------	pcmd_sk(param)sk [-a] <str>--------------------------------------------------------------------------*/intpcmd_sk(param)ESD *param;{int erc;char switches[8];ESD *pathesd = (ESD *)0;ESD *cmdesd = esdalloc(CMDESD_INITIAL_SIZE);	if(!cmdesd)		return(eNoMemory);	get_switches(param,switches,sizeof(switches));	/*	 * build command at beginning of 'cmdesd' ESD	 */	sprintf(cmdesd->pb,"ckermit -l %d -b %u -p %c%s%s -s ",		shm->Liofd,shm->Lbaud,		(shm->Lparity) ? shm->Lparity : 'n',		(strchr(switches,'a')) ? "" : " -i",		(1 /* overwrite*/ ) ? "" : " -w");	if(strchr(switches,'b'))		strcat(cmdesd->pb,"-a ");	else		strcat(cmdesd->pb,"-b ");	if(strchr(switches,'n'))		strcat(cmdesd->pb,"-n ");	/* overrides -y choice earlier */	if(strchr(switches,'f'))		strcat(cmdesd->pb,"-f ");	/*	 * update cmdesd esd	 */	cmdesd->cb = strlen(cmdesd->pb);	if(!(pathesd = esdalloc(PATHESD_INITIAL_SIZE)))	{		erc = eNoMemory;		goto FREE_MEM_AND_EXIT;	}	/*	 * get list of pathnames to send	 */	if(erc = gstr(param,pathesd,1))		goto FREE_MEM_AND_EXIT;	/*	 * append filelist to command	 */	if(erc = esdcat(cmdesd,pathesd,1))		goto FREE_MEM_AND_EXIT;	/*	 * perform the operation	 */	last_child_wait_status = 0;	if(exec_cmd(cmdesd->pb))		erc = eFATAL_ALREADY;FREE_MEM_AND_EXIT:	if(pathesd)		esdfree(pathesd);	if(cmdesd)		esdfree(cmdesd);	file_xfer_done_bell();	lreset_ksr();	return(_adjust_erc_and_iv0(erc));}	/* end of pcmd_sk *//*+-------------------------------------------------------------------------	pcmd_ss(param)--------------------------------------------------------------------------*/intpcmd_ss(param)ESD *param;{int erc;ESD *pathesd = (ESD *)0;ESD *cmdesd = esdalloc(CMDESD_INITIAL_SIZE);	if(!cmdesd)		return(eNoMemory);	/*	 * build command at beginning of 'cmdesd' ESD	 */	sprintf(cmdesd->pb,"ecusea -. %d -/ %s -s ",shm->Liofd,curr_dir);	/*	 * update cmdesd esd	 */	cmdesd->cb = strlen(cmdesd->pb);	if(!(pathesd = esdalloc(PATHESD_INITIAL_SIZE)))	{		erc = eNoMemory;		goto FREE_MEM_AND_EXIT;	}	/*	 * get list of pathnames to send	 */	if(erc = gstr(param,pathesd,1))		goto FREE_MEM_AND_EXIT;	/*	 * append filelist to command	 */	if(erc = esdcat(cmdesd,pathesd,1))		goto FREE_MEM_AND_EXIT;	/*	 * perform the operation	 */	last_child_wait_status = 0;	if(exec_cmd(cmdesd->pb))		erc = eFATAL_ALREADY;FREE_MEM_AND_EXIT:	if(pathesd)		esdfree(pathesd);	if(cmdesd)		esdfree(cmdesd);	file_xfer_done_bell();	lreset_ksr();	return(_adjust_erc_and_iv0(erc));}	/* end of pcmd_ss *//*+-------------------------------------------------------------------------	pcmd_rx(param)rx [-b] <str>--------------------------------------------------------------------------*/intpcmd_rx(param)ESD *param;{int erc = 0;char cmdstr[CMDSTR_SIZE];char switches[8];ESD *pathesd = esdalloc(PATHESD_INITIAL_SIZE);	if(!pathesd)		return(eNoMemory);	get_switches(param,switches,sizeof(switches));	if(erc = gstr(param,pathesd,1))	{		esdfree(pathesd);		return(erc);	}	if(erc = _make_bottom_label(param,!strchr(switches,'l'),0))		return(erc);	/*	 * build command in 'cmdstr' string	 */	sprintf(cmdstr,"%s/ecurz -X -. %d ",eculibdir,shm->Liofd);	strcat(cmdstr,bottom_label);	if(!strchr(switches,'b'))		strcat(cmdstr,"-b ");	else		strcat(cmdstr,"-a ");	strcat(cmdstr,pathesd->pb);	esdfree(pathesd);	file_xfer_start();	last_child_wait_status = 0;	if(exec_cmd(cmdstr))		erc = eFATAL_ALREADY;	else		erc = _adjust_erc_and_iv0(erc);	file_xfer_done_bell();	lreset_ksr();	return(erc);}	/* end of pcmd_rx *//*+-------------------------------------------------------------------------	pcmd_ry(param)ry--------------------------------------------------------------------------*/intpcmd_ry(param)ESD *param;{int erc = 0;char cmdstr[CMDSTR_SIZE];char switches[8];	get_switches(param,switches,sizeof(switches));	last_child_wait_status = 0;	if(erc = _make_bottom_label(param,!strchr(switches,'l'),0))		return(erc);	/*	 * build command in 'cmdstr' string	 */	sprintf(cmdstr,"%s/ecurz -Y -. %d ",eculibdir,shm->Liofd);	strcat(cmdstr,bottom_label);	file_xfer_start();	if(exec_cmd(cmdstr))		erc = eFATAL_ALREADY;	else		erc = _adjust_erc_and_iv0(erc);	file_xfer_done_bell();	lreset_ksr();	return(erc);}	/* end of pcmd_ry *//*+-------------------------------------------------------------------------	pcmd_rz(param)--------------------------------------------------------------------------*/intpcmd_rz(param)ESD *param;{int erc = 0;char cmdstr[CMDSTR_SIZE];char switches[8];	get_switches(param,switches,sizeof(switches));	last_child_wait_status = 0;	if(erc = _make_bottom_label(param,!strchr(switches,'l'),0))		return(erc);	/*	 * build command in 'cmdstr' string	 */	sprintf(cmdstr,"%s/ecurz -Z -. %d ",eculibdir,shm->Liofd);	strcat(cmdstr,bottom_label);	if(strchr(switches,'N'))		/* force "no curses" */		strcat(cmdstr,"-@ ");#if defined(WHT)	/* for testing */	if(strchr(switches,'c'))		strcat(cmdstr,"-: ");	if(strchr(switches,'p'))		strcat(cmdstr,"-, ");#endif	file_xfer_start();	if(exec_cmd(cmdstr))		erc = eFATAL_ALREADY;	else		erc = _adjust_erc_and_iv0(erc);	file_xfer_done_bell();	lreset_ksr();	return(erc);}	/* end of pcmd_rz *//*+-------------------------------------------------------------------------	pcmd_rk(param)rk [-a]--------------------------------------------------------------------------*/intpcmd_rk(param)ESD *param;{int erc = 0;char cmdstr[CMDSTR_SIZE];char switches[8];	get_switches(param,switches,sizeof(switches));	last_child_wait_status = 0;	sprintf(cmdstr,"ckermit -r -e 512 -l %d -b %d -p %c",		shm->Liofd,shm->Lbaud,(shm->Lparity) ? shm->Lparity : 'n');	if(strchr(switches,'a'))		strcat(cmdstr,"-i ");	file_xfer_start();	if(exec_cmd(cmdstr))		erc = eFATAL_ALREADY;	else		erc = _adjust_erc_and_iv0(erc);	file_xfer_done_bell();	lreset_ksr();	return(erc);}	/* end of pcmd_rk *//*+-------------------------------------------------------------------------	pcmd_rs(param)rs--------------------------------------------------------------------------*//*ARGSUSED*/intpcmd_rs(param)ESD *param;{int erc = 0;char cmdstr[CMDSTR_SIZE];	file_xfer_start();	sprintf(cmdstr,"ecusea -r -. %d -/ %s",shm->Liofd,curr_dir);	if(exec_cmd(cmdstr))		erc = eFATAL_ALREADY;	else		erc = _adjust_erc_and_iv0(erc);	file_xfer_done_bell();	lreset_ksr();	return(erc);}	/* end of pcmd_rs *//* vi: set tabstop=4 shiftwidth=4: *//* end of pcmdxfer.c */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -