The GW2GetPolicySettings function provides a string corresponding to the contents of the policy setting file associated with the supplied session.
#include "glasswall.core2.api.h"
int GW2GetPolicySettings (
Session session,
char **policiesBuffer,
size_t *policiesLength,
Policy_format format);
Parameters
โ session The ID of the session as returned by GW2OpenSession
โ policiesBuffer A string pointer output parameter which is populated with the policy settings information. The memory used by this pointer does not need to be freed by the user. In the event of a failure this parameter may be set to nullptr.
โ policiesLength An output parameter which is populated with the size in bytes of the memory pointed to by `policiesBuffer`
โ format The format of the data. This must be `PF_XML`.
Returns
โ Returns an integer indicating whether the function call was successful. Negative numbers indicate a failure. See the Return Types table for an explanation of the return codes.
Synopsis
/// <summary>
/// Retrieves policy settings for the session
/// </summary>
/// <param name="session">Current open Glasswall session</param>
/// <param name="policiesBufferPtr">A pointer to the object containing a pointer pointing to the policy data</param>
/// <param name="policiesLengthPtr">A pointer to a object containing the size in bytes </param>
public int GetPolicySettings(
int session,
out IntPtr policiesBufferPtr,
ref UIntPtr policiesLengthPtr,
int format)
Returns
Returns an integer GW2_RetStatus
enum value. Negative numbers indicate a failure.
Synopsis
import com.glasswall.core2javabridge.*;
public String GW2GetPolicySettingsString(int session, int format) throws GlasswallException
Note:
The GW2GetPolicySettingsString function outputs the currently registered policy settings for the session specified by session
.
Please refer to API Overview for Return Types and valid enumerators for format
.
This functionality previously required two separate function calls to retrieve the policy setting data. This has now been streamlined to return the settings as a String
. The two original functions have been deprecated.
Returns
The GW2GetPolicySettingsString function returns a String
containing the policy settings.
A GlasswallException exception will be thrown if session
is invalid, or if the policy settings could not be retrieved.
Synopsis - Deprecated Functions
import com.glasswall.core2javabridge.*;
(Deprecated)
public int GW2GetPolicySettings(int session, int format) throws GlasswallException
public byte[] GetPolicyBuffer(int session) throws GlasswallException
Description - Deprecated Functions
The GW2GetPolicySettings function outputs the currently registered policy settings for the session specified by session
to the internal policy buffer. Retrieve this data through use of GetPolicyBuffer function.
Please refer to API Overview for Return Types and valid enumerators for format
.
Returns - Deprecated Functions
The GW2GetPolicySettings function returns a GW2_RetStatus enumeration converted to int
. The value will be negative if an error occurred. 0
indicates success.
Please refer to API Overview for Return Types and their details.
The GetPolicyBuffer returns a byte[]
containing the policy settings. This will be null if GW2GetPolicySettings has not been called.
A GlasswallException exception will be thrown if session
is invalid, or if the policy settings could not be retrieved.
Synopsis
Returns the content management configuration for a given session.
def get_content_management_policy(self, session: int):
""" Returns the content management configuration for a given session.
Args:
session (int): The session integer.
Returns:
xml_string (str): The XML string of the current content management configuration.
"""
Returns
xml_string (str): The XML string of the current content management configuration.
Synopsis
/**
* This function returns the policy settings used for the specified session
*
* @param {number} session The ID of the session.
* @param {string} policiesBuffer The pointer to the policy buffer.
* @param {number} policiesLength The size of the data in the policy buffer
* @param {number} format The format of the policy.
*/
GW2GetPolicySettings(
session,
policiesBuffer,
policiesLength,
format)
Returns
Returns an integer GW2_RetStatus
enum value. Negative numbers indicate a failure.
Example
const ref = require('ref-napi');
...
function buffer_to_string(buffer, buffer_size) {
if (!buffer.isNull() && ref.deref(buffer_size) > 0) {
return Buffer.from(ref.reinterpret(ref.deref(buffer), ref.deref(buffer_size), 0)).toString();
}
else {
return "";
}
}
...
let policy_file_buffer = ref.alloc(ref.refType(ref.types.CString));
let policy_buffer_size = ref.alloc(ref.types.size_t, 0);
let return_status = gw.GW2GetPolicySettings(session_id, policy_file_buffer, policy_buffer_size, 0);
let xml_string = buffer_to_string(policy_file_buffer, policy_buffer_size);
...