XSF Discussion - 2018-03-26


  1. Ge0rG

    When is it legal to send a message _from_ a bare JID?

  2. jonasw

    Ge0rG, as a client, you can’t

  3. jonasw

    a server will do that when the message is "from the account", like MAM responses or PEP I think

  4. Ge0rG

    I'm receiving spam from a bare JID.

  5. jonasw

    what

  6. jonasw

    goofy server I’d say

  7. Ge0rG

    -version bnw.im

  8. Bunneh

    Ge0rG: bnw.im is running BnW version 0.1 on OS/360

  9. jonasw

    RFC 6120 is rather clear on that: 1. When a server receives an XML stanza from a connected client, the server MUST add a 'from' attribute to the stanza or override the 'from' attribute specified by the client, where the value of the 'from' attribute MUST be the full JID (<localpart@domainpart/resource>) determined by the server for the connected resource that generated the stanza (see Section 4.3.6), or the bare JID (<localpart@domainpart>) in the case of subscription-related presence stanzas (see [XMPP-IM]).

  10. Maranda

    Spam Server!

  11. jonasw

    I can’t into cyrillic

  12. jonasw

    seems to be some type of social network thing

  13. Maranda

    All the spam is into cyrillic.

  14. Maranda

    Looks like 4chan

  15. Ge0rG

    -ping jabber.org

  16. Ge0rG

    -ping conference.jabber.org

  17. Kev

    The host seems to not be reachable.

  18. jonasw

    yeah

  19. Ge0rG

    This is an example of why it's good to have our MUCs spread over multiple servers. We can still talk about downtime

  20. jonasw

    DMUC!

  21. jonasw

    or FMUC?

  22. jonasw

    did anyone think about how to integrate federation in an extension to MIX?

  23. Ge0rG

    BOMFUNK!

  24. jonasw

    or maybe just cluster MIX services

  25. jonasw

    Ge0rG, Boomfunk MCs?

  26. Steve Kille

    I've been thinking about FMIX, but I think we need to get "vanilla MIX" sorted first

  27. jonasw

    Steve Kille, agreed

  28. Kev

    J.org was going to be clustered, but we just never got around to it.

  29. jonasw

    Ge0rG, https://www.youtube.com/watch?v=ymNFyxvIdaM

  30. Ge0rG

    jonasw: one of my favorite pieces of 1990ies music.

  31. jonasw

    Ge0rG, :-)

  32. jonasw

    oh, too many os

  33. jonasw

    gotta fix that in my music library

  34. Bunneh

    Ge0rG: Ping failed (remote-server-not-found): Server-to-server connection failed: closed

  35. Bunneh

    Ge0rG: Ping failed (remote-server-not-found): Server-to-server connection failed: closed

  36. Ge0rG

    Wow, Bunneh has some serious timeout issues

  37. jonasw

    Ge0rG, it’s just diligent

  38. jonasw

    Ge0rG, just in case you host your server on your mobile phone.

  39. Ge0rG

    I was shocked to hear that conversations.im has a 60 seconds 0198 ack timeout

  40. jonasw

    that’s long or that’s short?

  41. intosi

    Those with IPv6 should be able to see c.j.o and j.o

  42. intosi

    Only the IPv4 connectivity seems to be dead.

  43. Ge0rG

    I'm dualstacked. In theory.

  44. jonasw

    hm,w eird

  45. jonasw

    I’m dualstacked in practice, but it doesn’t work

  46. jonasw

    into the debug logs!

  47. Ge0rG

    my prosody was keeping an s2s connection and failed to send data that way.

  48. Ge0rG

    after killing it, it retried ipv4, now ipv6.

  49. intosi

    My prosody was, as well.

  50. jonasw

    I blame the SRV records

  51. jonasw

    _xmpp-server._tcp.conference.jabber.org. 900 IN SRV 30 30 5269 hermes2.jabber.org. _xmpp-server._tcp.conference.jabber.org. 900 IN SRV 31 30 5269 hermes2v6.jabber.org.

  52. jonasw

    why separate records for v6 and v4, and why prefer v4?

  53. jonasw

    hm, my prosody does not try the next one after the first times out

  54. jonasw

    might be my old 0.9.x version though

  55. intosi

    There used to be too many clients with ipv6 issues in the past.

  56. jonasw

    intosi, servers, too?

  57. intosi

    IPv6 in general was an unhappier place five years ago, when these records were set up.

  58. jonasw

    maybe a change is due

  59. jonasw

    haven’t had issues (I know about) with dual-stacked records

  60. intosi

    Quite likely.

  61. jonasw

    this would be a good time for change ;-)

  62. intosi

    There used to be a lot of Teredo links, a lot of them barely functioning.

  63. jonasw

    that makes it a bit more funny that the v4 route aborts at an HE router…

  64. jonasw

    also, turns out, grepping for jabber.org in debug logs isn’t htat useful. "[…]xmlns:stream='http://etherx.jabber.org/streams'[…]" and the likes

  65. Ge0rG

    Mar 26 10:13:25 s2sout56531734a4f0 debug sending: <db:result to='conference.jabber.org' from='yax.im'> Mar 26 10:13:25 s2sout56531734a4f0 debug sent dialback key on outgoing s2s stream And then nothing happens.

  66. Ge0rG

    So it looks like dialback is never completed, then timeouts

  67. Andrew Nenakhov

    jonasw, I can into Cyrillic but this one is not meant to be easily understood by normal people

  68. Ge0rG

    intosi, Kev: are you interested in further debugging why s2s over ipv6 still fails?

  69. intosi

    Ge0rG: thanks for the offer, but I can fully reproduce the issue myself at the moment.

  70. intosi

    It appears that hermes2, the host running jabber.org, has its IPv4 traffic blocked at its gateway.

  71. intosi

    Not blocked, but blackholed.

  72. Ge0rG

    Your ISP switched you to DS-Lite, silently :P

  73. intosi

    That might be the result of excess ingress or egress connections earlier, I haven't checked yet.

  74. Tobias

    Ge0rG, it's hard to get large packets as IPv6 through the big walls of a bunker

  75. intosi

    The IPv6 packets are actually getting through ;)

  76. intosi

    It's the tiny IPv4 packets that are filtered out :D

  77. Ge0rG

    Tobias: I didn't know j.o is running on Bulletproof Hosting.

  78. Ge0rG

    maybe they are too small to swim alone, and j.o is hosted on Sealand instead?

  79. jonasw

    Ge0rG, winfried: +10min for me

  80. pep.

    !

  81. Williams W

    ?

  82. Williams W

    hello

  83. MattJ

    Hello

  84. pep.

    Hello

  85. Williams W

    china ?

  86. Williams W

    im china~

  87. Williams W

    `

  88. winfried

    Hi,

  89. winfried

    sorry for being a bit late, had to fetch my luunch ;-)

  90. pep.

    winfried, !

  91. Ge0rG

    I haven't had lunch yet.

  92. pep.

    jonasw said +10mn apparently

  93. pep.

    It's still 11am for me :-°

  94. winfried

    pep.: I know

  95. winfried

    (about jonasw )

  96. winfried

    Shall we start and check with jonasw when he joins us?

  97. Seve/SouL

    Some meeting going on now?

  98. winfried

    Seve/SouL: GDPR & XSF meeting

  99. pep.

    I guess we can wait a bit, it's already 9

  100. winfried

    also good ;-)

  101. pep.

    I guess we can wait a bit, it's already :09

  102. jonasw

    I'm close

  103. jonasw

    here I am

  104. pep.

    !

  105. winfried

    welcome, should someone bang a gafel?

  106. pep.

    Sure

  107. pep.

    Ge0rG, jonasw, winfried, pep.!

  108. pep.

    *bang*

  109. jonasw

    so, I‘ve got a few things

  110. winfried

    ;-)

  111. winfried

    I think there are three questions at hand: Q1) What consequences does the GDPR has for the Jabber network and Jabber server operators and what can/should do the XSF with that? Q2) What consequences does the GDPR has for the XSF run Jabber server? Q3) What consequences does the GDPR has for the work processes of the XSF itself (membership, voting, wiki etc)?

  112. jonasw

    if it’s okay, I‘ll just dump a few notes I took during a talk about GDPR for self-hosters at the chemnitzer linux tage

  113. winfried

    jonasw: go ahead!

  114. jonasw

    it’s mostly a random collection of stuff which I felt was important

  115. jonasw

    first some key articles about the rights of the subjects of the data: art. 13, 14, plus possibly 7, 15, 12, 16, 17, 21 and 20

  116. Ge0rG

    Yes please. I also had a talk with out GDPR expert regarding self-hosting, so we should be able to align those

  117. jonasw

    there are rights for transfer of data between providers, in article 20

  118. jonasw

    some risk management articles: 5, and consent in 7 and 8, with proof

  119. jonasw

    and the articles about notifying about data breaches, 33 and 34

  120. jonasw

    and something about a directory of data stored, processed and shared supposedly detailed in article 30

  121. jonasw

    as I mentioned, those are really just quick notes I took, I haven’t had the chance to look deeply into this. Those are the articles I plan to have a deeper look, and which might be most relevant. but IANAL

  122. jonasw

    for the german folks: the speaker said that most of the GDPR has been german law for ages already, so germans have even less of an excuse ;-)

  123. jonasw

    end-of-dump

  124. Ge0rG

    winfried: do you want to chair this? Maybe we should split the three questions from Q1 into individual ones, and also put https://trello.com/c/t79C3Yds/307-gdpr-advice on the agenda

  125. jonasw

    we might also want to look very closely at the legal definitions of Controller and Processor and Join Controller etc.

  126. winfried

    Ge0rG: if jonasw and pep. don't mind me chairing, yes

  127. jonasw

    as well as the intent, which isn’t defined clearly

  128. pep.

    winfried, sure

  129. jonasw

    the speaker mentioned that the intent as well as the separation of controller and processor or something can make a huge difference. he for example assumed that their company wasn’t affected much because while they have their users data (as a hoster), they do not directly work with that (so no intent of usage) and thus they’re not affected

  130. jonasw

    he was from hostsharing.net fwiw (german)

  131. Ge0rG set the topic to

    XSF GDPR Meeting | Logs: http://logs.xmpp.org/xsf/ | Agenda https://trello.com/b/Dn6IQOu0/board-meetings

  132. winfried

    I propose to take step beck: there is the legal discussion about things like jurisdiction, processor/controller, legal ground for processing, risk of data, transfer etc

  133. winfried

    but there is also a question about cooperation with the IETF for example on this

  134. Ge0rG

    winfried: the IETF is facing the same problems we are?

  135. winfried

    Ge0rG: possibly, the IETF was mentioned in the mail to the board

  136. jonasw

    (because someone mentioned it here, actually.)

  137. Ge0rG

    winfried: do we know who at the IETF is working on it?

  138. winfried

    I have no idea

  139. Ge0rG

    (how) should we collaborate with them?

  140. Ge0rG

    Somebody needs to find out and contact them then

  141. winfried

    who takes notes? I see a to-do here ;-)

  142. Ge0rG

    we need a minute taker!

  143. winfried

    :-P

  144. pep.

    Can do, that'll force me to understand what's been said

  145. Ge0rG

    Sorry, I'm 120% busy with work, so this is borrowed time already.

  146. jonasw

    this seems to touch on Q3 and I’d like to challenge the premise of that

  147. Ge0rG

    pep.: :+1:

  148. winfried

    jonasw: this may touch Q1 too

  149. winfried

    jonasw: can you elaborate your challenge?

  150. jonasw

    to my knowledge, the XSF does not handle non-public data

  151. jonasw

    voting may be the only exception

  152. jonasw

    the MUCs are public, the wiki is public

  153. jonasw

    the only non-public data aside from voting *may* be the email adresses used for wiki accounts; which aren’t sensitive according to article 9 (1), so much less relevant.

  154. winfried

    jonasw: and the e-mail adresses are inherent to the service provided. Still we can question if the GDPR is applicable to the XSF at all

  155. jonasw

    (one could construe that voting data are "political opinions" though)

  156. jonasw

    winfried, that’s another matter, indeed

  157. jonasw

    but even if it does apply, I don’t think it matters

  158. Ge0rG

    email addresses are not sensitive, but they are personal data. So we _are_ storing personal data.

  159. winfried

    But to apply to become a member, I have to state my real name on a public wiki and I have to include my employer (and contact data). Are there any rules about how long that should be stored / stay public?

  160. pep.

    jonasw, does everything on the member application fall under 9.1?

  161. pep.

    fullname, email, employer, etc.

  162. pep.

    Though these pages are public indeed

  163. jonasw

    pep., the member application (like everything else on the wiki) is covered by article 9 (2) e) I think

  164. jonasw

    > processing relates to personal data which are manifestly made public by the data subject;

  165. pep.

    hmm, is it really email we ask for on the membership or JID?

  166. Ge0rG

    Wiki accounts can be created by non-members, so their email address is not published by themselves.

  167. jonasw

    pep., email is needed for a wiki account

  168. Ge0rG

    pep.: both

  169. winfried

    jonasw: yes, I think it is 9.2, but is that the right discussion to have right here right now?

  170. Ge0rG

    winfried: you are the chair!

  171. jonasw

    winfried, dunno, I answered pep.s question :)

  172. pep.

    Sorry, just for the notes

  173. winfried

    :-)

  174. winfried

    Ok, then I make a procudural proposal:

  175. winfried

    I popsted 3 issues

  176. winfried

    I think we should take each of them and inventise how big the potential problem is and what research we still need to do

  177. Ge0rG

    winfried: yes. also please split up Q1.

  178. jonasw

    winfried, okay

  179. jonasw

    make a headline and we’re good to go :)

  180. winfried

    and then try to make a (preliminary) assesment of a good strategy

  181. pep.

    Agreed, we should split Q1

  182. winfried

    *** Q1 ***

  183. winfried

    proposals to split?

  184. Ge0rG

    winfried: Q1.1 What consequences does the GDPR has for the Jabber network Q1.2 ... and Jabber server operators Q1.3 ... and what can/should do the XSF with that?

  185. pep.

    Also Q2 goes into Q1.2 doesn't it?

  186. Ge0rG

    pep.: Q2 depends on Q1.2

  187. winfried

    yes

  188. pep.

    k

  189. winfried

    *** Q1.1 ***

  190. jonasw

    Q1.1 raises the question of how consent works in a federated network.

  191. jonasw

    we have no idea.

  192. Ge0rG

    jonasw: wait, what? elaborate that please

  193. winfried

    I think it is good to follow the line: a is it in the GDPR jurisdiction, what data is

  194. jonasw

    Ge0rG, I send you a message. you have MAM which stores forever. I never consented to your servers MAM storage.

  195. pep.

    I think he's referring to the questions he raised for the previous board

  196. winfried

    b what data is processed

  197. winfried

    c what processing is done

  198. winfried

    (forgetting about responsible party/processer)

  199. winfried

    d what ground does the processing have

  200. winfried

    e possible consequences

  201. Ge0rG

    winfried: (a) processing data of users in the EU requires GDPR compliance. Maybe also processing of data inside the EU, regardless of where the users are.

  202. jonasw

    winfried, what is "it" in your (a)?

  203. Ge0rG

    winfried: so basically all servers that are not geo-locked to exclude the EU fall under GDPR

  204. winfried

    jonasw: good question in a federated network

  205. winfried

    I think we should regard each server as its own legal entity, and the federation as a kind of processing (exchanging data)

  206. Ge0rG

    I think it makes sense to define the roles as well. An XMPP server operator is a "controller", and whoever does the hosting and other services for them is a "processor"

  207. winfried

    Ge0rG: +1

  208. Ge0rG

    winfried: we have strong parallels to email. I agree with your conclusion regarding server = legal entity

  209. pep.

    Hmm, that doesn't fit with what you said winfried

  210. winfried

    pep.: ?

  211. pep.

    You said "exchanging data", would that fit into "transfering data", and not "processing" per se

  212. Ge0rG

    I suggest we first focus on a single server before widening up to federation

  213. pep.

    k

  214. pep.

    The c2s-only case is a lot more straightforward

  215. winfried

    pep.: (breaking my head, is transfering / exchangeing legally seen also a kind of processing, let that discussion dangle for a moment)

  216. winfried

    Ge0rG: +1

  217. winfried

    Ge0rG: on your: "Maybe also processing of data inside the EU, regardless of where the users are. " - I think we can safely say yes in that one

  218. winfried

    though not cast in iron, the first opinions point in that direction

  219. jonasw

    Ge0rG, winfried, alternatively, in the case of MAM, we could argue that the User is the Controller and the server doing the storage is the Processor.

  220. Ge0rG

    winfried: I've heard different opinions on that, we should say "probably yes"

  221. Ge0rG

    jonasw: no!

  222. jonasw

    Ge0rG, why?

  223. winfried

    we should also add a non-EU server targeting EU-citizens

  224. winfried

    jonasw: as far as I know the user can't be the controller, just the data subject...

  225. Ge0rG

    winfried: non-EU server targeting EU-citizens must also comply with GDPR

  226. winfried

    Ge0rG: yes

  227. Ge0rG

    so we've got (a) now, up to (b)?

  228. winfried

    yes, please ;-)

  229. winfried

    does a xmpp server (c2s) process personal data? I think that is a yes too:

  230. jonasw

    this is a strong YES

  231. winfried

    jid as identifyer

  232. jonasw

    it is even sensitive data according to article 9 (1), I’m pretty sure.

  233. winfried

    ip-adresses

  234. Ge0rG

    A server is storing a users' JID and login credentials, roster content (with names), bookmarks, offline/MAM history

  235. jonasw

    http upload, too

  236. Ge0rG

    jonasw: I don't think it's sensitive.

  237. jonasw

    avatar and vcard are "meant to be public"?

  238. jonasw

    Ge0rG, depends on the message content, doesn’t it?

  239. jonasw

    you have to assume it is

  240. Ge0rG

    jonasw: I'm not sure this is how it works.

  241. jonasw

    why not?

  242. winfried

    think it is good to distrinc here between the data that is structurally collected and data like the content that is forwarded/stored

  243. Ge0rG

    jonasw: I assume that art9 applies if you collect sensitive data from users, not if they give it to you without you asking

  244. jonasw

    Ge0rG, any source for that?

  245. winfried

    is anybody aware of an analyses of the status of communication services within the GDPR?

  246. pep.

    Ge0rG, I'd say any <message> almost, rather than MAM? or "history" in general (nit)

  247. jonasw googles

  248. jonasw

    > How Cloud Communications Can Help You Comply With GDPR

  249. jonasw

    oh my god

  250. Ge0rG

    jonasw: I would argue as follows: the user uploads the data because they want you to forward it to the receipient, so there is a art6 §1 d or f legitimate interest

  251. winfried

    I think we can use the pictures analogy here: you can find out if people have certain diseases from a picture, but pictures aren't sensitive data until you analyse them

  252. jonasw

    Ge0rG, I thought that Article 9 (1) overrides that.

  253. Ge0rG

    jonasw: you can't google that. don't even try "email gdpr"

  254. jonasw

    mind that article 9 (1) is not (only) a definition, but a "shall be prohibited" and only (2) defines exceptions for that.

  255. pep.

    Ge0rG, though jingle-ft could be used for that, most of the time

  256. winfried

    storing and forwarding a (very) personal chat may keep us out of 9.1 as long it isn't analysed / indexed on words as 'sex'...

  257. pep.

    The legitimacy of server-side component lies for offline delivery, and groupchats(?)

  258. Ge0rG

    (a) the data subject has given explicit consent to the processing of those personal data

  259. jonasw

    winfried, pictures are explicitly handled in the reasoning though

  260. jonasw

    winfried, pictures are explicitly handled in the recitals though

  261. jonasw

    so maybe that analogy doesn’t work

  262. jonasw

    > The processing of photographs should not systematically be considered to be processing of special categories of personal data as they are covered by the definition of biometric data only when processed through a specific technical means allowing the unique identification or authentication of a natural person.

  263. winfried

    jonasw: true

  264. Ge0rG

    That's actually a good analogy.

  265. jonasw

    Ge0rG, regarding Art. 9 (2) a): exactly, which is why I said we need a way to make users express consent for that.

  266. jonasw

    and server operators need a way to be sure of that to an extent where they can blame others if the recorded statement is false

  267. Ge0rG

    So we have the meta-data actually requested by the XMPP server: JID, name(?), email(?), IP address(es)(?)

  268. Ge0rG

    this meta-data is not sensitive.

  269. jonasw

    note that "storing" is a subset of processing.

  270. Ge0rG

    and we have the actual data that's sent by the user, which is stored / processed. As long as we don't do racial profiling on that, it's not sensitive either.

  271. pep.

    jonasw, true

  272. jonasw

    I’m not convinced

  273. jonasw

    Ge0rG, I think it must still be declared and the user must still consent for storage at least, because of the risk of data breaches.

  274. Ge0rG

    jonasw: wait, are you still talking of art9?

  275. jonasw

    I think so

  276. Zash

    Analyzing for SPAM, does that matter?

  277. Ge0rG

    jonasw: I agree regarding the general requirements of the GDPR, but not art9

  278. winfried

    Zash: yes

  279. Ge0rG

    Zash: not for art9, I'd say. Unless your SPAM detector is a Jew detector in practice.

  280. jonasw

    Ge0rG, it might be a sexual content detector in practice.

  281. jonasw

    for email at least.

  282. pep.

    or a cyrillic detector

  283. pep.

    :-°

  284. Ge0rG

    jonasw: I think the only viable reason to run a sexual content detector is to block the latter, in which case GDPR does not apply?

  285. winfried

    Ge0rG: not 'in practice' but explictely

  286. winfried

    I have a feeling that as long as we don't analyse data (content AND metadata) on patterns that indicate categories from art 9.1, 9.1 is not appliccable

  287. jonasw

    winfried, I like that idea. I’m not sure on that though. It would be good to get legal advice on this.

  288. jonasw

    this might be focused enough to actually get an answer to.

  289. jonasw

    but what do I know.

  290. winfried

    pep.: I see a to-do ;-)

  291. pep.

    yep

  292. pep.

    so any kind of mod_firewall trickery will probably get us off that safe land?

  293. pep.

    What's meant by "analyse" here exactly

  294. pep.

    Also, "from art 9.1, 9.2", right?

  295. jonasw

    analyze to an extent where you could say "this person would elect Democrats in the next election"

  296. jonasw

    (or similar statements about the other sensitive attributes mentioned in 9.1)

  297. winfried

    or 'this person has sex once a month'

  298. pep.

    k

  299. Zash

    Not the things needed for routing, right

  300. winfried

    Zash: exactly

  301. pep.

    Zash, depends? Maybe you'll route differently if they have sex more often

  302. pep.

    Anyway, going on?

  303. winfried

    yes

  304. pep.

    That's b and c "sorted"?

  305. pep.

    For the C2S case

  306. pep.

    Maybe c not entirely "what processing is done", we could maybe list a few common cases

  307. winfried

    I think we can safely say a XMPP server operator is a controller (not the hoster)

  308. jonasw

    I think what we *at the very minimum* learn from this given the technical means in the Jabber network is: you absolutely must not do any kind of data mining on message content which might come from federation.

  309. pep.

    winfried, agreed on that

  310. winfried

    jonasw: agree

  311. pep.

    jonasw, why especially federation

  312. jonasw

    pep., because federated users cannot consent

  313. jonasw

    you could get consent from your local users

  314. pep.

    I see

  315. winfried

    do we have a clear idea of the data collected and processed in a xmpp server?

  316. jonasw

    and operators might fall for "I got consent from my users, so I’m fine with processing their messages" but that’s in fact false because you’d need consent from the senders too

  317. jonasw

    winfried, I think Ge0rG gave a list earlier

  318. pep.

    I have listed: - JID - login credentials - roster content (with names) - bookmarks - "history" (offline/MAM)

  319. jonasw

    roster, timestamp of last available presence, mam, offline messages, http upload, in-flight messages

  320. jonasw

    ah

  321. pep.

    Ah right presence

  322. jonasw

    pep., add "timestamp of last available presence"

  323. jonasw

    and in general presence is saved transiently to anwser probes

  324. winfried

    logfiles with connection data

  325. pep.

    winfried, as in? IP? (re private data)

  326. jonasw

    http upload, too

  327. jonasw

    pep., timestamps and IP, yes

  328. pep.

    jonasw, or any kind of server-side component storage files?

  329. pep.

    storing*

  330. jonasw

    pep., yeah

  331. jonasw

    MUC history, too

  332. winfried

    also PEP data

  333. pep.

    MUC history, only applying to private MUCs?

  334. jonasw

    PEP is by default public

  335. Ge0rG

    would it make sense to put all that under "user content"?

  336. jonasw

    probably

  337. winfried

    except for the logfiles

  338. jonasw

    login credentials are hardly user content, too

  339. Ge0rG

    what about the roster?

  340. winfried

    jonasw: agreed, they may have a different legal status

  341. Ge0rG

    I think that roster / bookmarks are special, but (actual) PEP, MAM, offline, HTTP-Upload is all user content

  342. jonasw

    why are roster and bookmarks special?

  343. Ge0rG

    jonasw: PII, passwords

  344. jonasw

    are bookmarks PII?

  345. Ge0rG

    "Georg's private Sex Toys Chat"

  346. jonasw

    ah, I forgot about that one ;-)

  347. jonasw

    but isn’t that like message content?

  348. Ge0rG

    jonasw: not sure.

  349. winfried

    jonasw: I think so

  350. jonasw

    Ge0rG, why would it be different from message content?

  351. Ge0rG

    so we have: - credentials - user content (roster, bookmarks, PEP, messages, files) - server logs

  352. winfried

    +1

  353. jonasw

    Ge0rG, timestamp of last presence isn’t user content though

  354. Ge0rG

    jonasw: "server logs"?

  355. jonasw

    kinda, but it’s shared to peers

  356. Ge0rG

    so we have: - credentials - user content (roster, bookmarks, PEP, messages, files) - user metadata (IPs, last activity, ...) - server logs

  357. jonasw

    yeah, I’d like to have this separate, because you’re not "safe" as operator just because you turned off logging.

  358. winfried

    user metadata also includes data on the xmpp client

  359. pep.

    server logs can include all the above though

  360. Ge0rG

    winfried: what does an xmpp server store about the client?

  361. pep.

    server logs do include all the above though

  362. jonasw

    Ge0rG, entity caps, which may allow mapping to disco#info, which may inclued software and OS version

  363. jonasw

    probably neither sensitive nor PII

  364. jonasw

    pep., not credentials, I hope :)

  365. winfried

    jonasw: it can show when I am at home, at my laptop or only on the mobile

  366. Ge0rG

    I'd argue that server logs fall under http://www.privacy-regulation.eu/en/r49.htm

  367. winfried

    it may also show when my connected sex toy is online...

  368. pep.

    jonasw, if scram then no, otherwise I could imagine it being in there

  369. Ge0rG

    winfried: your resource string is either user-data or user-metadata

  370. jonasw

    winfried, I think that’s user content/message content though because clients usually do that by themselves by asking for your disco#info. nothing special is done by the server here.

  371. jonasw

    (unless it does caps optimization, in that case see above)

  372. jonasw

    pep., if a server ever logs a password sent with PLAIN, report that as a bug

  373. jonasw

    even a SCRAM exchange shouldn’t be logged imo.

  374. pep.

    For debug purposes, for example

  375. jonasw

    pep., there’s no reason to log passwords for debug reasons.

  376. jonasw

    but we digress I thnik

  377. jonasw

    Ge0rG, but only for limited time. a proper logrotate would have to be in pace

  378. jonasw

    Ge0rG, but only for limited time. a proper logrotate would have to be in place

  379. winfried

    I think: - credentials - user content (roster, bookmarks, PEP, messages, files) - user metadata (IPs, last activity, ...) - server logs is a good devision, because it devides the data in different legal categories

  380. jonasw

    winfried, I agree (not that I knew about which legal categories there are)

  381. Ge0rG

    jonasw: I don't see a time limitation in R49

  382. jonasw

    Ge0rG, to the extent strictly necessary and proportionate

  383. jonasw

    I think it’s hard to argue that you need to store full prosody debug logs for 2y for example.

  384. Ge0rG

    jonasw: good point

  385. winfried

    credentials: by creating these, you may implilcitly give permission for processing pii by the service

  386. jonasw

    I don’t think there’s such a thing as implicit consent

  387. Ge0rG

    So we have (b) covered as well now.

  388. jonasw

    in GDPR at least

  389. winfried

    user content: limit discussed earlier

  390. winfried

    user metadata: as user contant, possible different limitations

  391. winfried

    server logs r49, with limitations as above

  392. pep.

    what's this r49 exactly, let me find it

  393. Ge0rG

    winfried: what about (c), what processing is done? is that implicitly clear?

  394. Ge0rG

    pep.: http://www.privacy-regulation.eu/en/r49.htm

  395. jonasw

    Ge0rG, https://gdpr-info.eu/art-30-gdpr/

  396. jonasw

    that’s probably most relevant regarding (c)

  397. jonasw

    wait, I might be confused

  398. winfried is waiting

  399. jonasw

    ah

  400. jonasw

    don’t wait though

  401. jonasw

    in any case, taht article is relevant, probably not for (c) though

  402. jonasw

    or maybe it is :)

  403. jonasw

    i just lost all context

  404. winfried

    jonasw: I don't understand the coffee cup my client is showing me...

  405. Ge0rG

    winfried: your client is broken, it replaces letters in braces by pictures of things

  406. jonasw

    '( c )'

  407. Ge0rG

    winfried: b = beer, c = coffee

  408. Ge0rG

    dunno about a=(a)

  409. pep.

    c) is what processing is done. For that atm I have a quote from winfried, "we should not analyse data (content and metadata) on patterns that indicate categories from art 9.1 and 9.2", and then jonasw's "you absolutely must not do any kind of data mining on message content which might come from federation"

  410. pep.

    We haven't done b) for the S2S case, we'll get to that afterwards?

  411. winfried

    pep.: correct

  412. winfried

    you can leave out the 'might come from federation' part

  413. jonasw

    winfried, you *can* do data maning if you got consent from your users -- but not on federated messages

  414. jonasw

    unless you do some captcha thing

  415. jonasw

    I feel that’s important to mention

  416. pep.

    jonasw, more details on the captcha thing?

  417. Ge0rG

    my take: - credentials: stored as long as the account exists, limited further processing (check user JID against well-know spammer patterns) - user content: stored as long as the account exists (roster, bookmarks, PEP) / for a limited time (messages, http upload)

  418. jonasw

    not that I’d condone data mining of any kind, but if an operator chooses to do so with consent of their users, they have to restrict to non-federated.

  419. winfried

    jonasw: I can also ask for consent from federated users

  420. jonasw

    pep., like, on the first message from a federated user, hold that message and make the federated user click a button on a website with terms of services for all messages sent to that domain.

  421. jonasw

    winfried, yes, but harder

  422. jonasw

    because they don’t sign up.

  423. jonasw

    and it might not be obvious

  424. Ge0rG

    I think we should focus on what processing is technically required, what is typical and not focus on special cases of user-targeting

  425. winfried

    jonasw: yes, so it is an administrative / technical issue, but legally it seems the same to me

  426. jonasw

    Ge0rG, +1

  427. Ge0rG

    also please keep federation out yet

  428. winfried

    Ge0rG: +1

  429. jonasw

    I think that federation is the most tricky part though ;-)

  430. winfried

    jonasw: +1

  431. Ge0rG

    jonasw: maybe it's not.

  432. Ge0rG

    so can we get back to minimal and typical please?

  433. pep.

    agreed with Ge0rG's split for b)

  434. Ge0rG

    credentials: minimal = store as long as the account exists | typical = spam bot detection user metadata: minimal = store during connection | typical = store with account, spam detection, expose to other users (last activity)

  435. jonasw

    "typical = spam bot detection" for credentials?

  436. jonasw

    do you store plaintext passwords to detect spam bot??

  437. jonasw

    do you store plaintext passwords to detect spam bots?

  438. pep.

    localpart or server I guess

  439. pep.

    Ah wait, not server, just localpart for c2s

  440. Ge0rG

    user content: minimal = roster,bookmarks with account, PEP in RAM only, offline messages until first client connects | typical = with account, MAM/files for a given amount of time

  441. Ge0rG

    jonasw: I'm checking usernames against patterns

  442. jonasw

    Ge0rG, right

  443. jonasw

    I was thinking about storage only, you were (rightfully so) thinking about processing

  444. pep.

    (brb, 1 minute)

  445. winfried

    Ge0rG: I like that list

  446. Ge0rG

    - server logs: minimal = no logs | typical = some days / weeks of logrotate, maybe with IP addresses / message metadata. I'm storing debug logs for two weeks plus additional spam detection logs

  447. Ge0rG

    addenum for user metadata/typical: IP address of registration / of last login

  448. Ge0rG

    storage of ^

  449. winfried

    and I nothing that is disproportional or outside reasonable user expectation

  450. Ge0rG

    Somebody should wifiky that. Or put it into a proper table

  451. winfried

    Ge0rG: our notekeeper is afk ;-)

  452. Ge0rG

    Sorry, I've vastly exceeded my timebox for this conference, and I need to catch up. I'm semi-AFK now while you figure out the legal grounds beyond R49

  453. pep.

    !

  454. pep.

    I'm also usually storing debug logs on the server, and rotating them

  455. winfried

    lets see where we are now, I have to leave in 20 minutes too

  456. winfried

    we have come quite far with the c2s part of Q1.1

  457. pep.

    Yeah, this last bit was d)

  458. pep.

    For C2S

  459. winfried

    still have the tough issue of s2s (federation) open

  460. pep.

    Ge0rG, "PEP in RAM", some server provide persistency here, and soon(tm) prosody as well. I would just put that with roster/bookmarks

  461. pep.

    Ge0rG, "PEP in RAM", some servers provide persistency here, and soon(tm) prosody as well. I would just put that with roster/bookmarks

  462. Ge0rG

    winfried: I have some information on federation, but I think we should make a follow up appointment

  463. winfried

    Ge0rG: +1

  464. pep.

    Agreed for the follow-up, I think we can summarize quickly and call it a day

  465. pep.

    There's already quite a lot of stuff to digest

  466. Ge0rG

    pep.: you volunteered to create a page on the wiki with the content table, I've heard... 😀

  467. pep.

    heh

  468. winfried

    pep.: I can help building the wiki page

  469. winfried

    can we set a new date?

  470. Ge0rG

    winfried: yes please

  471. pep.

    This week? Next week? How quick do you want to figure this out

  472. Ge0rG

    This week, some day, same time

  473. winfried

    pep.: I prefer a short, compact, traject

  474. pep.

    +2 days? (wed)

  475. winfried

    pep.: works for me

  476. Ge0rG

    WFM

  477. pep.

    jonasw,

  478. pep.

    I'll try to send minutes soon

  479. winfried

    pep.: great, thanks a lot

  480. Ge0rG

    pep.: yay!

  481. jonasw

    wednesday doesn’t work for me

  482. jonasw

    sorry, I was distracted

  483. pep.

    +3 days? +4 doesn't work for me

  484. jonasw

    I can’t make reliable statements about any day after wednesday until next weeks thursday

  485. Ge0rG

    Friday is so temptingly empty on the calendar...

  486. jonasw

    so the closest thing which would work would be tomorrow, ohterwise it’ll be best-effort on my side.

  487. winfried

    tomorrow works for me

  488. pep.

    I can do +4 but after 13CET. I can do +1 yes

  489. Ge0rG

    WFM too

  490. jonasw

    okay

  491. pep.

    ok, +1 day, 12CET

  492. jonasw

    12:15 CEST would be easier for me

  493. jonasw

    (as I learnt today)

  494. pep.

    ok, 12:15CET.

  495. jonasw

    CEST please

  496. winfried

    +1

  497. jonasw

    not CET.

  498. jonasw

    (like today)

  499. pep.

    Ah, oh

  500. pep.

    DST.

  501. Ge0rG

    pep.: CET will be again in half a year

  502. jonasw

    yeah.

  503. pep.

    Cool, +1 day 12:15CEST then.

  504. pep.

    *bang*

  505. jonasw

    thank you

  506. winfried applauses

  507. Ge0rG

    Thank *you*!

  508. winfried

    nice work guys!

  509. jonasw

    obligatory XKCD: https://xkcd.com/1883/

  510. pep.

    Wait so what time is now now in CEST land

  511. Ge0rG

    pep.: CEST

  512. winfried

    14:00

  513. Zash

    > 14:00:18 pep.> Wait so what time is now now in CEST land

  514. pep.

    cool

  515. pep.

    is it*

  516. pep.

    jonasw, :D

  517. winfried

    yeah, had a laugh on that one too... though I like the idea of california drifting of the mainland :-P

  518. Seve/SouL

    Was this meeting announced somewhere? I think I missed some information on this, didn't know this was going to happen

  519. winfried

    Seve/SouL: no, we just made the appointmet in this muc after last boardmeeting

  520. winfried

    Seve/SouL: do you want to be involved?

  521. Seve/SouL

    Thank you winfried, it's not like I can help on this topic :) Just wondering if I was missing important events. Do not worry, thank you very much :)

  522. jonasw

    It *should* have been announced on members@

  523. jonasw

    in the board meeting minutes

  524. jonasw

    but apparently the minutes haven’t been sent yet

  525. pep.

    btw, anybody knows where I can find more info about the derogation mentioned in https://gdpr-info.eu/recitals/no-13/

  526. jonasw

    pep., https://gdpr-info.eu/art-30-gdpr/ 30.5

  527. pep.

    jonasw, thanks

  528. pep.

    Now I'm not sure most services will fall under that derogation though.

  529. pep.

    "[..] unless [..] the processing is not occasional"

  530. pep.

    Ok I'll keep that for next time

  531. pep.

    > jonasw> some risk management articles: 5, and consent in 7 and 8, with proof What did you mean with "with proof"?

  532. Zash

    > 2. This Regulation does not apply to the processing of personal data: > (c) by a natural person in the course of a purely personal or household activity;

  533. Zash

    How does that relate to self-hosting?

  534. pep.

    Yeah I was wondering as well. Will add that to the questions. I guess that's good when you do it for yourself, or with people that also have access to the machine and take care of it (xmpp service)? And doesn't qualify if you start giving accounts to people who don't?

  535. jonasw

    pep., you probably need proof for consent

  536. Zash

    Has anyone figured out how to get consent over the Internet yet?

  537. Ge0rG

    Zash: [ ] I accept that you'll bend me over and take my virgi^W data

  538. jonasw

    my virginia drivers license? no way!

  539. winfried

    Self hosting is an interesting case too!

  540. Ge0rG

    winfried: self-hosting for yourself or for others?

  541. winfried

    > Has anyone figured out how to get consent over the Internet yet? Yes, there are quite clear cut rules for, technically not too complicated in matter of facts, de hardest part is asking the right question...

  542. moparisthebest

    that's been solved a long time, you just pop up a 15,000 word EULA asking for everything in a tiny window and an 'Accept' button right?

  543. winfried

    Ge0rG: both are interesting! Though when it among a collective of friends or family it will probably be the same case, but good to check

  544. winfried

    moparisthebest: that one has never been valid in the netherlands, if you can't download it in plain text or PDF, it was not legal and standard Dutch law applies!

  545. moparisthebest

    ctrl+c/ctrl+v downloaded in plain text and therefore legal

  546. Ge0rG

    reminds me of the first generation of Facebook export, where you got a 500 page PDF file containing all your data.

  547. winfried

    moparisthebest: nope, not valid here 😃

  548. edhelas

    Ge0rG you can add &exportformat=xml-xmpp to the FB export URL

  549. Ge0rG

    edhelas: I can't.

  550. Ge0rG

    edhelas: because I don't have a Facebook account, I will never know what Facebook logs about me.

  551. edhelas

    time to subscribe!

  552. Zash

    The mysterious Shadow Ge0rG

  553. flow

    https://tools.ietf.org/html/draft-tenoever-hrpc-research-05#section-5.2.6

  554. flow

    did the authors of this reach out to "us" (i.e. the xmpp community)?

  555. Zash

    -rfc 8280

  556. Bunneh

    Zash: Research into Human Rights Protocol Considerations. N. ten Oever, C. Cath. October 2017. (Status: INFORMATIONAL) https://tools.ietf.org/html/rfc8280

  557. Zash

    https://tools.ietf.org/html/rfc8280#section-5.2.3.4

  558. edhelas

    https://takeout.google.com/

  559. Zash

    Wait what

  560. Zash

    > While the protocol does not specify that the resource must be exposed by the client's server to remote users, in practice this has become the default behavior.

  561. Zash

    Well I suppose you can do without presence, but uh

  562. daniel

    Wait. So telling your contacts that you are available is a bad thing now?

  563. Zash

    flow: I'm not sure I immediately associate any of the authors or thanked people to XMPP

  564. Ge0rG

    daniel: doesn't your client show a GDPR disclaimer before you accept a subscription?

  565. daniel

    The death of pars

  566. Ge0rG

    j.o is still down.

  567. Zash

    -ping jabber.org

  568. Bunneh

    Zash: Pong from jabber.org in 4.463 seconds

  569. Ge0rG

    What? Why?

  570. Ge0rG

    Oh, poezio won't auto-rejoin on its own. Sorry.

  571. Zash

    Because IPv6

  572. Zash

    Only Legacy IP is affected.

  573. Ge0rG

    Zash: s2s IPv6 failed today as well. I blame prosody

  574. Ge0rG

    | -> conference.jabber.org [s2sout56531a7fbce0] (authenticated) (encrypted) (IPv6) | <- conference.jabber.org [s2sin5653218deb10] (authenticated) (encrypted)

  575. Ge0rG

    There is an interesting discrepancy.

  576. moparisthebest

    firewall is blocking incoming ipv4 but not outgoing ipv4

  577. Zash

    DoS protection or something?

  578. Ge0rG

    DoS-by-DoS-protection.

  579. intosi

    No, firewall blocks ipv4 the main address, both ingress and egress.

  580. intosi

    I added temp a secondary IP.

  581. Ge0rG

    Ah, that also explains why it didn't work at all in the beginning.

  582. Ge0rG

    I suppose the fallback to IPv6 egress didn't happen?

  583. intosi

    It kinda did, but not entirely.

  584. Ge0rG

    We really need better debugging tools. Something like a dynamic log where we can easily filter by JID

  585. Ge0rG

    Maybe I need to dump all my prosody logs into something like kibana or elasticsearch.

  586. MattJ

    I was looking into elasticsearch for MAM...

  587. MattJ

    I think it's overkill though

  588. Ge0rG

    MattJ: not for MAM, for log analysis

  589. MattJ

    I know, my message was semi-unrelated

  590. Kev

    I put my logs into elasticsearch for a while and didn't find any use for it so stopped.

  591. Ge0rG

    it would be great to have a mod_log_json which would dump structured records of each event via some socket interface

  592. Zash

    Was dog-something related to logs, or just stats?

  593. Ge0rG

    Kev: yesterday I sent a message to a MUC on my server from my mobile client, and it was rejected. As I don't have logs from the mobile, there is no way to find out what happened now.

  594. MattJ

    Zash, Datadog added log support recently (it might still be in beta, not sure)

  595. Kev

    Ge0rG: Me not finding a use for something and it not being useful aren't quite the same thing. Despite me obviously being the center of the world.

  596. Ge0rG

    Kev: let me remind you of H2G2.

  597. Maranda

    H2G2

  598. Maranda

    🤔 🤔 🤔 🤔

  599. Ge0rG

    -EEMOJIOVERFLOW

  600. edhelas

    let's remove emojis support from XMPP ;-)

  601. Ge0rG

    let's remove Maranda support from xsf@ :PP

  602. Zash

    ASCII-only

  603. intosi

    stty -emoji ?

  604. Maranda

    -E_STOPUSINGCONSOLECLI_PROBLEM_SOLVED

  605. Maranda

    :P

  606. edhelas

    with XHTML-IM I can send images to all the XMPP clients, so ASCII-only will do

  607. Ge0rG

    My console has a perfect two-way mapping of Unicode Emoji to ASCII. It only ever failed on foo:iq:bar

  608. Maranda

    Ge0rG, and male emojis *coughs*

  609. Maranda has good memory.

  610. Maranda ... for now :P

  611. pep.

    Zash, can you reply to the minutes I just sent for your question earlier?

  612. pep.

    Under Q1.1.a I guess

  613. pep.

    (re personal/household activity)

  614. Ge0rG

    Are <stanza-id> elements mandatory in MUC history playback on a MAM-enabled MUC?

  615. Zash

    Please wait for food coma to subside

  616. Zash

    pep.: Please wait for food coma to subside

  617. Ge0rG

    pep.: to the time machine! 😁 > Date of Next: 2018/03/17

  618. pep.

    ah merde

  619. Ge0rG

    pep.: let me read the whole thing before you send out an update :D

  620. pep.

    k

  621. pep.

    We do cover c) with some stuff in b), I guess I could have split that

  622. Ge0rG

    pep.: okay, everything else is fine with me :)

  623. Ge0rG

    pep.: thanks for taking minutes, and it's nice to see the conscise form of the discussion

  624. pep.

    :)

  625. Ge0rG

    pep.: maybe members@ is not the right venue, though

  626. jonasw

    I feel it is the righter venue than standards@

  627. pep.

    Yeah I was wondering, I'm not sure

  628. Ge0rG

    jonasw: what do you feel is the most rightest one?

  629. pep.

    But I don't think it should be in standards. if any I would have put that in operators as well maybe

  630. jonasw

    I think members@ is a good start for now

  631. jonasw

    we might want to cross-post to operators@ at some point.

  632. pep.

    :)

  633. jonasw

    pep., hmm, now that I think of it, getting people from operators@ on board could be a good idea

  634. jonasw

    pep., could you forward the mail to operators@ with a fixed dat?

  635. jonasw

    pep., could you forward the mail to operators@ with a fixed date? maybe someone will show up.

  636. pep.

    Sure

  637. Zash

    Phew

  638. Ge0rG

    Zash: you are the one with the conversion magic skills. I'm looking for a way to convert https://datatracker.ietf.org/doc/draft-ietf-mile-xmpp-grid/ into something I can read on a mobile device

  639. Zash

    Ge0rG: How is the HTML?

  640. jonasw

    Ge0rG, xml2rfc --raw?

  641. Ge0rG

    Zash: it sucks.

  642. Ge0rG

    It's like ASCII text, but with added references.

  643. Zash

    And the text/plain?

  644. Zash

    Hm

  645. jonasw

    hm, --raw isn’t great

  646. Zash

    xml2rfc had a better html output when I tried it the other day

  647. Ge0rG

    I want something like epub, where the text reflow is controlled by the client UI in accordance with my font settings and viewport size.

  648. MattJ

    It has ASCII diagrams in it

  649. Ge0rG

    MattJ: I can live with horizontal scrolling on those.

  650. Zash

    Ge0rG: How is this on your device? https://xmpp.org/rfcs/rfc6120.html

  651. jonasw

    Ge0rG, xml2rfc --html

  652. Zash

    That's (I think) what you get from `xml2rfc --html`

  653. jonasw

    Ge0rG, https://sotecware.net/files/noindex/draft-ietf-mile-xmpp-grid-05.html example

  654. jonasw

    the width is set dynamically

  655. jonasw

    (it is just a max-width)

  656. Ge0rG

    https://upload.yax.im/upload/2D5IcQiw14tuMVQa/Screenshot_20180326-174545.png

  657. jonasw

    which is good

  658. MattJ

    "Using the XMPP publish-subscribe extension [XEP-0030],"

  659. Ge0rG

    jonasw: your rendering sets the width to 75% of my screen, but at least I can zoom in the other 25%, making the size almost bearable

  660. jonasw

    m(

  661. jonasw

    I tried it on my device

  662. jonasw

    stupid

  663. jonasw

    Ge0rG, interestingly, the ctrl+shift+m thing on firefox which is supposed to emulate mobile devices does it better than the actual mobile firefox.

  664. Ge0rG

    Really, can't we just have epub/mobi? With HTML, browser vendors haven't figured out to remember the screen position I stopped reading at. In 2018. It's a shame.

  665. Ge0rG

    Almost as bad as XMPP.

  666. pep.

    Ge0rG, they do? don't they?

  667. pep.

    FF does that for me

  668. jonasw

    Ge0rG, reload mine

  669. Ge0rG

    pep.: sometimes they do, but as soon as they have to rerender the page, all bets are off

  670. jonasw

    oh reader mode actually works fine

  671. jonasw

    on that rendering

  672. jonasw

    so maybe just use that

  673. jonasw

    meh,e xcept for the ascii diagrams of course

  674. Ge0rG

    The Debian man page for xml2rfc is awesome as well: > The xml2rfc script requires python 2, with a version of 2.6 or higher. Can't proceed, quitting.

  675. Zash

    Can haz xml2rfc2epub ?

  676. jonasw

    Ge0rG, re-try my rendering. you have to zoom in because of the diagrams, but otherwise it should be fine

  677. moparisthebest

    I've pretty much given in to the fact that I'll always be required to have python 2 and 3 on every computer forever

  678. Zash

    Ge0rG: pandoc can turn html into epub, but it's usually kinda messy

  679. jonasw

    it’s xml2rfc with <meta name="viewport" content="width=device-width, initial-scale=1" /> added

  680. Ge0rG

    jonasw: how do I do "Reader mode" on mobile FF?

  681. jonasw

    it’s next to the address bar

  682. Zash

    gah, forgot to enter my email password

  683. Ge0rG

    Ah. Thanks. It even supports changing the font size. Almost awesome.

  684. jonasw

    Ge0rG, yeah, aside from the ascii art diagrams :(

  685. Ge0rG

    But still not epub. I don't trust it to remember my reading position over the next OOM kill.

  686. jonasw

    it won’t probably

  687. Zash

    Whoever thought having the same keybinding for "back" and "quit" in mutt ...

  688. jonasw

    you should’ve said that at the beginning, Ge0rG

  689. jonasw

    :(

  690. Ge0rG

    And it's grey on grey.

  691. jonasw

    it’s black on white here

  692. Zash

    Ge0rG: pandoc blah.html -o blah.epub ?

  693. Zash

    or -s -o b blah.markdown and tweak it a bit then -o epub

  694. Zash

    Basically how I read blags these days

  695. Ge0rG

    Okay, epub has great text rendering, but the ASCII diagrams are unusable :D

  696. Ge0rG

    Thanks everyone.

  697. Ge0rG

    jonasw: FF reader mode is light-grey on dark-grey. I have no idea who thought that's a good idea.

  698. jonasw

    Ge0rG, switch the color scheme

  699. jonasw

    it defaults to auto

  700. jonasw

    maybe something is weird on your device

  701. jonasw

    (it’s in the same menu as the font size)

  702. Ge0rG

    jonasw: mine is "dark", and that's a low-contrast theme.

  703. jonasw

    switch to light.

  704. Ge0rG

    it's better contrast, but I actually wanted a dark theme.

  705. Ge0rG

    okay, my FBReader might be a bit extreme, 50% red on 100% black

  706. Maranda

    Infamous "Disco Pub(Sub)" xep

  707. Ge0rG

    but it's great for OLED display reading at night

  708. Maranda

    Now I understand Yaxim's colour scheme reason.

  709. Ge0rG &

  710. jonasw

    Ge0rG, I feel you might actually want redshift instead.

  711. jonasw

    (or LiveDisplay how LineageOS calls it)

  712. jonasw

    the most amazing thing invented for displays

  713. jonasw

    (also known as f.lux or xflux)

  714. jonasw

    pep., I forgot to say it, thanks a lot for taking the minutes :-)

  715. pep.

    You're welcome

  716. pep.

    I forgot to specify maybe we haven't treated S2S cases yet, and that's going to come later on. Will indicate that tomorrow

  717. Zash

    How's jabber.org doing?

  718. jonasw

    I’m joined in jdev@

  719. jonasw

    so I assume I got lucky with ipv6?

  720. jonasw

    v4 still blackholes

  721. pep.

    yay presence-less clients. andrey.g is spamming the room with join/parts :x

  722. moparisthebest

    TLS 1.3 approved https://www.ietf.org/mail-archive/web/ietf-announce/current/msg17592.html

  723. pep.

    Woohoo

  724. Zash

    So, does it hide SNI and ALPN or did the firewall vendors manage to block that?

  725. Zash

    Seemed to go back and forth a bit on that IIRC