You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
60 lines
1.4 KiB
60 lines
1.4 KiB
/* |
|
* Copyright (C) 2015 Inria |
|
* |
|
* This file is subject to the terms and conditions of the GNU Lesser |
|
* General Public License v2.1. See the file LICENSE in the top level |
|
* directory for more details. |
|
*/ |
|
|
|
/** |
|
* @ingroup examples |
|
* @{ |
|
* |
|
* @file |
|
* @brief Basic ccn-lite relay example (produce and consumer via shell) |
|
* |
|
* @author Oliver Hahm <oliver.hahm@inria.fr> |
|
* |
|
* @} |
|
*/ |
|
|
|
#include <stdio.h> |
|
|
|
#include "tlsf-malloc.h" |
|
#include "msg.h" |
|
#include "shell.h" |
|
#include "ccn-lite-riot.h" |
|
#include "net/gnrc/netif.h" |
|
|
|
/* main thread's message queue */ |
|
#define MAIN_QUEUE_SIZE (8) |
|
static msg_t _main_msg_queue[MAIN_QUEUE_SIZE]; |
|
|
|
/* 10kB buffer for the heap should be enough for everyone */ |
|
#define TLSF_BUFFER (10240 / sizeof(uint32_t)) |
|
static uint32_t _tlsf_heap[TLSF_BUFFER]; |
|
|
|
int main(void) |
|
{ |
|
tlsf_create_with_pool(_tlsf_heap, sizeof(_tlsf_heap)); |
|
msg_init_queue(_main_msg_queue, MAIN_QUEUE_SIZE); |
|
|
|
puts("Basic CCN-Lite example"); |
|
|
|
ccnl_core_init(); |
|
|
|
ccnl_start(); |
|
|
|
/* get the default interface */ |
|
kernel_pid_t ifs[GNRC_NETIF_NUMOF]; |
|
|
|
/* set the relay's PID, configure the interface to use CCN nettype */ |
|
if ((gnrc_netif_get(ifs) == 0) || (ccnl_open_netif(ifs[0], GNRC_NETTYPE_CCN) < 0)) { |
|
puts("Error registering at network interface!"); |
|
return -1; |
|
} |
|
|
|
char line_buf[SHELL_DEFAULT_BUFSIZE]; |
|
shell_run(NULL, line_buf, SHELL_DEFAULT_BUFSIZE); |
|
return 0; |
|
}
|
|
|