I was using the latest httpclient 4.1.2. Now when I switch back to 4.1.1, 
the problem is gone.
Also see: http://comments.gmane.org/gmane.comp.apache.httpclient.user/262


On Friday, 18 November 2011 17:21:15 UTC+8, Mathias Lin wrote:
>
> This is the complete stacktrace:
>
> 11-18 17:17:39.403: ERROR/Login(7025): Could not login.
>         javax.net.ssl.SSLException: hostname in certificate didn't match: <
> store.mydomain.com/185.165.192.15> != <store.mydomain.com> OR <
> store.mydomain.com>
>         at a.a.a.c.d.a.a(AbstractVerifier.java:228)
>         at a.a.a.c.d.c.a(BrowserCompatHostnameVerifier.java:54)
>         at a.a.a.c.d.a.a(AbstractVerifier.java:149)
>         at a.a.a.c.d.a.a(AbstractVerifier.java:130)
>         at a.a.a.c.d.d.a(SSLSocketFactory.java:397)
>         at a.a.a.c.d.d.a(SSLSocketFactory.java:495)
>         at a.a.a.c.c.i.a(SchemeSocketFactoryAdaptor.java:62)
>         at a.a.a.f.c.f.a(DefaultClientConnectionOperator.java:148)
>         at a.a.a.f.c.b.a(AbstractPoolEntry.java:149)
>         at a.a.a.f.c.c.a(AbstractPooledConnAdapter.java:121)
>         at a.a.a.f.b.l.a(DefaultRequestDirector.java:573)
>         at a.a.a.f.b.l.a(DefaultRequestDirector.java:425)
>         at a.a.a.f.b.b.a(AbstractHttpClient.java:820)
>         at a.a.a.f.b.b.a(AbstractHttpClient.java:754)
>         at com.mydomain.android.activity.f.doInBackground(Login.java:122)
>         at android.os.AsyncTask$2.call(AsyncTask.java:185)
>         at 
> java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:306)
>         at java.util.concurrent.FutureTask.run(FutureTask.java:138)
>         at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1088)
>         at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:581)
>         at java.lang.Thread.run(Thread.java:1019)
>
> On Friday, 18 November 2011 17:08:45 UTC+8, casantos wrote:
>>
>> On Fri, Nov 18, 2011 at 3:05 AM, Mathias Lin <ma...@mathiaslin.com> 
>> wrote:
>> > In an Android app, I fetch content from a https url; in order to avoid 
>> SSL
>> > cert verification errors, I add the SSL public key to my keystore, which
>> > then resides in my res/raw folder of the app. Following the 
>> instructions as
>> > on 
>> http://blog.crazybob.org/2010/02/android-trusting-ssl-certificates.html,
>> > which all works fine so far.
>> >
>> > ..until I activate Proguard and obfuscation. With Proguard activated, I 
>> am
>> > getting the following error,
>> >
>> > ERROR/Login(4401): Could not login.
>> >     javax.net.ssl.SSLException: hostname in certificate didn't match:
>> > <store.mydomain.com/185.165.192.15> != <store.mydomain.com> OR
>> > <store.mydomain.com>
>> >     at xyz.fd.a(Unknown Source)
>> >
>> > which I don't quite understand. Why would the identification of the url
>> > change in a way that it's also fetching the /<ipAddress> together with 
>> the
>> > domain name, whereas it works fine without Proguard obfuscation.
>>
>> It is not fetching the IP address. The
>> "store.mydomain.com/185.165.192.15" you see is just the result of
>> InetAddress.toString(). Please post the entire stack trace contained
>> in the exception. Also, tell proguard to keep line numbers and file
>> names:
>>
>> -keepattributes SourceFile,LineNumberTable
>>
>> > As the httpClient for fetching the https content, I use sources as in
>> > MyHttpClient
>> > at:
>> http://blog.crazybob.org/2010/02/android-trusting-ssl-certificates.html
>> >
>> > proguard.cfg:
>> >
>> > -optimizationpasses 5
>> > -dontusemixedcaseclassnames
>> > -dontskipnonpubliclibraryclasses
>> > -dontpreverify
>> > -verbose
>> > -optimizations !code/simplification/arithmetic,!field/*,!class/merging/*
>> >
>> > -keep public class * extends android.app.Activity
>> > -keep public class * extends android.app.Application
>> > -keep public class * extends android.app.Service
>> > -keep public class * extends android.content.BroadcastReceiver
>> > -keep public class * extends android.content.ContentProvider
>> > -keep public class * extends android.app.backup.BackupAgentHelper
>> > -keep public class * extends android.preference.Preference
>> >
>> > -keep class * extends DefaultHttpClient
>> >
>> > -ignorewarnings
>> > -repackageclasses 'xyz'
>> > -allowaccessmodification
>> >
>> > -keepclasseswithmembernames class * {
>> >     native <methods>;
>> > }
>> >
>> > -keepclasseswithmembers class * {
>> >     public <init>(android.content.Context, android.util.AttributeSet);
>> > }
>> >
>> > -keepclasseswithmembers class * {
>> >     public <init>(android.content.Context, android.util.AttributeSet, 
>> int);
>> > }
>> >
>> > -keepclassmembers class * extends android.app.Activity {
>> >    public void *(android.view.View);
>> > }
>> >
>> > -keepclassmembers enum * {
>> >     public static **[] values();
>> >     public static ** valueOf(java.lang.String);
>> > }
>> >
>> > -keep class * implements android.os.Parcelable {
>> >   public static final android.os.Parcelable$Creator *;
>> > }
>> >
>> > --
>> > You received this message because you are subscribed to the Google
>> > Groups "Android Developers" group.
>> > To post to this group, send email to androi...@googlegroups.com
>> > To unsubscribe from this group, send email to
>> > android-develop...@googlegroups.com
>> > For more options, visit this group at
>> > http://groups.google.com/group/android-developers?hl=en
>>
>> -- 
>> "The flames are all long gone, but the pain lingers on"
>>
>>

-- 
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to android-developers@googlegroups.com
To unsubscribe from this group, send email to
android-developers+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en

Reply via email to