<html>
<body>
<div style="font-family: Verdana, Arial, Helvetica, Sans-Serif;">
<table bgcolor="#f9f3c9" width="100%" cellpadding="12" style="border: 1px #c9c399 solid; border-radius: 6px; -moz-border-radius: 6px; -webkit-border-radius: 6px;">
<tr>
<td>
This is an automatically generated e-mail. To reply, visit:
<a href="https://git.reviewboard.kde.org/r/126991/">https://git.reviewboard.kde.org/r/126991/</a>
</td>
</tr>
</table>
<br />
<blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: 10px;">
<p style="margin-top: 0;">On February 21st, 2016, 7:07 p.m. CET, <b>Andreas Hartmetz</b> wrote:</p>
<blockquote style="margin-left: 1em; border-left: 2px solid #d0d0d0; padding-left: 10px;">
<pre style="white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;"><p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">m_triedPasswords doesn't really tell the truth if the application didn't supply a password, right? It is not really a number of tried passwords, it is the state of a little state machine. In such cases, it is better to make it an enum: enum TriedCredentials { NoCredentials = 0, JobCredentials, CachedCredentials, UserInputCredentials };
... where the distinction of Cached and UserInput is currently unnecessary but more consistent, a nice piece of self-documentation and might be helpful in the future.
(Note: "credentials" is better than "passwords" because it's a combination of username and password and i some special cases something different, like with NTLM and Kerberos)
Additionally, it looks like m_triedPasswords will carry over failed attempts from proxy authentication to web server authentication if both happen in the same KIO get() job [which may produce several HTTP GETs]. I'm not completely sure though because it's been a while since I worked on that code. Did you consider the problem?</p></pre>
</blockquote>
</blockquote>
<pre style="white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;"><p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">You're right in both cases (field naming & proxy auth). Thanks for spotting this. I'll update the patch to fix the issues you've indicated.</p></pre>
<br />
<p>- Krzysztof</p>
<br />
<p>On February 9th, 2016, 10:53 p.m. CET, Krzysztof Nowicki wrote:</p>
<table bgcolor="#fefadf" width="100%" cellspacing="0" cellpadding="12" style="border: 1px #888a85 solid; border-radius: 6px; -moz-border-radius: 6px; -webkit-border-radius: 6px;">
<tr>
<td>
<div>Review request for KDE Frameworks and Dawit Alemayehu.</div>
<div>By Krzysztof Nowicki.</div>
<p style="color: grey;"><i>Updated Feb. 9, 2016, 10:53 p.m.</i></p>
<div style="margin-top: 1.5em;">
<b style="color: #575012; font-size: 10pt;">Repository: </b>
kio
</div>
<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Description </h1>
<table width="100%" bgcolor="#ffffff" cellspacing="0" cellpadding="10" style="border: 1px solid #b8b5a0">
<tr>
<td>
<pre style="margin: 0; padding: 0; white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;"><p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">When authenticating agains a server offering multiple authentication methods make sure to attempt other methods in case the best one fails.</p>
<p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">This also fixes a connection close issue in the middle of an NTLM authentication dialog due to clearing the password.</p></pre>
</td>
</tr>
</table>
<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Testing </h1>
<table width="100%" bgcolor="#ffffff" cellspacing="0" cellpadding="10" style="border: 1px solid #b8b5a0">
<tr>
<td>
<pre style="margin: 0; padding: 0; white-space: pre-wrap; white-space: -moz-pre-wrap; white-space: -pre-wrap; white-space: -o-pre-wrap; word-wrap: break-word;"><p style="padding: 0;text-rendering: inherit;margin: 0;line-height: inherit;white-space: inherit;">I have performed testing on an IIS 7.5 server which offered 3 authentication options: Negotiate, NTLM and Basic. Since I have Kerberos configured the original code would only try Negotiate and because it failed it would retry it endlessly. With this patch authentication correctly falls back to NTLM or Basic (if NTLM fails too).</p></pre>
</td>
</tr>
</table>
<h1 style="color: #575012; font-size: 10pt; margin-top: 1.5em;">Diffs</b> </h1>
<ul style="margin-left: 3em; padding-left: 0;">
<li>src/ioslaves/http/http.h <span style="color: grey">(621b2c7a957b9bc9cc14ff13ed3c3a72dec38190)</span></li>
<li>src/ioslaves/http/http.cpp <span style="color: grey">(e1013c8705e6588729d61ed45c43dc564415c41e)</span></li>
</ul>
<p><a href="https://git.reviewboard.kde.org/r/126991/diff/" style="margin-left: 3em;">View Diff</a></p>
</td>
</tr>
</table>
</div>
</body>
</html>