/* * Copyright 2011 Carl-Benedikt Krueger, Chair for Operating Systems, * RWTH Aachen University * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. * * This file is part of MetalSVM. */ #ifndef __MMNIF_H__ #define __MMNIF_H__ #include #ifdef CONFIG_LWIP #include #include /* lwip netif */ #define AF_MMNIF_NET 0x1337 #define MMNIF_AUTOACTIVATE_FAST_SOCKETS 0 #if MMNIF_AUTOACTIVATE_FAST_SOCKETS #define accept(a,b,c) mmnif_accept(a,b,c) #define closesocket(s) mmnif_closesocket(s) #define connect(a,b,c) mmnif_connect(a,b,c) #define recv(a,b,c,d) mmnif_recv(a,b,c,d) #define send(a,b,c,d) mmnif_send(a,b,c,d) #define socket(a,b,c) mmnif_socket(a,b,c) #define bind(a,b,c) mmnif_bind(a,b,c) #define listen(a,b) mmnif_listen(a,b) #endif err_t mmnif_init(struct netif*); err_t mmnif_shutdown(void); int mmnif_poll(void *e); int mmnif_worker(void *e); void mmnif_irqhandler(void); void mmnif_print_driver_status(); #endif #endif