comparison plugins/mod_s2s.lua @ 14141:18d364587db5 13.0

mod_s2s: Fire consistent event data across all 'connected' events This fixes a traceback in the new mod_limits IP limiting code when matching s2sin connections.
author Matthew Wild <mwild1@gmail.com>
date Fri, 17 Apr 2026 17:46:31 +0100
parents 1e005ba71f0d
children 5aacae4b2ccf 723c6f5f01b7
comparison
equal deleted inserted replaced
14140:c9c4a13732e4 14141:18d364587db5
909 end 909 end
910 910
911 function listener.onconnect(conn) 911 function listener.onconnect(conn)
912 conn:setoption("keepalive", opt_keepalives); 912 conn:setoption("keepalive", opt_keepalives);
913 local session = sessions[conn]; 913 local session = sessions[conn];
914 local event_data = { session = session, conn = conn };
914 if not session then -- New incoming connection 915 if not session then -- New incoming connection
915 session = s2s_new_incoming(conn); 916 session = s2s_new_incoming(conn);
916 sessions[conn] = session; 917 sessions[conn] = session;
917 session.log("debug", "Incoming s2s connection"); 918 session.log("debug", "Incoming s2s connection");
918 module:fire_event("s2sin-connected", { session = session }) 919 module:fire_event("s2sin-connected", event_data)
919 initialize_session(session); 920 initialize_session(session);
920 m_accepted_tcp_connections:with_labels():add(1) 921 m_accepted_tcp_connections:with_labels():add(1)
921 else -- Outgoing session connected 922 else -- Outgoing session connected
922 module:fire_event("s2sout-connected", { session = session }) 923 module:fire_event("s2sout-connected", event_data)
923 session:open_stream(session.from_host, session.to_host); 924 session:open_stream(session.from_host, session.to_host);
924 end 925 end
925 module:fire_event("s2s-connected", { session = session, conn = conn }) 926 module:fire_event("s2s-connected", event_data)
926 session.ip = conn:ip(); 927 session.ip = conn:ip();
927 end 928 end
928 929
929 function listener.onincoming(conn, data) 930 function listener.onincoming(conn, data)
930 local session = sessions[conn]; 931 local session = sessions[conn];