/*---------------------------------------------------------------------------* Copyright (C) Nintendo. All rights reserved. These coded instructions, statements, and computer programs contain proprietary information of Nintendo of America Inc. and/or Nintendo Company Ltd., and are protected by Federal copyright law. They may not be disclosed to third parties or copied or duplicated in any form, in whole or in part, without the prior written consent of Nintendo. *---------------------------------------------------------------------------*/ #ifndef NN_TEMP_TEMP_API_EXPOSE_H_ #define NN_TEMP_TEMP_API_EXPOSE_H_ #include #include #ifdef __cplusplus extern "C" { #endif //! @addtogroup nn_temp_api //! @{ /*! @brief Modifies the Others read permission so that other processes can access the temporary directory. @param[in] pClient Pointer to the client buffer. @param[in] pCmd The command block. @param[in] dirID The TEMP directory ID. @param[in] path The relative path from the root path of the temporary directory specified by the TEMP directory ID. The length must be less than FS_MAX_ARGPATH_SIZE. @param[in] mode The access mode. You can specify one of the following values for the permission. FS_MODE_IROTH: Adds read permission. 0: Removes read permission. @param[in] errHandling Flag for automatic error handling. Only reported errors are returned. @return Returns the result of the function. @retval TEMP_STATUS_OK The process ended normally. @retval TEMP_STATUS_CANCELED The command was canceled. @retval TEMP_STATUS_NOT_FOUND Target not found. @retval TEMP_STATUS_PERMISSION_ERROR The caller does not have the appropriate access permissions. @retval TEMP_STATUS_ALREADY_OPEN One or more files or directories in the source path or path to modify is already open. @retval TEMP_STATUS_STORAGE_FULL Indicates that a data region for updating the directory tree cannot be allocated. @retval TEMP_STATUS_JOURNAL_FULL The journaling region is full. A new journaling block cannot be allocated. */ TEMPStatus TEMPChangeOthersMode( FSClient *pClient, FSCmdBlock *pCmd, TEMPDirID dirID, const char *path, FSMode mode, FSRetFlag errHandling ); /*! @brief Modifies the Others read permission so that other processes can access the temporary directory. @param[in] pClient Pointer to the client buffer. @param[in] pCmd The command block. @param[in] dirID The TEMP directory ID. @param[in] path The relative path from the root path of the temporary directory specified by the TEMP directory ID. The length must be less than FS_MAX_ARGPATH_SIZE. @param[in] mode The access mode. You can specify one of the following values for the permission. FS_MODE_IROTH: Adds read permission. 0: Removes read permission. @param[in] errHandling Flag for automatic error handling. Only reported errors are returned. @param[in] pAsyncParams Notification parameters for asynchronous calls. @return Returns the function execution result using a callback. @retval TEMP_STATUS_OK The process ended normally. @retval TEMP_STATUS_CANCELED The command was canceled. @retval TEMP_STATUS_NOT_FOUND Target not found. @retval TEMP_STATUS_PERMISSION_ERROR The caller does not have the appropriate access permissions. @retval TEMP_STATUS_ALREADY_OPEN One or more files or directories in the source path or path to modify is already open. @retval TEMP_STATUS_STORAGE_FULL Indicates that a data region for updating the directory tree cannot be allocated. @retval TEMP_STATUS_JOURNAL_FULL The journaling region is full. A new journaling block cannot be allocated. @return Immediate return values for asynchronous API functions. @retval TEMP_STATUS_OK The request was issued normally. @retval TEMP_STATUS_FATAL_ERROR Invalid parameter. */ TEMPStatus TEMPChangeOthersModeAsync( FSClient *pClient, FSCmdBlock *pCmd, TEMPDirID dirID, const char *path, FSMode mode, FSRetFlag errHandling, const FSAsyncParams *pAsyncParams ); //! @} #ifdef __cplusplus } #endif #endif // NN_TEMP_TEMP_API_EXPOSE_H_