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.
55 lines
1.9 KiB
55 lines
1.9 KiB
/*
|
|
* Copyright 2002-2019 Intel Corporation.
|
|
*
|
|
* This software and the related documents are Intel copyrighted materials, and your
|
|
* use of them is governed by the express license under which they were provided to
|
|
* you ("License"). Unless the License provides otherwise, you may not use, modify,
|
|
* copy, publish, distribute, disclose or transmit this software or the related
|
|
* documents without Intel's prior written permission.
|
|
*
|
|
* This software and the related documents are provided as is, with no express or
|
|
* implied warranties, other than those that are expressly stated in the License.
|
|
*/
|
|
|
|
// <COMPONENT>: os-apis
|
|
// <FILE-TYPE>: component public header
|
|
/// @file ipc-pipe.h
|
|
|
|
/*!
|
|
* @addtogroup OS_APIS_IPC IPC
|
|
*/
|
|
|
|
#ifndef OS_APIS_IPC_PIPE_H
|
|
#define OS_APIS_IPC_PIPE_H
|
|
|
|
#include "os-apis.h"
|
|
|
|
/*! @ingroup OS_APIS_FILE
|
|
* Pipes creation flags
|
|
*/
|
|
typedef enum
|
|
{
|
|
OS_PIPE_CREATE_FLAGS_NONE = 0, // No flags
|
|
OS_PIPE_CREATE_FLAGS_READ_SIDE_INHERITABLE = (1<<0), // Child processes inherits the pipe's read side
|
|
OS_PIPE_CREATE_FLAGS_WRITE_SIDE_INHERITABLE = (1<<1) // Child processes inherits the pipe's write side
|
|
} OS_PIPE_CREATE_FLAGS;
|
|
|
|
/*! @ingroup OS_APIS_IPC
|
|
* Creates an anonymous pipe, and returns handles to the read and write ends of the pipe.
|
|
*
|
|
* @param[in] flags Pipes creation flags
|
|
* @param[out] readFd File descriptor for the read side
|
|
* @param[out] writeFd File descriptor for the write side
|
|
*
|
|
* @retval OS_RETURN_CODE_NO_ERROR If the operation succeeded
|
|
* @retval OS_RETURN_CODE_INVALID_ARGS One of the input arguments is invalid.
|
|
* @retval OS_RETURN_CODE_FILE_OPEN_FAILED If the operation failed
|
|
*
|
|
* @par Availability:
|
|
* @b O/S: All \n
|
|
* @b CPU: All \n
|
|
*/
|
|
OS_RETURN_CODE OS_Pipe(OS_PIPE_CREATE_FLAGS flags, NATIVE_FD* readFd, NATIVE_FD* writeFd);
|
|
|
|
#endif // file guard
|