defproc.c

来自「T-kernel 的extension源代码」· C语言 代码 · 共 104 行

C
104
字号
/* *---------------------------------------------------------------------- *    T-Kernel / Standard Extension * *    Copyright (C) 2006 by Ken Sakamura. All rights reserved. *    T-Kernel / Standard Extension is distributed  *      under the T-License for T-Kernel / Standard Extension. *---------------------------------------------------------------------- * *    Version:   1.00.00 *    Released by T-Engine Forum(http://www.t-engine.org) at 2006/8/11. * *---------------------------------------------------------------------- *//* *	defproc.c (file) * *	File management *	Default process information *	Dummy processing to use the file in non-process environment. */#if !USE_PROCESS_MANAGER#include <basic.h>#include <tk/tkernel.h>#include <sys/pinfo.h>#include <libstr.h>#include "defproc.h"LOCAL PINFO default_pinfo;#define TSD_UIF_ULV_15		15#define TSD_UIF_NLV_15		15#define TSD_UIF_UN_0X0000	(TC)0x0000#define TSD_UIF_GN1_0X0000	(TC)0x0000#define TSD_UIF_GN2_0X0000	(TC)0x0000#define TSD_UIF_GN3_0X0000	(TC)0x0000#define TSD_UIF_GN4_0X0000	(TC)0x0000#define TSD_UIF_GRL_0XFFF	(UH)0xfff#define TSD_UIF_GNL_0XFFF	(UH)0xfffLOCAL const UINFO default_uinfo = {	{ /* P_USER */		{ TSD_UIF_UN_0X0000 },		/* User name		*/		{ TSD_UIF_GN1_0X0000 },		/* Group name 1 	*/		{ TSD_UIF_GN2_0X0000 },		/* Group name 2 	*/		{ TSD_UIF_GN3_0X0000 },		/* Group name 3 	*/		{ TSD_UIF_GN4_0X0000 },		/* Group name 4 	*/		TSD_UIF_ULV_15,			/* User level	*/		TSD_UIF_NLV_15			/* Network user level */	},	{ /* DA_MODE */		F_OWNACC,			/* Owner access mode	*/		TSD_UIF_GRL_0XFFF,		/* Group access level */		TSD_UIF_GNL_0XFFF,		/* General access level	*/		0,				/* Group number	*/		{TSD_UIF_GRL_0XFFF, TSD_UIF_GRL_0XFFF, TSD_UIF_GRL_0XFFF, TSD_UIF_GRL_0XFFF}	/* Group access level */	}};/* * Initialize the default process information. */EXPORT ER InitDefaultPinfo(void){	ER ercd;	ercd = tk_get_tid();	if (ercd <= 0) {		return E_CTX;	}	memset(&default_pinfo, 0, (size_t)sizeof(PINFO));	default_pinfo.procid = 1;	default_pinfo.user = (UINFO*)&default_uinfo;	default_pinfo.sysproc = 1;	default_pinfo.tsk[0].tskid = ercd;	return E_OK;}/* * Obtain the default process information (Substitution for GetPinfo). */EXPORT PINFO* GetDefaultPinfo(ID taskid){	T_RTSK	ref;	ER ercd;	/* Perform only the check of task ID. */	ercd = tk_ref_tsk(taskid, &ref);	if (ercd != E_OK) {		return NULL;	}	return &default_pinfo;}#elseint	dummy_defproc;	/* to avoid empty source file */#endif /* USE_PROCESS_MANAGER */

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?