Home | History | Annotate | Download | only in OobRx
      1 /** @file
      2   Definitions for the OOB Receive application
      3 
      4   Copyright (c) 2011-2012, Intel Corporation
      5   All rights reserved. This program and the accompanying materials
      6   are licensed and made available under the terms and conditions of the BSD License
      7   which accompanies this distribution.  The full text of the license may be found at
      8   http://opensource.org/licenses/bsd-license.php
      9 
     10   THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
     11   WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
     12 
     13 **/
     14 
     15 #ifndef _OOB_RX_H_
     16 #define _OOB_RX_H_
     17 
     18 //------------------------------------------------------------------------------
     19 //  Include Files
     20 //------------------------------------------------------------------------------
     21 
     22 #ifdef  BUILD_FOR_WINDOWS
     23 //
     24 //  Build for Windows environment
     25 //
     26 
     27 #include <winsock2.h>
     28 
     29 #define CLOSE_SOCKET      closesocket
     30 #define SIN_ADDR(port)    port.sin_addr.S_un.S_addr
     31 #define SIN_FAMILY(port)  port.sin_family
     32 #define SIN_LEN(port)     port.sin_family
     33 #define SIN_PORT(port)    port.sin_port
     34 #define GET_ERRNO         WSAGetLastError ( )
     35 
     36 #define RX_TIMEOUT_ERROR  WSAETIMEDOUT
     37 #define ssize_t           int
     38 #define socklen_t         int
     39 
     40 #else   //  BUILD_FOR_WINDOWS
     41 //
     42 //  Build for EFI environment
     43 //
     44 
     45 #include <Uefi.h>
     46 #include <errno.h>
     47 #include <stdlib.h>
     48 #include <string.h>
     49 
     50 #include <netinet/in.h>
     51 
     52 #include <sys/EfiSysCall.h>
     53 #include <sys/endian.h>
     54 #include <sys/socket.h>
     55 #include <sys/time.h>
     56 
     57 #define CLOSE_SOCKET      close
     58 #define SIN_ADDR(port)    port.sin_addr.s_addr
     59 #define SIN_FAMILY(port)  port.sin_family
     60 #define SIN_LEN(port)     port.sin_len
     61 #define SIN_PORT(port)    port.sin_port
     62 #define SOCKET            int
     63 #define GET_ERRNO         errno
     64 #define RX_TIMEOUT_ERROR  ETIMEDOUT
     65 
     66 #endif  //  BUILD_FOR_WINDOWS
     67 
     68 #include <stdio.h>
     69 
     70 //------------------------------------------------------------------------------
     71 //  Constants
     72 //------------------------------------------------------------------------------
     73 
     74 #define OOB_RX_PORT       12344
     75 
     76 //------------------------------------------------------------------------------
     77 //  API
     78 //------------------------------------------------------------------------------
     79 
     80 /**
     81   Run the OOB receive application
     82 
     83   @param [in] ArgC      Argument count
     84   @param [in] ArgV      Argument value array
     85 
     86   @retval 0             Successfully operation
     87  **/
     88 
     89 int
     90 OobRx (
     91   IN int ArgC,
     92   IN char **ArgV
     93   );
     94 
     95 //------------------------------------------------------------------------------
     96 
     97 #endif  //  _OOB_RX_H_
     98