aboutsummaryrefslogtreecommitdiff
path: root/goldap/filter_extensible_match.go
diff options
context:
space:
mode:
Diffstat (limited to 'goldap/filter_extensible_match.go')
-rw-r--r--goldap/filter_extensible_match.go28
1 files changed, 28 insertions, 0 deletions
diff --git a/goldap/filter_extensible_match.go b/goldap/filter_extensible_match.go
new file mode 100644
index 0000000..8c09c7f
--- /dev/null
+++ b/goldap/filter_extensible_match.go
@@ -0,0 +1,28 @@
+package message
+
+import "fmt"
+
+// extensibleMatch [9] MatchingRuleAssertion,
+func readFilterExtensibleMatch(bytes *Bytes) (filterextensiblematch FilterExtensibleMatch, err error) {
+ var matchingruleassertion MatchingRuleAssertion
+ matchingruleassertion, err = readTaggedMatchingRuleAssertion(bytes, classContextSpecific, TagFilterExtensibleMatch)
+ if err != nil {
+ err = LdapError{fmt.Sprintf("readFilterExtensibleMatch:\n%s", err.Error())}
+ return
+ }
+ filterextensiblematch = FilterExtensibleMatch(matchingruleassertion)
+ return
+}
+
+// extensibleMatch [9] MatchingRuleAssertion,
+func (f FilterExtensibleMatch) write(bytes *Bytes) int {
+ return MatchingRuleAssertion(f).writeTagged(bytes, classContextSpecific, TagFilterExtensibleMatch)
+}
+func (filterAnd FilterExtensibleMatch) getFilterTag() int {
+ return TagFilterExtensibleMatch
+}
+
+// extensibleMatch [9] MatchingRuleAssertion,
+func (f FilterExtensibleMatch) size() int {
+ return MatchingRuleAssertion(f).sizeTagged(TagFilterExtensibleMatch)
+}