Commit Graph

227 Commits

Author SHA1 Message Date
fiatjaf
e876415677 remove unused .OnAuth() and update README example. 2023-12-28 09:17:06 -03:00
fiatjaf
b00e5b2b3f only reset ws.Authed if it's nil.
i.e. if there has been an auth and for some reason the client tried to auth again
after RequestAuth() has been called again.
2023-12-27 13:05:31 -03:00
fiatjaf
0f7d26f26e missed from last commit: setting ws.Authed to nil. 2023-12-27 12:55:05 -03:00
fiatjaf
21b08cb044 fix closing of closed ws.Authed channel when client AUTHs twice. 2023-12-27 12:30:23 -03:00
fiatjaf
5b17786273 bring back RequestAuth(ctx), now as a global. 2023-12-25 09:30:13 -03:00
fiatjaf
77600dc05c expose GetSubscriptionID(ctx) 2023-12-25 09:14:09 -03:00
fiatjaf
9f635e4e41 fix writeErr nil pointer. 2023-12-22 22:35:44 -03:00
fiatjaf
9b22ea3ee6 fail properly when a storage function errors and other fixes related to prefixed reason messages. 2023-12-22 19:51:35 -03:00
fiatjaf
08a527f9d8 upgrade eventstore dependency. 2023-12-22 19:50:32 -03:00
fiatjaf
7e06629953 superficial tweaks to auth handling. 2023-12-09 14:41:54 -03:00
fiatjaf
3ec0020baa add OnDisconnect() handlers. 2023-12-09 09:00:11 -03:00
fiatjaf
d3a0c545d2 GetIP() and GetOpenSubscriptions() utils. 2023-12-09 08:19:37 -03:00
fiatjaf
c09d21b621 clarity: break->return 2023-12-09 00:14:08 -03:00
fiatjaf
5823515d27 streamlined connection closes on failure.
account for the fact that the time.Ticker channel is
not closed when the ticker is stopped.
2023-12-09 00:00:22 -03:00
fiatjaf
9273a4b809 use a special context for each REQ stored-events handler that can be canceled. 2023-12-08 23:48:30 -03:00
fiatjaf
ddfc9ab64a fun with connection contexts and context cancelations. 2023-12-08 22:51:00 -03:00
fiatjaf
375236cfe2 fix sign on error checking. 2023-12-06 21:32:48 -03:00
fiatjaf
35e801379a make NIP-42 actually work, with inferred ServiceURL if that's not manually set. 2023-12-06 15:03:53 -03:00
fiatjaf
22da06b629 new flow for auth based on "auth-required: " rejection messages. 2023-12-06 12:14:58 -03:00
fiatjaf
7bfde76ab1 example fix. 2023-12-06 12:14:27 -03:00
fiatjaf
ad92d0b051 return CLOSED if any of the filters get rejected. 2023-12-06 11:56:56 -03:00
fiatjaf
728417852e fix nip04 policy. 2023-11-29 12:30:18 -03:00
fiatjaf
3c1b062eb8 include original http.Request in WebSocket struct. 2023-11-29 12:26:04 -03:00
fiatjaf
84d01dc1d3 rename auth-related fields on WebSocket struct. 2023-11-29 12:23:21 -03:00
fiatjaf
888ac8c1c0 use updated released go-nostr. 2023-11-29 12:23:02 -03:00
fiatjaf
e1fd6aaa56 update examples plugins->policies 2023-11-29 12:22:37 -03:00
fiatjaf
386a89676a use go-nostr envelopes and support CLOSED when filters are rejected. 2023-11-28 22:43:06 -03:00
fiatjaf
90697ad3d3 OverwriteRelayInformation 2023-11-27 00:54:45 -03:00
fiatjaf
8c8a435a0b ensure supported_nips is always a list, even if empty. 2023-11-23 19:37:01 -03:00
fiatjaf
d608c67791 store websocket object under WS_KEY at the connection context. 2023-11-23 19:36:46 -03:00
fiatjaf
c0069f1e1b fix example in readme. 2023-11-23 19:36:20 -03:00
fiatjaf
7a221cf9f0 add missing return when checking id. 2023-11-22 17:30:34 -03:00
fiatjaf
194ec994d7 rename plugins to policies. 2023-11-22 17:11:05 -03:00
fiatjaf
d592bd95a9 AntiSyncBots policy. 2023-11-22 17:10:11 -03:00
fiatjaf
2edf754907 cors. 2023-11-20 09:07:52 -03:00
fiatjaf
18e4904a00 check id before signature and do not allow invalid ids. 2023-11-19 16:40:29 -03:00
fiatjaf
591b49fe73 do not log on normal websocket close. 2023-11-19 08:30:06 -03:00
fiatjaf
5db3b5fb8b use binary search in RestrictToSpecifiedKinds() 2023-11-18 23:23:01 -03:00
fiatjaf
dcdf86c4e4 allow filtering by tag on PreventTooManyIndexableTags 2023-11-18 12:55:05 -03:00
fiatjaf
0a62169e14 update examples. 2023-11-18 10:37:07 -03:00
fiatjaf
8fd6436ac8 rework nip11 support to be more transparent. 2023-11-18 10:35:08 -03:00
fiatjaf
d2544d0f4d stop uselessly returning NIPs that are obviously supported on NIP-11 response. 2023-11-18 08:03:32 -03:00
fiatjaf
7a3eb6fb08 plugins.PreventLargeTags() 2023-11-13 16:26:27 -03:00
fiatjaf
1abeab4851 filter.Limit is zero by default, so we will short-circuit on negative limits. 2023-11-13 10:55:17 -03:00
fiatjaf
ecb4fc66f8 shortcut querying when limit == 0 2023-11-12 09:27:36 -03:00
fiatjaf
af24bd2132 fix eose waitgroup on early reject. 2023-11-11 21:15:10 -03:00
fiatjaf
4905a46ccd make filter rejection actually work and move logic to a separate file. 2023-11-11 21:08:39 -03:00
fiatjaf
21e0c559f7 simplify event rejection code. 2023-11-11 18:00:04 -03:00
fiatjaf
78dd138ca8 fix content-type for nip-11. 2023-11-09 21:39:28 -03:00
fiatjaf
6c1a030ad2 get rid of useless error for closing connection on ping. 2023-11-07 22:55:24 -03:00