core/logic/smn_functions.cpp
changeset 3955 763d59fe6d77
parent 2730 a2ff0a7a1c53
child 4162 233f56c20263
     1.1 --- a/core/logic/smn_functions.cpp	Thu Jul 18 20:34:11 2013 -0400
     1.2 +++ b/core/logic/smn_functions.cpp	Thu Jul 18 20:34:43 2013 -0400
     1.3 @@ -187,8 +187,9 @@
     1.4  	Handle_t hndl = static_cast<Handle_t>(params[1]);
     1.5  	HandleError err;
     1.6  	IForward *pForward;
     1.7 +	HandleSecurity sec(pContext->GetIdentity(), g_pCoreIdent);
     1.8  
     1.9 -	if ((err=handlesys->ReadHandle(hndl, g_GlobalFwdType, NULL, (void **)&pForward))
    1.10 +	if ((err=handlesys->ReadHandle(hndl, g_GlobalFwdType, &sec, (void **)&pForward))
    1.11  		!= HandleError_None)
    1.12  	{
    1.13  		return pContext->ThrowNativeError("Invalid forward handle %x (error %d)", hndl, err);
    1.14 @@ -204,8 +205,9 @@
    1.15  	HandleError err;
    1.16  	IChangeableForward *pForward;
    1.17  	IPlugin *pPlugin;
    1.18 +	HandleSecurity sec(pContext->GetIdentity(), g_pCoreIdent);
    1.19  
    1.20 -	if ((err=handlesys->ReadHandle(fwdHandle, g_PrivateFwdType, NULL, (void **)&pForward))
    1.21 +	if ((err=handlesys->ReadHandle(fwdHandle, g_PrivateFwdType, &sec, (void **)&pForward))
    1.22  		!= HandleError_None)
    1.23  	{
    1.24  		return pContext->ThrowNativeError("Invalid private forward handle %x (error %d)", fwdHandle, err);
    1.25 @@ -240,8 +242,9 @@
    1.26  	HandleError err;
    1.27  	IChangeableForward *pForward;
    1.28  	IPlugin *pPlugin;
    1.29 +	HandleSecurity sec(pContext->GetIdentity(), g_pCoreIdent);
    1.30  
    1.31 -	if ((err=handlesys->ReadHandle(fwdHandle, g_PrivateFwdType, NULL, (void **)&pForward))
    1.32 +	if ((err=handlesys->ReadHandle(fwdHandle, g_PrivateFwdType, &sec, (void **)&pForward))
    1.33  		!= HandleError_None)
    1.34  	{
    1.35  		return pContext->ThrowNativeError("Invalid private forward handle %x (error %d)", fwdHandle, err);
    1.36 @@ -276,8 +279,9 @@
    1.37  	HandleError err;
    1.38  	IChangeableForward *pForward;
    1.39  	IPlugin *pPlugin;
    1.40 +	HandleSecurity sec(pContext->GetIdentity(), g_pCoreIdent);
    1.41  
    1.42 -	if ((err=handlesys->ReadHandle(fwdHandle, g_PrivateFwdType, NULL, (void **)&pForward))
    1.43 +	if ((err=handlesys->ReadHandle(fwdHandle, g_PrivateFwdType, &sec, (void **)&pForward))
    1.44  		!= HandleError_None)
    1.45  	{
    1.46  		return pContext->ThrowNativeError("Invalid private forward handle %x (error %d)", fwdHandle, err);
    1.47 @@ -339,12 +343,13 @@
    1.48  	Handle_t hndl;
    1.49  	HandleError err;
    1.50  	IForward *pForward;
    1.51 +	HandleSecurity sec(pContext->GetIdentity(), g_pCoreIdent);
    1.52  
    1.53  	ResetCall();
    1.54  
    1.55  	hndl = static_cast<Handle_t>(params[1]);
    1.56  
    1.57 -	if ((err=handlesys->ReadHandle(hndl, g_GlobalFwdType, NULL, (void **)&pForward))
    1.58 +	if ((err=handlesys->ReadHandle(hndl, g_GlobalFwdType, &sec, (void **)&pForward))
    1.59  		!= HandleError_None)
    1.60  	{
    1.61  		return pContext->ThrowNativeError("Invalid forward handle %x (error %d)", hndl, err);