E2kRestriction (vaporware)

E2kRestriction (vaporware)

Synopsis

enum                E2kRestrictionType;
gboolean            e2k_restriction_extract             (guint8 **data,
                                                         gint *len,
                                                         E2kRestriction **rn);
void                e2k_restriction_append              (GByteArray *ba,
                                                         E2kRestriction *rn);

Description

Details

enum E2kRestrictionType

typedef enum {
	E2K_RESTRICTION_AND		= 0,
	E2K_RESTRICTION_OR		= 1,
	E2K_RESTRICTION_NOT		= 2,
	E2K_RESTRICTION_CONTENT		= 3,
	E2K_RESTRICTION_PROPERTY = 4,
	E2K_RESTRICTION_COMPAREPROPS = 5,
	E2K_RESTRICTION_BITMASK		= 6,
	E2K_RESTRICTION_SIZE		= 7,
	E2K_RESTRICTION_EXIST		= 8,
	E2K_RESTRICTION_SUBRESTRICTION = 9,
	E2K_RESTRICTION_COMMENT		= 10
} E2kRestrictionType;


e2k_restriction_extract ()

gboolean            e2k_restriction_extract             (guint8 **data,
                                                         gint *len,
                                                         E2kRestriction **rn);

Attempts to extract a restriction from *data, which contains a binary-encoded restriction from a server-side rule.

On success, *rn will contain the extracted restriction, *data will be advanced past the end of the restriction data, and *len will be decremented accordingly.

data :

pointer to data pointer

len :

pointer to data length

rn :

pointer to variable to store the extracted restriction in

Returns :

success or failure

e2k_restriction_append ()

void                e2k_restriction_append              (GByteArray *ba,
                                                         E2kRestriction *rn);

Appends rn to ba as part of a server-side rule.

ba :

a buffer into which a server-side rule is being constructed

rn :

the restriction to append to ba