1
0
Fork 0
mirror of git://git.psyced.org/git/psyced synced 2024-08-15 03:25:10 +00:00

how come ; is no longer a valid noop?`huh..?

This commit is contained in:
psyc://psyced.org/~lynX 2009-06-17 07:18:58 +02:00
parent e1da3b144b
commit bfebcec916
6 changed files with 44 additions and 12 deletions

View file

@ -23,6 +23,27 @@
#define PPL_NOTIFY 1
// this model does not handle the "None + Pending Out/In" state in
// http://xmpp.org/rfcs/rfc3921.html#substates - in psyc, if two
// people intend to subscribe to each other, they are either upgraded
// to friendship aka "Both," or rather - the actual subscription state
// on the other side is not stored here, except for the special case
// of PPL_NOTIFY_OFFERED.
//
// if a full implementation of XMPP requires local storage of whether the
// other side intends to send us presence (even though she can actually do
// whatever she wants, so the information doesn't seem very useful and is
// in fact very likely to go out of sync), we'd have to add a new flag class.
// something like PPL_SUBSCRIBED or PPL_FOLLOW.
//
// this all clashes with the PSYC model of context subscriptions - we should
// throw away all of these PPL_ subscription flags, and model all xmpp
// friendship states with generic context subscriptions - no matter if we
// are dealing with people, places or other pubsub apps. seen from this
// perspective, "None + Pending Out/In" is equivalent to a pair of
// _request_context_subscribe's which haven't been answered yet. we need
// a generic per-entity way to store these states, below user level.
//
#define PPL_NOTIFY_IMMEDIATE '8'
#define PPL_NOTIFY_DEFAULT PPL_NOTIFY_IMMEDIATE
#define PPL_NOTIFY_DELAYED '6'

View file

@ -187,7 +187,7 @@ int psyc_sendmsg(mixed target, string mc, mixed data, mapping vars,
int showingLog, mixed source, array(mixed) u) {
string sname, host, buf, room;
int port, usesrv = 1;
object o;
object ob;
mixed t;
unless (u[UHost]) {
@ -246,15 +246,15 @@ int psyc_sendmsg(mixed target, string mc, mixed data, mapping vars,
if (query_udp_port() == port && is_localhost(host)) {
// this happens when a psyc client sends to a local
// target that hasn't been incarnated yet...
o = find_psyc_object(u);
ob = find_psyc_object(u);
// cache the resulting object for the url
if (o) {
if (ob) {
P2(("psyc_sendmsg registering %O for %O found by parsing uniform\n",
target, o))
register_target(target, o);
target, ob))
register_target(target, ob);
}
#ifndef __PIKE__ // TPD
return sendmsg(o, mc, data, vars, source);
return sendmsg(ob, mc, data, vars, source);
#endif
// or deliver directly?
}