Is there any information you can provide about this "batched salmon"?
Such as - is there a new "public endpoint" to accept it? Or do we just
take the message from the first recipient and copy to any other listeners?
And you might have a look at http://dfrn.org/zot-protocol.txt - which is
my current take on a possible path to future protocol federation. (A
clean superset of salmon with encryption and batching which could
accommodate Diaspora xml messages, ActivityStreams, and eventually MIME
email formats into a common web delivery system).
There's a discussion forum at googlegroups/zot-dev
--
You received this message because you are subscribed to the Google Groups "diaspora-dev" group.
To post to this group, send email to diaspo...@googlegroups.com.
To unsubscribe from this group, send email to diaspora-dev...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/diaspora-dev?hl=en.
This was really the important question. I need to add a bit of code on
our end to duplicate this receive hook (and publish to it going out to
Diaspora), and will require either the relative path from the server
root that I need to provide or a means of dynamic discovery.
>
> https://github.com/diaspora/diaspora/blob/master/lib/salmon/slap.rb (unencrypted headers/payloads)
> https://github.com/diaspora/diaspora/blob/master/lib/salmon/encrypted_slap.rb (encrypted headers/payloads)
> (note: our divergence from the salmon spec will live in encrypted_slap)
As I'm reading this, it appears we're going to get something like this
(on the unencrypted version):
<?xml version='1.0' encoding='UTF-8'?>
<entry xmlns='http://www.w3.org/2005/Atom'>
<header>
<iv>#{iv}</iv>
<aes_key>#{aes_key}</aes_key>
<author>
<name>#{@author.name}</name>
<uri>acct:#{@author.diaspora_handle}</uri>
</author>
</header>
#{@magic_sig.to_xml}
</entry>
This isn't a salmon. But it's not an atom either.
First of all there is no "header" in the 2005/Atom namespace (just as
there was no "encrypted_header" either). This should really have a
different namespace. A strict parser is going to spit the dummy.
But it's all wrong because there's no atom in this packet at all (though
I haven't dug all the way through this iteration of magic_sig.to_xml).
Also if there is no encryption, what is this iv and aes_key and why are
they here?
These nits aside, I'm guessing my "Diaspora public salmon endpoint"
should just accept a Diaspora packet like before, except the actual
payload is unencrypted - and I look for the author in atom:header
instead of atom:encrypted_header ?
The only problem I'm seeing now is with 'entry' in the XML, since it has
no namespace at all. We don't know for sure what an 'entry' is and
whether or not it's something we are able to process. Perhaps something
like the following (I'm typing this in by hand, there may be typos).
The top level term doesn't have to be 'diaspora', it could be 'xml' or
anything you want. It could even be 'entry'. The entire XML document now
defaults to your namespace and makes the content hierarchy clear both to
machines and to humans who may read it.
I'd probably recommend using a namespace identifier that doesn't belong
to somebody else's website unless it's purl.org. This doesn't have to
resolve. Sure, you can use a github page if you want, but you're
building something which could be around for years. Put some thought
into this. It could end up being hard-coded into a lot of parsers.
------ Public Salmon ------
<?xml version='1.0' encoding='UTF-8'?>
<diaspora xmlns="http://joindiaspora.com/protocol"
xmlns:me="http://salmon-protocol.org/ns/magic-env">
<!--
now you can do a plain Diaspora header (or encrypted_header)
as the entire document by default is in the
https://joindiaspora.com/protocol (or whatever) namespace
-->
<header>
<author_id>#{@author.diaspora_handle}</author_id>
</header>
<!-- the me namespace is already defined -->
<me:env>
<me:encoding>base64url</me:encoding>
<me:alg>RSA-SHA256</me:alg>
<me:data type="application/xml">base64url-encoded prepared payload
message</me:data>
<me:sig>signature</me:sig>
</me:env>
</diaspora>
On 15/09/2011 8:32 AM, Ilya Z wrote:
> As outlined both here and on other federated mailing lists here are some
> more improvements that should happen in future protocol refactors:
>
> 1) removing the double base64 encoding
(And if possible the double url encoding on posted data).
> 2) changing the key format from PKCS#1 to PKCS#8
Diaspora may get more mileage in terms of federation by providing salmon
(modulus,exponent) keys. Full OStatus federation will require this. I
believe Ruby gives you access to these low-level key details, whereas we
have to rip apart the ASN.1 block in PHP to get to them.
But if you do publish a DER/PEM key (these are easier for many systems
to work with), pkcs#8 is a better choice than pkcs#1.
> 3) making sure RSA signature algorithm (low level one) is run on emsa
> formated string.
>
> OpenSSL's "RSA_PKCS1_PADDING" in RSA_private_encrypt
> (http://www.openssl.org/docs/crypto/RSA_private_encrypt.html
> ) method is not sufficient since it does not include the include the
> prefix ([0x30, 0x31, 0x30, 0xd, 0x6, 0x9, 0x60, 0x86, 0x48, 0x1, 0x65,
> 0x3, 0x4, 0x2, 0x1, 0x5, 0x0, 0x4, 0x20]) before signing. Is this correct?
I've checked and Ruby's RSA signing method does the right thing. Don't
worry about these bits - they're already inside openssl as long as you
invoke the SHA256 hash method on the sign function.
It might be a good time to consider versioning the protocol so that
protocol transitions can be made painlessly behind the scenes. As the
number of nodes increase, "federated fridays" are going to be
increasingly impractical. This won't solve level 1 security threats, but
other changes could be rolled out at any time without impacting anybody
at all.
On Thu, Sep 15, 2011 at 8:50 PM, Mike Macgirvin <mi...@macgirvin.com> wrote:
> Just made a few last minute adjustments and I think we're good to go.
>
http://travis-ci.org/#!/diaspora/diaspora
PS: Could you delete the fl...@social.belfalas.org profile existing on
joindiapora.com please? It is totally out of sync, and so I can’t add
people from joindiaspora :/ (Since the feature we discussed on IRC with
MrZYX about crawling to keep remote profiles in sync doesn’t exist for
now ;))
Le 16/09/2011 19:56, Ilya Z a écrit :
> Hey Everyone,
>
> For those of you who haven't updated yet, you should:
>
> 1) Stop your app servers and let the workers finish processing your
> queues. (We renamed a couple of things and resque jobs call the method
> names with which they were queued getting the latest master will error
> with method not found.)
> 2) Get the latest master and bundle and boot everything up
>
> Hope this helps,
> Thanks,
>
> Ilya
>
> On Fri, Sep 16, 2011 at 6:54 AM, Sarah Mei <sa...@joindiaspora.com
> <mailto:sa...@joindiaspora.com>> wrote:
>
> Actually, there are a few features that Travis is too underpowered
> to run, so I'm going to convert our old CI box to run only those.
> I'll modify the front page on ci.joindiaspora.com
> <http://ci.joindiaspora.com> to point people to Travis, though, for
> the "official" build status.
>
> On Friday, September 16, 2011, Jonne Hass <list-...@mrzyx.home.kg
> <mailto:list-...@mrzyx.home.kg>> wrote:
> > We should redirect ci.joindiaspora.com
> <http://ci.joindiaspora.com> to Travis.
> >
> > Am 16.09.2011 15:16, schrieb Sarah Mei:
> >
> > Ah, yes, I should have anounced to the list - I migrated our CI to
> Travis last weekend.
> >
> > Sarah
> >
> > On Friday, September 16, 2011, Christophe <chris...@wk3.org
> <mailto:chris...@wk3.org>> wrote:
> >> Have a look here:
> >>
> >>
> http://travis-ci.org/#!/diaspora/diaspora <http://travis-ci.org/#%21/diaspora/diaspora>
>
> >>
> >> On Fr 16 Sep 2011 15:10:33 CEST, Disconnect wrote:
> >>>
> >>> I'd be a lot more comfortable about updating if CI wasn't red and
> >>> severely outdated.. (Sept 4)
> >>>
> >>> On Thu, Sep 15, 2011 at 8:50 PM, Mike
> Macgirvin<mi...@macgirvin.com <mailto:mi...@macgirvin.com>> wrote:
> >>>>
> >>>> Just made a few last minute adjustments and I think we're good
> to go.
> >>>>
> >>>> --
> >>>> You received this message because you are subscribed to the
> Google Groups "diaspora-dev" group.
> >>>> To post to this group, send email to
> diaspo...@googlegroups.com <mailto:diaspo...@googlegroups.com>.
> >>>> To unsubscribe from this group, send email to
> diaspora-dev...@googlegroups.com
> <mailto:diaspora-dev%2Bunsu...@googlegroups.com> <diaspora-dev%2Bunsu...@googlegroups.com
> <mailto:diaspora-dev%252Buns...@googlegroups.com>>.
>
> >>>> For more options, visit this group at
> http://groups.google.com/group/diaspora-dev?hl=en.
> >>>>
> >>>>
> >>>
> >>
> >> --
> > You received this message because you are subscribed to the Google
> Groups "diaspora-dev" group.
> > To post to this group, send email to diaspo...@googlegroups.com
> <mailto:diaspo...@googlegroups.com>.
> > To unsubscribe from this group, send email to
> diaspora-dev...@googlegroups.com
> <mailto:diaspora-dev%2Bunsu...@googlegroups.com>.
> > For more options, visit this group at
> http://groups.google.com/group/diaspora-dev?hl=en.
> >
> > --
> > You received this message because you are subscribed to the Google
> Groups "diaspora-dev" group.
> > To post to this group, send email to diaspo...@googlegroups.com
> <mailto:diaspo...@googlegroups.com>.
> > To unsubscribe from this group, send email to
> diaspora-dev...@googlegroups.com
> <mailto:diaspora-dev%2Bunsu...@googlegroups.com> <diaspora-dev%2Bunsu...@googlegroups.com
> <mailto:diaspora-dev%252Buns...@googlegroups.com>>.
>
> > For more options, visit this group at
> http://groups.google.com/group/diaspora-dev?hl=en.
> >
>
> --
> You received this message because you are subscribed to the Google
> Groups "diaspora-dev" group.
> To post to this group, send email to diaspo...@googlegroups.com
> <mailto:diaspo...@googlegroups.com>.
> To unsubscribe from this group, send email to
> diaspora-dev...@googlegroups.com
> <mailto:diaspora-dev%2Bunsu...@googlegroups.com>.
> For more options, visit this group at
> http://groups.google.com/group/diaspora-dev?hl=en.
>
>
> --
> You received this message because you are subscribed to the Google
> Groups "diaspora-dev" group.
> To post to this group, send email to diaspo...@googlegroups.com.
> To unsubscribe from this group, send email to
> diaspora-dev...@googlegroups.com.
> For more options, visit this group at
> http://groups.google.com/group/diaspora-dev?hl=en.
--
,= ,-_-. =. Loïc Guitaut
((_/)o o(\_)) http://www.belfalas.org
`-'(. .)`-' Jabber ID : Fl...@im.apinc.org
\_/ GnuPG KeyID : 0xA78CD85D
I wanted to update my pod an ran into big problems with mysql2. I did
eveything as usual, git pull, bundle install, migrated db. But if I want
to start the sever I only get:
Starting server on /tmp/thin.0.sock ...
/usr/lib64/ruby/gems/1.8/gems/activerecord-3.0.10/lib/active_record/connection_adapters/abstract/connection_specification.rb:71:in
`establish_connection_without_activerecord_import': Please install the
mysql2 adapter: `gem install activerecord-mysql2-adapter` (no such file
to load -- active_record/connection_adapters/mysql2_adapter) (RuntimeError)
So ... I uninstalled all mysql2-versions, tried bundle install again,
same problem. Updated mysql2 to 0.2.7 in Gemfile (found via google),
same problem again. I can't start my pod :/
Anyone knows this problem and a solution? It's really urgend, because
nobody can use the pod right now :(
Kind Regards,
Micha
Nevertheless an error-message would be fine ;)
- Micha
>>
>>>>
>>>> On Fr 16 Sep 2011 15:10:33 CEST, Disconnect wrote:
>>>>>
>>>>> I'd be a lot more comfortable about updating if CI wasn't red and
>>>>> severely outdated.. (Sept 4)
>>>>>
>>>>> On Thu, Sep 15, 2011 at 8:50 PM, Mike Macgirvin<mi...@macgirvin.com>
>> wrote:
>>>>>>
>>>>>> Just made a few last minute adjustments and I think we're good to go.
>>>>>>
>>>>>> --
>>>>>> You received this message because you are subscribed to the Google
>> Groups "diaspora-dev" group.
>>>>>> To post to this group, send email to diaspo...@googlegroups.com.
>>>>& gt;> To unsubscribe from this group, send email to