?? mdist.h
字號:
/* mdist.h -- core definitions header file * * This file is part of 'netcast' program, released under BSD License. * (c) 2001-2002 Stanis砤w Pa秌o <staszek@nutki.com>. All rights reserved. */#ifndef _MDIST_MDIST_H#define _MDIST_MDIST_H#include <unistd.h>#include <netinet/ip.h>#include <netinet/udp.h>#include "debug.h"#define MTU 1500#define MMSIZE MTU-sizeof(struct iphdr)-sizeof(struct udphdr)#define MMDSIZ ((MMSIZE-sizeof(struct mdmsg))>>2)<<2#define ROUND 1024#define BUFSIZE MMSIZE*ROUND#define BUFPOS(x) MMSIZE*x#define DEF_PORT 9876//! Single message as received from the netstruct mdmsg { uint32_t seq; uint32_t crc; uint16_t siz; uint8_t data[0];};//! TCP messages//! Control messagestruct mdctl { uint32_t blk; //! Block number uint32_t base; //! Base for packet sequence nums uint32_t siz; //! Block size uint32_t pkt; //! Number of packets to-be-transmitted};#define CLIENT_START 0x1#define CLIENT_READY 0x2#define CLIENT_REQ 0x4//! Client replystruct mdreq { uint32_t ack; //! Acknowledge block number uint32_t rqc; //! Requested blocks count};//! Initial datastruct mdinit { struct sockaddr_in group;}; extern struct mdmsg *mdbuf[ROUND];extern struct mdctl mdhead;extern struct mdinit mdini;void md_init();long md_fill(int fd);long md_flush(int fd);struct mdmsg *md_put(struct mdmsg *src);struct mdmsg *md_get(uint32_t seq);#endif
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -