📄 pcmdxfer.c
字号:
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 + -