This commit is contained in:
psyc://psyced.org/~lynX 2009-09-13 11:23:52 +02:00
parent bfebcec916
commit f4616332be
4 changed files with 47 additions and 8 deletions

View File

@ -68,6 +68,29 @@ ________________________________________________________________________
tgX sagt: on reconnect i didn't get any _echo_place_enter_login's from this room, then no response for _request_do_enter, and after a _request_do_leave i get replies for enter/leave but instead of _echo_place_enter/leave i get _notice_place_enter/leave
? should /load inform that errors go to the console?
________________________________________________________________________
:_group psyc://psyced.org/@welcome
:_source_identification psyc://xxx.no-ip.org/~xxx
:_tag msg_406
_request_do_message
bug!
.
:_source_relay psyc://xxx.no-ip.org/~0
:_context psyc://psyced.org/@welcome
:_nick_place psyc://psyced.org/@welcome
:_nick xxx
:_time_INTERNAL 1245932297
_message_echo_public
bug!
.
In welcome spricht «psyc://xxx.no-ip.org/~0» xxx: the bug in the scratchpad. why psyced echoes packets to "~0" instead of my real account? the same thing is for echo_private
In welcome spricht «psyc://xxx.no-ip.org/~0» xxx: it should either ignore first packet (if psyced is sure that i'm not authorized with password) or return echo to that account instead of misterious "0"
________________________________________________________________________
== psyced 1.0 ==========================================================
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
@ -1537,6 +1560,10 @@ ________________________________________________________________________
- place and v("place") aren't in sync (new changes for psyc clients)
- when forwarding _message_echo_private from a remote server to a local
client, newlines get replaced by mere spaces. where does that happen
and how can it be avoided?
+ if newbie: directly show register dialog
(lynx should add _status_unregistered or so)

View File

@ -177,14 +177,23 @@ static varargs string psyc_render(mixed source, string mc, mixed data,
data = data? to_string(data): "";
#endif
}
else if (data == S_GLYPH_PACKET_DELIMITER || (strlen(data) > 1 &&
else if (data == S_GLYPH_PACKET_DELIMITER ||
# ifdef SPYC
// just some random limit that makes us prefer _length
// over scanning data for illegal characters
strlen(data) > 444 ||
# endif
(strlen(data) > 1 &&
data[0] == C_GLYPH_PACKET_DELIMITER && data[1] == '\n')
|| strstr(data, "\n" S_GLYPH_PACKET_DELIMITER "\n") != -1) {
// this check shouldn't be necessary here: we should check what
// people are typing in usercmd
// we could check what people are typing in usercmd.. then
// again, "illegal" data may also come in from XMPP, and
// anything should be legal in PSYC.. so let's handle it here.
# ifdef SPYC
needLen++;
# else
// old psyc syntax has no clean solution to this problem,
// so we just censor the message. use the new syntax!
P1(("%O: %O tried to send %O via psyc. censored.\n",
previous_object() || ME, vars["_nick"] || vars, data))
data = "*** censored message ***";

View File

@ -108,11 +108,12 @@ list_sockets(guy, flags) {
#endif
#if __EFUN_DEFINED__(tls_query_connection_info)
tls ? intp(tls[TLS_PROT]) ?
TLS_PROT_NAME(tls[TLS_PROT]) :
tls[TLS_PROT] : "",
TLS_PROT_NAME(tls[TLS_PROT]) ||
to_string(tls[TLS_PROT]) : tls[TLS_PROT] : "",
tls ? intp(tls[TLS_CIPHER]) ?
TLS_CIPHER_NAME(tls[TLS_CIPHER]) :
tls[TLS_CIPHER] : ""
TLS_CIPHER_NAME(tls[TLS_CIPHER])
|| to_string(tls[TLS_CIPHER])
: tls[TLS_CIPHER] : ""
#else
"", ""
#endif

View File

@ -435,8 +435,10 @@ msg(source, mc, data, mapping vars, showingLog) {
&& abbrev(SERVER_UNIFORM +"~", source))
#endif
) {
#ifdef PRO_PATH
if (data && index(data, '\n') != -1)
data = replace(data, "\n", " ");
#endif
#ifdef USE_THE_NICK
if (t != source) {
if (objectp(source)) {