Merge from Etherboot 5.4
authorMichael Brown <mcb30@etherboot.org>
Thu, 16 Mar 2006 17:31:29 +0000 (17:31 +0000)
committerMichael Brown <mcb30@etherboot.org>
Thu, 16 Mar 2006 17:31:29 +0000 (17:31 +0000)
1  2 
src/include/etherboot.h

diff --combined src/include/etherboot.h
@@@ -1,26 -1,6 +1,26 @@@
  #ifndef ETHERBOOT_H
  #define ETHERBOOT_H
  
 +/*
 + * Standard includes that we always want
 + *
 + */
 +
 +#include "compiler.h"
 +#include "stddef.h"
 +#include "stdint.h"
 +
 +
 +/*
 + * IMPORTANT!!!!!!!!!!!!!!
 + *
 + * Everything below this point is cruft left over from older versions
 + * of Etherboot.  Do not add *anything* below this point.  Things are
 + * gradually being moved to individual header files.
 + *
 + */
 +
 +
  #include <stdarg.h>
  #include "osdep.h"
  
@@@ -130,11 -110,16 +130,11 @@@ enum 
        MAX_ARP
  };
  
 -#define IGMP_SERVER   0
 -#define MAX_IGMP      IGMP_SERVER+1
 -
  #define       RARP_REQUEST    3
  #define       RARP_REPLY      4
  
  #include      "in.h"
  
 -#define MULTICAST_MASK    0xF0000000
 -#define MULTICAST_NETWORK 0xE0000000
  
  /* Helper macros used to identify when DHCP options are valid/invalid in/outside of encapsulation */
  #define NON_ENCAP_OPT in_encapsulated_options == 0 &&
  #include      "udp.h"
  #include      "tcp.h"
  #include      "bootp.h"
 -#include      "tftp.h"
  #include      "igmp.h"
  #include      "nfs.h"
  #include      "console.h"
@@@ -159,7 -145,12 +159,7 @@@ struct arptable_t 
        uint8_t node[6];
  } PACKED;
  
 -struct igmptable_t {
 -      in_addr group;
 -      unsigned long time;
 -} PACKED;
 -
--#define       KERNEL_BUF      (BOOTP_DATA_ADDR->bootp_reply.bp_file)
++#define       KERNEL_BUF      (bootp_data.bootp_reply.bp_file)
  
  #define       FLOPPY_BOOT_LOCATION    0x7c00
  
@@@ -204,13 -195,19 +204,13 @@@ int tcp_reset(struct iphdr *ip)
  typedef int (*reply_t)(int ival, void *ptr, unsigned short ptype, struct iphdr *ip, struct udphdr *udp, struct tcphdr *tcp);
  extern int await_reply P((reply_t reply,      int ival, void *ptr, long timeout));
  extern int decode_rfc1533 P((unsigned char *, unsigned int, unsigned int, int));
 -extern void join_group(int slot, unsigned long group);
 -extern void leave_group(int slot);
  #define RAND_MAX 2147483647L
  extern uint16_t ipchksum P((const void *ip, unsigned long len));
  extern uint16_t add_ipchksums P((unsigned long offset, uint16_t sum, uint16_t new));
  extern int32_t random P((void));
  extern long rfc2131_sleep_interval P((long base, int exp));
 -extern long rfc1112_sleep_interval P((long base, int exp));
  extern void cleanup P((void));
  
 -/* config.c */
 -extern void print_config(void);
 -
  /* osloader.c */
  /* Be careful with sector_t it is an unsigned long long on x86 */
  typedef uint64_t sector_t;
@@@ -274,6 -271,15 +274,6 @@@ extern int elf_start(unsigned long mach
  extern unsigned long currticks P((void));
  extern void exit P((int status));
  
 -/* serial.c */
 -extern int serial_getc P((void));
 -extern void serial_putc P((int));
 -extern int serial_ischar P((void));
 -extern int serial_init P((void));
 -extern void serial_fini P((void));
 -
 -/* floppy.c */
 -extern int bootdisk P((int dev,int part));
  
  /***************************************************************************
  External variables
  extern struct rom_info rom;
  extern char *hostname;
  extern int hostnamelen;
++extern unsigned char *addparam;
++extern int addparamlen;
  extern jmp_buf restart_etherboot;
  extern int url_port;
  extern struct arptable_t arptable[MAX_ARP];
 -extern struct igmptable_t igmptable[MAX_IGMP];
  #ifdef        IMAGE_MENU
  extern int menutmo,menudefault;
  extern unsigned char *defparams;
@@@ -302,6 -309,14 +304,6 @@@ extern int freebsd_howto
  extern char freebsd_kernel_env[FREEBSD_KERNEL_ENV_SIZE];
  #endif
  
 -/* bootmenu.c */
 -
 -/* osloader.c */
 -
 -/* created by linker */
 -extern char _virt_start[], _text[], _etext[], _text16[], _etext16[];
 -extern char _data[], _edata[], _bss[], _ebss[], _end[];
 -
  
  /*
   * Local variables: