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

📄 tftpport.c

📁 在ARM7和UC/OSII的平台上实现了GPS自动报站的功能,涉及GPS模块LEA_4S的驱动,位置速寻算法,语音芯片ISD4004的录放音驱动,LED页面管理等等.从启动代码到操作系统的移植以及到业
💻 C
字号:
/* tftpport.c

   Copyright 1998 by InterNiche Technologies Inc. All rights reserved.
   Copyright 1995 by NetPort Software.
   Copyright 1986 by Carnegie Mellon
   Copyright 1984 by the Massachusetts Institute of Technology

   TFTP per-port code

*/

#include "tftpport.h"
#include "tftp.h"

#include "q.h"
#include "netbuf.h"
#include "net.h"
#include "ip.h"

#include "menu.h"

int   tfs_done(int status, struct tfconn *, char * filename);

extern struct menu_op tftpmenu[8];

/* tftp_init() - open UDP port for listen on tftp port, do any prep 
required for client UDP use.

Returns 0 if OK, else negative NP error code.
*/

int
tftp_init()
{
#ifdef TFTP_SERVER
int e;
   e = tfsinit(NULL, tfs_done);
   if(e)
      dprintf("tftp server start err %d\n", e);
#endif   /* TFTP_SERVER */

   if(install_menu(tftpmenu))
      dprintf("tftp client menu failure\n");

   return 0;
}

#ifdef TFTP_SERVER
/* tfs_done() - server's status callback */

int
tfs_done(int status, struct tfconn * cn, char * msg)
{
ip_addr fhost = cn->tf_fhost;
unsigned dir = cn->tf_dir;

   if(status == 0)
   {
      ns_printf(NULL, "tftp server: moved %lu bytes %s ",
         cn->tf_size, dir==PUT?"to":"from");
      ns_printf(NULL, "%u.%u.%u.%u\n", PUSH_IPADDR(fhost) );
   }
   else  /* error of some kind */
   {
      ns_printf(NULL, "tftp server error: status %d, msg: %s, host:",
         status, msg?msg:"None" );
      ns_printf(NULL, "%u.%u.%u.%u\n", PUSH_IPADDR(fhost) );
   }
   return 0;
}

#endif   /* TFTP_SERVER */

⌨️ 快捷键说明

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