Documentation ¶
Index ¶
- func AntiSyncBots(ctx context.Context, filter nip1.Filter) (reject bool, msg string)
- func NoComplexFilters(ctx context.Context, filter nip1.Filter) (reject bool, msg string)
- func NoEmptyFilters(ctx context.Context, filter nip1.Filter) (reject bool, msg string)
- func NoSearchQueries(ctx context.Context, filter nip1.Filter) (reject bool, msg string)
- func PreventLargeTags(maxTagValueLen int) func(context.Context, *nip1.Event) (bool, string)
- func PreventTimestampsInTheFuture(thresholdSeconds timestamp.T) func(context.Context, *nip1.Event) (bool, string)
- func PreventTimestampsInThePast(thresholdSeconds timestamp.T) func(context.Context, *nip1.Event) (bool, string)
- func PreventTooManyIndexableTags(max int, ignoreKinds kind.Array, onlyKinds kind.Array) func(context.Context, *nip1.Event) (bool, string)
- func RejectKind04Snoopers(ctx context.Context, filter nip1.Filter) (bool, string)
- func RemoveAllButKinds(kinds ...uint16) func(context.Context, *nip1.Filter)
- func RemoveAllButTags(tagNames ...string) func(context.Context, *nip1.Filter)
- func RemoveSearchQueries(ctx context.Context, filter *nip1.Filter)
- func RestrictToSpecifiedKinds(kinds ...kind.T) func(context.Context, *nip1.Event) (bool, string)
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func AntiSyncBots ¶
AntiSyncBots tries to prevent people from syncing kind:1s from this relay to else by always requiring an author parameter at least.
func NoComplexFilters ¶
NoComplexFilters disallows filters with more than 2 tags.
func NoEmptyFilters ¶
NoEmptyFilters disallows filters that don't have at least a tag, a kind, an author or an id.
func NoSearchQueries ¶
func PreventLargeTags ¶
PreventLargeTags rejects events that have indexable tag values greater than maxTagValueLen.
func PreventTooManyIndexableTags ¶
func PreventTooManyIndexableTags(max int, ignoreKinds kind.Array, onlyKinds kind.Array) func(context.Context, *nip1.Event) (bool, string)
PreventTooManyIndexableTags returns a function that can be used as a RejectFilter that will reject events with more indexable (single-character) tags than the specified number.
If ignoreKinds is given this restriction will not apply to these kinds (useful for allowing a bigger). If onlyKinds is given then all other kinds will be ignored.
func RejectKind04Snoopers ¶
RejectKind04Snoopers prevents reading NIP-04 messages from people not involved in the conversation.
func RemoveAllButKinds ¶
func RemoveAllButTags ¶
func RestrictToSpecifiedKinds ¶
RestrictToSpecifiedKinds returns a function that can be used as a RejectFilter that will reject any events with kinds different than the specified ones.
todo: this range minimum doesn't look like it would ever change from zero
Types ¶
This section is empty.