/* * Copyright (c) 2005, Swedish Institute of Computer Science * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * 3. Neither the name of the Institute nor the names of its contributors * may be used to endorse or promote products derived from this software * without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE INSTITUTE AND CONTRIBUTORS ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED. IN NO EVENT SHALL THE INSTITUTE OR CONTRIBUTORS BE LIABLE * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * * This file is part of the Contiki operating system. * */ #ifndef CONTIKI_CONF_H_ #define CONTIKI_CONF_H_ #include #ifndef WIN32_LEAN_AND_MEAN #include #endif struct select_callback { int (* set_fd)(fd_set *fdr, fd_set *fdw); void (* handle_fd)(fd_set *fdr, fd_set *fdw); }; int select_set_callback(int fd, const struct select_callback *callback); #define CC_CONF_REGISTER_ARGS 1 #define CC_CONF_FUNCTION_POINTER_ARGS 1 #define CC_CONF_FASTCALL #define CC_CONF_VA_ARGS 1 /*#define CC_CONF_INLINE inline*/ #ifndef EEPROM_CONF_SIZE #define EEPROM_CONF_SIZE 1024 #endif #define CCIF #define CLIF /* These names are deprecated, use C99 names. */ typedef uint8_t u8_t; typedef uint16_t u16_t; typedef uint32_t u32_t; typedef int32_t s32_t; typedef unsigned short uip_stats_t; #define UIP_CONF_UDP 1 #define UIP_CONF_MAX_CONNECTIONS 40 #define UIP_CONF_MAX_LISTENPORTS 40 #define UIP_CONF_BUFFER_SIZE 420 #define UIP_CONF_BYTE_ORDER UIP_LITTLE_ENDIAN #define UIP_CONF_TCP 1 #define UIP_CONF_TCP_SPLIT 0 #define UIP_CONF_LOGGING 0 #define UIP_CONF_UDP_CHECKSUMS 1 #ifndef NETSTACK_CONF_RDC_CHANNEL_CHECK_RATE #define NETSTACK_CONF_RDC_CHANNEL_CHECK_RATE 8 #endif /* NETSTACK_CONF_RDC_CHANNEL_CHECK_RATE */ #if NETSTACK_CONF_WITH_IPV6 #define LINKADDR_CONF_SIZE 8 #ifndef NETSTACK_CONF_MAC #define NETSTACK_CONF_MAC nullmac_driver #endif /* NETSTACK_CONF_MAC */ #ifndef NETSTACK_CONF_RDC #define NETSTACK_CONF_RDC nullrdc_driver #endif /* NETSTACK_CONF_RDC */ #ifndef NETSTACK_CONF_RADIO #define NETSTACK_CONF_RADIO nullradio_driver #endif /* NETSTACK_CONF_RADIO */ #ifndef NETSTACK_CONF_FRAMER #define NETSTACK_CONF_FRAMER framer_802154 #endif /* NETSTACK_CONF_FRAMER */ #define NETSTACK_CONF_NETWORK sicslowpan_driver #define UIP_CONF_ROUTER 1 #define SICSLOWPAN_CONF_COMPRESSION SICSLOWPAN_COMPRESSION_HC06 #ifndef SICSLOWPAN_CONF_FRAG #define SICSLOWPAN_CONF_FRAG 1 #define SICSLOWPAN_CONF_MAXAGE 8 #endif /* SICSLOWPAN_CONF_FRAG */ #define SICSLOWPAN_CONF_MAX_ADDR_CONTEXTS 2 #ifndef SICSLOWPAN_CONF_MAX_MAC_TRANSMISSIONS #define SICSLOWPAN_CONF_MAX_MAC_TRANSMISSIONS 5 #endif /* SICSLOWPAN_CONF_MAX_MAC_TRANSMISSIONS */ #define UIP_CONF_IPV6_CHECKS 1 #define UIP_CONF_IPV6_QUEUE_PKT 1 #define UIP_CONF_IPV6_REASSEMBLY 0 #define UIP_CONF_NETIF_MAX_ADDRESSES 3 #define UIP_CONF_ICMP6 1 /* configure number of neighbors and routes */ #ifndef NBR_TABLE_CONF_MAX_NEIGHBORS #define NBR_TABLE_CONF_MAX_NEIGHBORS 30 #endif /* NBR_TABLE_CONF_MAX_NEIGHBORS */ #ifndef UIP_CONF_MAX_ROUTES #define UIP_CONF_MAX_ROUTES 30 #endif /* UIP_CONF_MAX_ROUTES */ #define UIP_CONF_ND6_SEND_RA 0 #define UIP_CONF_ND6_REACHABLE_TIME 600000 #define UIP_CONF_ND6_RETRANS_TIMER 10000 #define UIP_CONF_IP_FORWARD 0 #ifndef UIP_CONF_BUFFER_SIZE #define UIP_CONF_BUFFER_SIZE 240 #endif #define UIP_CONF_LLH_LEN 0 #define UIP_CONF_LL_802154 1 #define UIP_CONF_ICMP_DEST_UNREACH 1 #define UIP_CONF_DHCP_LIGHT #define UIP_CONF_RECEIVE_WINDOW 48 #define UIP_CONF_TCP_MSS 48 #define UIP_CONF_UDP_CONNS 12 #define UIP_CONF_FWCACHE_SIZE 30 #define UIP_CONF_BROADCAST 1 #define UIP_ARCH_IPCHKSUM 1 #define UIP_CONF_UDP 1 #define UIP_CONF_UDP_CHECKSUMS 1 #define UIP_CONF_PINGADDRCONF 0 #define UIP_CONF_LOGGING 0 #endif /* NETSTACK_CONF_WITH_IPV6 */ #include #define ctk_arch_isprint isprint #include "ctk/ctk-curses.h" #define CH_ULCORNER -10 #define CH_URCORNER -11 #define CH_LLCORNER -12 #define CH_LRCORNER -13 #define CH_ENTER '\n' #define CH_DEL '\b' #define CH_CURS_UP -1 #define CH_CURS_LEFT -2 #define CH_CURS_RIGHT -3 #define CH_CURS_DOWN -4 #define CTK_CONF_MENU_KEY -5 /* F10 */ #define CTK_CONF_WINDOWSWITCH_KEY -6 /* Ctrl-Tab */ #define CTK_CONF_WIDGETUP_KEY -7 /* Shift-Tab */ #define CTK_CONF_WIDGETDOWN_KEY '\t' #define CTK_CONF_WIDGET_FLAGS 0 #define CTK_CONF_SCREENSAVER 1 #ifdef PLATFORM_BUILD #define CTK_CONF_MOUSE_SUPPORT 1 #define CTK_CONF_WINDOWS 1 #define CTK_CONF_WINDOWMOVE 1 #define CTK_CONF_WINDOWCLOSE 1 #define CTK_CONF_ICONS 1 #define CTK_CONF_ICON_BITMAPS 0 #define CTK_CONF_ICON_TEXTMAPS 1 #define CTK_CONF_MENUS 1 #define CTK_CONF_MENUWIDTH 16 #define CTK_CONF_MAXMENUITEMS 10 #else /* PLATFORM_BUILD */ #define CTK_CONF_MOUSE_SUPPORT 1 #define CTK_CONF_WINDOWS 0 #define CTK_CONF_WINDOWMOVE 0 #define CTK_CONF_WINDOWCLOSE 0 #define CTK_CONF_ICONS 0 #define CTK_CONF_MENUS 0 #endif /* PLATFORM_BUILD */ /* CTK-specific color constants */ #define CTK_COLOR_BLACK 0 #define CTK_COLOR_RED 1 #define CTK_COLOR_GREEN 2 #define CTK_COLOR_YELLOW 3 #define CTK_COLOR_BLUE 4 #define CTK_COLOR_MAGENTA 5 #define CTK_COLOR_CYAN 6 #define CTK_COLOR_WHITE 7 /* base background color for widgets */ #define COLOR_BG CTK_COLOR_BLUE #define BORDERCOLOR CTK_COLOR_BLACK #define SCREENCOLOR CTK_COLOR_BLACK #define BACKGROUNDCOLOR CTK_COLOR_BLACK #define WINDOWCOLOR_FOCUS CTK_COLOR_WHITE | COLOR_BG * 0x10 #define WINDOWCOLOR CTK_COLOR_CYAN | COLOR_BG * 0x10 #define DIALOGCOLOR CTK_COLOR_WHITE | COLOR_BG * 0x10 #define WIDGETCOLOR_HLINK CTK_COLOR_CYAN | COLOR_BG * 0x10 #define WIDGETCOLOR_FWIN CTK_COLOR_WHITE | COLOR_BG * 0x10 #define WIDGETCOLOR CTK_COLOR_CYAN | COLOR_BG * 0x10 #define WIDGETCOLOR_DIALOG CTK_COLOR_WHITE | COLOR_BG * 0x10 #define WIDGETCOLOR_FOCUS CTK_COLOR_YELLOW | COLOR_BG * 0x10 #define MENUCOLOR CTK_COLOR_WHITE | COLOR_BG * 0x10 #define OPENMENUCOLOR CTK_COLOR_WHITE | COLOR_BG * 0x10 #define ACTIVEMENUITEMCOLOR CTK_COLOR_YELLOW | COLOR_BG * 0x10 typedef unsigned long clock_time_t; #define CLOCK_CONF_SECOND 1000 #define LOG_CONF_ENABLED 1 #define PROGRAM_HANDLER_CONF_MAX_NUMDSCS 10 #define PROGRAM_HANDLER_CONF_QUIT_MENU 1 #define EMAIL_CONF_WIDTH 78 #define EMAIL_CONF_HEIGHT 17 #ifndef PLATFORM_BUILD #define EMAIL_CONF_ERASE 0 #endif #define IRC_CONF_WIDTH 78 #define IRC_CONF_HEIGHT 17 #define IRC_CONF_SYSTEM_STRING "*nix" #define SHELL_CONF_WITH_PROGRAM_HANDLER 1 #define SHELL_GUI_CONF_XSIZE 78 #define SHELL_GUI_CONF_YSIZE 17 #ifdef PLATFORM_BUILD #define TELNETD_CONF_GUI 1 #endif /* PLATFORM_BUILD */ #ifdef PLATFORM_BUILD #define WWW_CONF_WEBPAGE_WIDTH 78 #define WWW_CONF_WEBPAGE_HEIGHT 17 #endif /* PLATFORM_BUILD */ /* Not part of C99 but actually present */ int strcasecmp(const char*, const char*); /* include the project config */ /* PROJECT_CONF_H might be defined in the project Makefile */ #ifdef PROJECT_CONF_H #include PROJECT_CONF_H #endif /* PROJECT_CONF_H */ #endif /* CONTIKI_CONF_H_ */