From 8d4c353d8c6a8c2ec7568a8b7b2f05d2343b5112 Mon Sep 17 00:00:00 2001 From: rfc2822 Date: Tue, 4 Nov 2014 23:04:24 +0100 Subject: [PATCH] Initial support for SRV/TXT service discovery --- libs/org.xbill.dns_2.1.6.jar | Bin 0 -> 305478 bytes res/layout/enter_credentials.xml | 7 +- res/values/strings.xml | 3 +- .../davdroid/{URIUtils.java => URLUtils.java} | 26 ++- .../davdroid/resource/CalDavCalendar.java | 4 +- .../davdroid/resource/CardDavAddressBook.java | 6 +- .../davdroid/resource/DavResourceFinder.java | 148 +++++++++++++++--- .../davdroid/resource/RemoteCollection.java | 21 +-- .../bitfire/davdroid/resource/ServerInfo.java | 7 +- .../CalendarsSyncAdapterService.java | 4 +- .../ContactsSyncAdapterService.java | 4 +- .../davdroid/syncadapter/DavSyncAdapter.java | 6 +- .../syncadapter/EnterCredentialsFragment.java | 37 ++--- .../QueryServerDialogFragment.java | 9 +- .../davdroid/syncadapter/SyncManager.java | 13 +- .../davdroid/webdav/DavRedirectStrategy.java | 10 +- .../davdroid/webdav/TlsSniSocketFactory.java | 2 +- .../davdroid/webdav/WebDavResource.java | 69 ++++---- .../syncadapter/DavResourceFinderTest.java | 23 ++- .../at/bitfire/davdroid/test/Constants.java | 10 +- .../bitfire/davdroid/test/URIUtilsTest.java | 49 ------ .../bitfire/davdroid/test/URLUtilsTest.java | 48 ++++++ .../webdav/DavRedirectStrategyTest.java | 13 +- .../davdroid/webdav/WebDavResourceTest.java | 46 +++--- 24 files changed, 353 insertions(+), 212 deletions(-) create mode 100644 libs/org.xbill.dns_2.1.6.jar rename src/at/bitfire/davdroid/{URIUtils.java => URLUtils.java} (83%) delete mode 100644 test/src/at/bitfire/davdroid/test/URIUtilsTest.java create mode 100644 test/src/at/bitfire/davdroid/test/URLUtilsTest.java diff --git a/libs/org.xbill.dns_2.1.6.jar b/libs/org.xbill.dns_2.1.6.jar new file mode 100644 index 0000000000000000000000000000000000000000..3d42fbc4937af921932b6850393082b7eb5d7691 GIT binary patch literal 305478 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

ta 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%0AHC`aRBwrv0@o|aFXNi5Wsqhkz2?Z>y;dsUQJ3Dh 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 literal 0 HcmV?d00001 diff --git a/res/layout/enter_credentials.xml b/res/layout/enter_credentials.xml index 537856d9..a15127bc 100644 --- a/res/layout/enter_credentials.xml +++ b/res/layout/enter_credentials.xml @@ -18,15 +18,14 @@ android:text="@string/root_url" /> + android:entries="@array/uri_scheme" /> DAVdroid Settings - + http:// https:// + mailto: "If you don't use encryption (HTTPS), other people may easily intercept your login details, contacts and events." diff --git a/src/at/bitfire/davdroid/URIUtils.java b/src/at/bitfire/davdroid/URLUtils.java similarity index 83% rename from src/at/bitfire/davdroid/URIUtils.java rename to src/at/bitfire/davdroid/URLUtils.java index 37cf75b3..1e46dd00 100644 --- a/src/at/bitfire/davdroid/URIUtils.java +++ b/src/at/bitfire/davdroid/URLUtils.java @@ -7,8 +7,8 @@ ******************************************************************************/ package at.bitfire.davdroid; -import java.net.URI; -import java.net.URISyntaxException; +import java.net.MalformedURLException; +import java.net.URL; import java.util.regex.Matcher; import java.util.regex.Pattern; @@ -16,7 +16,7 @@ import android.annotation.SuppressLint; import android.util.Log; @SuppressLint("DefaultLocale") -public class URIUtils { +public class URLUtils { private static final String TAG = "davdroid.URIUtils"; @@ -28,7 +28,23 @@ public class URIUtils { return href; } - public static URI ensureTrailingSlash(URI href) { + public static URL ensureTrailingSlash(URL href) { + if (!href.getPath().endsWith("/")) + try { + URL newURL = new URL(href, href.getPath() + "/"); + + // "@" is the only character that is not encoded + //newURL = new URI(newURI.toString().replaceAll("@", "%40")); + + Log.d(TAG, "Implicitly appending trailing slash to collection " + href + " -> " + newURL); + return newURL; + } catch (MalformedURLException e) { + Log.e(TAG, "Couldn't append trailing slash to collection URI", e); + } + return href; + } + + /*public static URI ensureTrailingSlash(URI href) { if (!href.getPath().endsWith("/")) try { URI newURI = new URI(href.getScheme(), href.getAuthority(), href.getPath() + "/", href.getQuery(), null); @@ -42,7 +58,7 @@ public class URIUtils { Log.e(TAG, "Couldn't append trailing slash to collection URI", e); } return href; - } + }*/ /** handles invalid URLs/paths as good as possible **/ diff --git a/src/at/bitfire/davdroid/resource/CalDavCalendar.java b/src/at/bitfire/davdroid/resource/CalDavCalendar.java index cb2ad49c..770f479e 100644 --- a/src/at/bitfire/davdroid/resource/CalDavCalendar.java +++ b/src/at/bitfire/davdroid/resource/CalDavCalendar.java @@ -7,7 +7,7 @@ ******************************************************************************/ package at.bitfire.davdroid.resource; -import java.net.URISyntaxException; +import java.net.MalformedURLException; import at.bitfire.davdroid.webdav.DavMultiget; import ch.boye.httpclientandroidlib.impl.client.CloseableHttpClient; @@ -31,7 +31,7 @@ public class CalDavCalendar extends RemoteCollection { } - public CalDavCalendar(CloseableHttpClient httpClient, String baseURL, String user, String password, boolean preemptiveAuth) throws URISyntaxException { + public CalDavCalendar(CloseableHttpClient httpClient, String baseURL, String user, String password, boolean preemptiveAuth) throws MalformedURLException { super(httpClient, baseURL, user, password, preemptiveAuth); } } diff --git a/src/at/bitfire/davdroid/resource/CardDavAddressBook.java b/src/at/bitfire/davdroid/resource/CardDavAddressBook.java index c57a6add..eda04fb1 100644 --- a/src/at/bitfire/davdroid/resource/CardDavAddressBook.java +++ b/src/at/bitfire/davdroid/resource/CardDavAddressBook.java @@ -7,10 +7,10 @@ ******************************************************************************/ package at.bitfire.davdroid.resource; -import java.net.URISyntaxException; +import java.net.MalformedURLException; -import ch.boye.httpclientandroidlib.impl.client.CloseableHttpClient; import at.bitfire.davdroid.webdav.DavMultiget; +import ch.boye.httpclientandroidlib.impl.client.CloseableHttpClient; public class CardDavAddressBook extends RemoteCollection { //private final static String TAG = "davdroid.CardDavAddressBook"; @@ -31,7 +31,7 @@ public class CardDavAddressBook extends RemoteCollection { } - public CardDavAddressBook(CloseableHttpClient httpClient, String baseURL, String user, String password, boolean preemptiveAuth) throws URISyntaxException { + public CardDavAddressBook(CloseableHttpClient httpClient, String baseURL, String user, String password, boolean preemptiveAuth) throws MalformedURLException { super(httpClient, baseURL, user, password, preemptiveAuth); } } diff --git a/src/at/bitfire/davdroid/resource/DavResourceFinder.java b/src/at/bitfire/davdroid/resource/DavResourceFinder.java index 449af5af..f3e5e534 100644 --- a/src/at/bitfire/davdroid/resource/DavResourceFinder.java +++ b/src/at/bitfire/davdroid/resource/DavResourceFinder.java @@ -1,39 +1,57 @@ package at.bitfire.davdroid.resource; +import java.io.Closeable; import java.io.IOException; +import java.net.MalformedURLException; import java.net.URI; import java.net.URISyntaxException; +import java.net.URL; import java.util.LinkedList; import java.util.List; -import ch.boye.httpclientandroidlib.HttpException; -import ch.boye.httpclientandroidlib.impl.client.CloseableHttpClient; -import ezvcard.VCardVersion; +import org.xbill.DNS.Lookup; +import org.xbill.DNS.Record; +import org.xbill.DNS.SRVRecord; +import org.xbill.DNS.TXTRecord; +import org.xbill.DNS.TextParseException; +import org.xbill.DNS.Type; + import android.content.Context; import android.util.Log; import at.bitfire.davdroid.R; -import at.bitfire.davdroid.URIUtils; import at.bitfire.davdroid.webdav.DavException; import at.bitfire.davdroid.webdav.DavHttpClient; import at.bitfire.davdroid.webdav.DavIncapableException; +import at.bitfire.davdroid.webdav.HttpPropfind.Mode; import at.bitfire.davdroid.webdav.NotAuthorizedException; import at.bitfire.davdroid.webdav.WebDavResource; -import at.bitfire.davdroid.webdav.HttpPropfind.Mode; +import ch.boye.httpclientandroidlib.HttpException; +import ch.boye.httpclientandroidlib.impl.client.CloseableHttpClient; +import ezvcard.VCardVersion; -public class DavResourceFinder { +public class DavResourceFinder implements Closeable { private final static String TAG = "davdroid.DavResourceFinder"; + protected Context context; + protected CloseableHttpClient httpClient; - public static void findResources(Context context, ServerInfo serverInfo) throws URISyntaxException, DavException, HttpException, IOException { - // disable compression and enable network logging for debugging purposes - CloseableHttpClient httpClient = DavHttpClient.create(true, true); + + public DavResourceFinder(Context context) { + this.context = context; - WebDavResource base = new WebDavResource(httpClient, - new URI(URIUtils.ensureTrailingSlash(serverInfo.getProvidedURL())), - serverInfo.getUserName(), serverInfo.getPassword(), serverInfo.isAuthPreemptive()); + // disable compression and enable network logging for debugging purposes + httpClient = DavHttpClient.create(true, true); + } + @Override + public void close() throws IOException { + httpClient.close(); + } + + + public void findResources(ServerInfo serverInfo) throws URISyntaxException, DavException, HttpException, IOException { // CardDAV - WebDavResource principal = getCurrentUserPrincipal(base, "carddav"); + WebDavResource principal = getCurrentUserPrincipal(serverInfo, "carddav"); if (principal != null) { serverInfo.setCardDAV(true); @@ -50,11 +68,11 @@ public class DavResourceFinder { if (homeSetAddressBooks.getMembers() != null) for (WebDavResource resource : homeSetAddressBooks.getMembers()) if (resource.isAddressBook()) { - Log.i(TAG, "Found address book: " + resource.getLocation().getRawPath()); + Log.i(TAG, "Found address book: " + resource.getLocation().getPath()); ServerInfo.ResourceInfo info = new ServerInfo.ResourceInfo( ServerInfo.ResourceInfo.Type.ADDRESS_BOOK, resource.isReadOnly(), - resource.getLocation().toASCIIString(), + resource.getLocation().toString(), resource.getDisplayName(), resource.getDescription(), resource.getColor() ); @@ -73,7 +91,7 @@ public class DavResourceFinder { } // CalDAV - principal = getCurrentUserPrincipal(base, "caldav"); + principal = getCurrentUserPrincipal(serverInfo, "caldav"); if (principal != null) { serverInfo.setCalDAV(true); @@ -105,7 +123,7 @@ public class DavResourceFinder { ServerInfo.ResourceInfo info = new ServerInfo.ResourceInfo( ServerInfo.ResourceInfo.Type.CALENDAR, resource.isReadOnly(), - resource.getLocation().toASCIIString(), + resource.getLocation().toString(), resource.getDisplayName(), resource.getDescription(), resource.getColor() ); @@ -124,6 +142,75 @@ public class DavResourceFinder { } + /** + * Finds the initial service URL from a given base URI (HTTP[S] or mailto URI, user name, password) + * @param serverInfo User-given service information (including base URI, i.e. HTTP[S] URL+user name+password or mailto URI and password) + * @param serviceName Service name ("carddav" or "caldav") + * @return Initial service URL (HTTP/HTTPS), without user credentials + * @throws URISyntaxException when the user-given URI is invalid + * @throws MalformedURLException when the user-given URI is invalid + * @throws UnknownServiceURLException when no intial service URL could be determined + */ + URL getInitialURL(ServerInfo serverInfo, String serviceName) throws URISyntaxException, MalformedURLException { + String scheme = null, + domain = null; + int port = -1; + String path = "/"; + + URI baseURI = serverInfo.getBaseURI(); + if ("mailto".equalsIgnoreCase(baseURI.getScheme())) { + // mailto URIs + String mailbox = serverInfo.getBaseURI().getSchemeSpecificPart(); + + // determine service FQDN + int pos = mailbox.lastIndexOf("@"); + if (pos == -1) + throw new URISyntaxException(mailbox, "Email address doesn't contain @"); + domain = mailbox.substring(pos + 1); + } else { + // HTTP(S) URLs + scheme = baseURI.getScheme(); + domain = baseURI.getHost(); + port = baseURI.getPort(); + path = baseURI.getPath(); + } + + // try to determine FQDN and port number using SRV records + try { + String name = "_" + serviceName + "s._tcp." + domain; + Log.d(TAG, "Looking up SRV records for " + name); + Record[] records = new Lookup(name, Type.SRV).run(); + if (records != null && records.length >= 1) { + SRVRecord srv = selectSRVRecord(records); + + scheme = "https"; + domain = srv.getTarget().toString(true); + port = srv.getPort(); + Log.d(TAG, "Found " + serviceName + "s service for " + domain + " -> " + domain + ":" + port); + + // SRV record found, look for TXT record too (for initial context path) + records = new Lookup(name, Type.TXT).run(); + if (records != null && records.length >= 1) { + TXTRecord txt = (TXTRecord)records[0]; + for (String segment : (String[])txt.getStrings().toArray()) + if (segment.startsWith("path=")) { + path = segment.substring(5); + Log.d(TAG, "Found initial context path for " + serviceName + " at " + domain + " -> " + path); + break; + } + } + } + } catch (TextParseException e) { + throw new URISyntaxException(domain, "Invalid domain name"); + } + + if (port != -1) + return new URL(scheme, domain, port, path); + else + return new URL(scheme, domain, path); + } + + /** * Detects the current-user-principal for a given WebDavResource. At first, /.well-known/ is tried. Only * if no current-user-principal can be detected for the .well-known location, the given location of the resource @@ -132,10 +219,18 @@ public class DavResourceFinder { * @param serviceName Well-known service name ("carddav", "caldav") * @return WebDavResource of current-user-principal for the given service, or null if it can't be found */ - private static WebDavResource getCurrentUserPrincipal(WebDavResource resource, String serviceName) throws IOException, NotAuthorizedException { + WebDavResource getCurrentUserPrincipal(ServerInfo serverInfo, String serviceName) throws URISyntaxException, IOException, NotAuthorizedException { + URL initialURL = getInitialURL(serverInfo, serviceName); + + // determine base URL (host name and initial context path) + WebDavResource base = new WebDavResource(httpClient, + //new URI(URIUtils.ensureTrailingSlash(serverInfo.getBaseURI())), + initialURL, + serverInfo.getUserName(), serverInfo.getPassword(), serverInfo.isAuthPreemptive()); + // look for well-known service (RFC 5785) try { - WebDavResource wellKnown = new WebDavResource(resource, "/.well-known/" + serviceName); + WebDavResource wellKnown = new WebDavResource(base, "/.well-known/" + serviceName); wellKnown.propfind(Mode.CURRENT_USER_PRINCIPAL); if (wellKnown.getCurrentUserPrincipal() != null) return new WebDavResource(wellKnown, wellKnown.getCurrentUserPrincipal()); @@ -150,9 +245,9 @@ public class DavResourceFinder { // fall back to user-given initial context path try { - resource.propfind(Mode.CURRENT_USER_PRINCIPAL); - if (resource.getCurrentUserPrincipal() != null) - return new WebDavResource(resource, resource.getCurrentUserPrincipal()); + base.propfind(Mode.CURRENT_USER_PRINCIPAL); + if (base.getCurrentUserPrincipal() != null) + return new WebDavResource(base, base.getCurrentUserPrincipal()); } catch (NotAuthorizedException e) { Log.d(TAG, "Not authorized for querying principal for " + serviceName + " service", e); throw e; @@ -165,7 +260,7 @@ public class DavResourceFinder { return null; } - private static boolean checkHomesetCapabilities(WebDavResource resource, String davCapability) throws IOException { + private static boolean checkHomesetCapabilities(WebDavResource resource, String davCapability) throws URISyntaxException, IOException { // check for necessary capabilities try { resource.options(); @@ -178,4 +273,11 @@ public class DavResourceFinder { return false; } + + SRVRecord selectSRVRecord(Record[] records) { + if (records.length > 1) + Log.w(TAG, "Multiple SRV records not supported yet; using first one"); + return (SRVRecord)records[0]; + } + } diff --git a/src/at/bitfire/davdroid/resource/RemoteCollection.java b/src/at/bitfire/davdroid/resource/RemoteCollection.java index 1b8a35b6..d287e823 100644 --- a/src/at/bitfire/davdroid/resource/RemoteCollection.java +++ b/src/at/bitfire/davdroid/resource/RemoteCollection.java @@ -11,8 +11,9 @@ import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; import java.io.IOException; import java.io.InputStream; -import java.net.URI; +import java.net.MalformedURLException; import java.net.URISyntaxException; +import java.net.URL; import java.util.LinkedList; import java.util.List; @@ -46,16 +47,16 @@ public abstract class RemoteCollection { abstract protected DavMultiget.Type multiGetType(); abstract protected T newResourceSkeleton(String name, String ETag); - public RemoteCollection(CloseableHttpClient httpClient, String baseURL, String user, String password, boolean preemptiveAuth) throws URISyntaxException { + public RemoteCollection(CloseableHttpClient httpClient, String baseURL, String user, String password, boolean preemptiveAuth) throws MalformedURLException { this.httpClient = httpClient; - collection = new WebDavResource(httpClient, new URI(baseURL), user, password, preemptiveAuth); + collection = new WebDavResource(httpClient, new URL(baseURL), user, password, preemptiveAuth); } /* collection operations */ - public String getCTag() throws IOException, HttpException { + public String getCTag() throws URISyntaxException, IOException, HttpException { try { if (collection.getCTag() == null && collection.getMembers() == null) // not already fetched collection.propfind(HttpPropfind.Mode.COLLECTION_CTAG); @@ -65,7 +66,7 @@ public abstract class RemoteCollection { return collection.getCTag(); } - public Resource[] getMemberETags() throws IOException, DavException, HttpException { + public Resource[] getMemberETags() throws URISyntaxException, IOException, DavException, HttpException { collection.propfind(HttpPropfind.Mode.MEMBERS_ETAG); List resources = new LinkedList(); @@ -77,7 +78,7 @@ public abstract class RemoteCollection { } @SuppressWarnings("unchecked") - public Resource[] multiGet(Resource[] resources) throws IOException, DavException, HttpException { + public Resource[] multiGet(Resource[] resources) throws URISyntaxException, IOException, DavException, HttpException { try { if (resources.length == 1) return (T[]) new Resource[] { get(resources[0]) }; @@ -118,7 +119,7 @@ public abstract class RemoteCollection { /* internal member operations */ - public Resource get(Resource resource) throws IOException, HttpException, DavException, InvalidResourceException { + public Resource get(Resource resource) throws URISyntaxException, IOException, HttpException, DavException, InvalidResourceException { WebDavResource member = new WebDavResource(collection, resource.getName()); if (resource instanceof Contact) @@ -144,7 +145,7 @@ public abstract class RemoteCollection { } // returns ETag of the created resource, if returned by server - public String add(Resource res) throws IOException, HttpException, ValidationException { + public String add(Resource res) throws URISyntaxException, IOException, HttpException, ValidationException { WebDavResource member = new WebDavResource(collection, res.getName(), res.getETag()); member.setContentType(memberContentType()); @@ -157,7 +158,7 @@ public abstract class RemoteCollection { return eTag; } - public void delete(Resource res) throws IOException, HttpException { + public void delete(Resource res) throws URISyntaxException, IOException, HttpException { WebDavResource member = new WebDavResource(collection, res.getName(), res.getETag()); member.delete(); @@ -165,7 +166,7 @@ public abstract class RemoteCollection { } // returns ETag of the updated resource, if returned by server - public String update(Resource res) throws IOException, HttpException, ValidationException { + public String update(Resource res) throws URISyntaxException, IOException, HttpException, ValidationException { WebDavResource member = new WebDavResource(collection, res.getName(), res.getETag()); member.setContentType(memberContentType()); diff --git a/src/at/bitfire/davdroid/resource/ServerInfo.java b/src/at/bitfire/davdroid/resource/ServerInfo.java index 958c1bbc..9d11f928 100644 --- a/src/at/bitfire/davdroid/resource/ServerInfo.java +++ b/src/at/bitfire/davdroid/resource/ServerInfo.java @@ -8,6 +8,7 @@ package at.bitfire.davdroid.resource; import java.io.Serializable; +import java.net.URI; import java.util.LinkedList; import java.util.List; @@ -20,7 +21,11 @@ import lombok.RequiredArgsConstructor; public class ServerInfo implements Serializable { private static final long serialVersionUID = 6744847358282980437L; - final private String providedURL; + enum Scheme { + HTTP, HTTPS, MAILTO + } + + final private URI baseURI; final private String userName, password; final boolean authPreemptive; diff --git a/src/at/bitfire/davdroid/syncadapter/CalendarsSyncAdapterService.java b/src/at/bitfire/davdroid/syncadapter/CalendarsSyncAdapterService.java index 2746163b..f00678cd 100644 --- a/src/at/bitfire/davdroid/syncadapter/CalendarsSyncAdapterService.java +++ b/src/at/bitfire/davdroid/syncadapter/CalendarsSyncAdapterService.java @@ -7,7 +7,7 @@ ******************************************************************************/ package at.bitfire.davdroid.syncadapter; -import java.net.URISyntaxException; +import java.net.MalformedURLException; import java.util.HashMap; import java.util.Map; @@ -71,7 +71,7 @@ public class CalendarsSyncAdapterService extends Service { return map; } catch (RemoteException ex) { Log.e(TAG, "Couldn't find local calendars", ex); - } catch (URISyntaxException ex) { + } catch (MalformedURLException ex) { Log.e(TAG, "Couldn't build calendar URI", ex); } diff --git a/src/at/bitfire/davdroid/syncadapter/ContactsSyncAdapterService.java b/src/at/bitfire/davdroid/syncadapter/ContactsSyncAdapterService.java index 7e8f02a2..88328700 100644 --- a/src/at/bitfire/davdroid/syncadapter/ContactsSyncAdapterService.java +++ b/src/at/bitfire/davdroid/syncadapter/ContactsSyncAdapterService.java @@ -7,7 +7,7 @@ ******************************************************************************/ package at.bitfire.davdroid.syncadapter; -import java.net.URISyntaxException; +import java.net.MalformedURLException; import java.util.HashMap; import java.util.Map; @@ -72,7 +72,7 @@ public class ContactsSyncAdapterService extends Service { map.put(database, dav); return map; - } catch (URISyntaxException ex) { + } catch (MalformedURLException ex) { Log.e(TAG, "Couldn't build address book URI", ex); } diff --git a/src/at/bitfire/davdroid/syncadapter/DavSyncAdapter.java b/src/at/bitfire/davdroid/syncadapter/DavSyncAdapter.java index e850060a..71189f4e 100644 --- a/src/at/bitfire/davdroid/syncadapter/DavSyncAdapter.java +++ b/src/at/bitfire/davdroid/syncadapter/DavSyncAdapter.java @@ -9,6 +9,7 @@ package at.bitfire.davdroid.syncadapter; import java.io.Closeable; import java.io.IOException; +import java.net.URISyntaxException; import java.util.Map; import java.util.concurrent.locks.ReentrantReadWriteLock; @@ -131,11 +132,9 @@ public abstract class DavSyncAdapter extends AbstractThreadedSyncAdapter impleme try { for (Map.Entry, RemoteCollection> entry : syncCollections.entrySet()) new SyncManager(entry.getKey(), entry.getValue()).synchronize(extras.containsKey(ContentResolver.SYNC_EXTRAS_MANUAL), syncResult); - } catch (DavException ex) { syncResult.stats.numParseExceptions++; Log.e(TAG, "Invalid DAV response", ex); - } catch (HttpException ex) { if (ex.getCode() == HttpStatus.SC_UNAUTHORIZED) { Log.e(TAG, "HTTP Unauthorized " + ex.getCode(), ex); @@ -147,13 +146,14 @@ public abstract class DavSyncAdapter extends AbstractThreadedSyncAdapter impleme Log.w(TAG, "Soft HTTP error " + ex.getCode() + " (Android will try again later)", ex); syncResult.stats.numIoExceptions++; } - } catch (LocalStorageException ex) { syncResult.databaseError = true; Log.e(TAG, "Local storage (content provider) exception", ex); } catch (IOException ex) { syncResult.stats.numIoExceptions++; Log.e(TAG, "I/O error (Android will try again later)", ex); + } catch (URISyntaxException ex) { + Log.e(TAG, "Invalid URI (file name) syntax", ex); } } finally { // allow httpClient shutdown diff --git a/src/at/bitfire/davdroid/syncadapter/EnterCredentialsFragment.java b/src/at/bitfire/davdroid/syncadapter/EnterCredentialsFragment.java index fc001455..4a63df3b 100644 --- a/src/at/bitfire/davdroid/syncadapter/EnterCredentialsFragment.java +++ b/src/at/bitfire/davdroid/syncadapter/EnterCredentialsFragment.java @@ -7,11 +7,6 @@ ******************************************************************************/ package at.bitfire.davdroid.syncadapter; -import java.net.URI; -import java.net.URISyntaxException; - -import org.apache.commons.lang.StringUtils; - import android.app.DialogFragment; import android.app.Fragment; import android.app.FragmentTransaction; @@ -32,13 +27,12 @@ import android.widget.EditText; import android.widget.Spinner; import android.widget.TextView; import at.bitfire.davdroid.R; -import at.bitfire.davdroid.URIUtils; public class EnterCredentialsFragment extends Fragment implements TextWatcher { - String protocol; + String scheme; TextView textHttpWarning; - EditText editBaseURL, editUserName, editPassword; + EditText editBaseURI, editUserName, editPassword; CheckBox checkboxPreemptive; Button btnNext; @@ -50,24 +44,24 @@ public class EnterCredentialsFragment extends Fragment implements TextWatcher { // protocol selection spinner textHttpWarning = (TextView) v.findViewById(R.id.http_warning); - Spinner spnrProtocol = (Spinner) v.findViewById(R.id.select_protocol); - spnrProtocol.setOnItemSelectedListener(new OnItemSelectedListener() { + Spinner spnrScheme = (Spinner) v.findViewById(R.id.login_scheme); + spnrScheme.setOnItemSelectedListener(new OnItemSelectedListener() { @Override public void onItemSelected(AdapterView parent, View view, int position, long id) { - protocol = parent.getAdapter().getItem(position).toString(); - textHttpWarning.setVisibility(protocol.equals("https://") ? View.GONE : View.VISIBLE); + scheme = parent.getAdapter().getItem(position).toString(); + textHttpWarning.setVisibility(scheme.equals("https://") ? View.GONE : View.VISIBLE); } @Override public void onNothingSelected(AdapterView parent) { - protocol = null; + scheme = null; } }); - spnrProtocol.setSelection(1); // HTTPS + spnrScheme.setSelection(1); // HTTPS // other input fields - editBaseURL = (EditText) v.findViewById(R.id.baseURL); - editBaseURL.addTextChangedListener(this); + editBaseURI = (EditText) v.findViewById(R.id.login_authority_path); + editBaseURI.addTextChangedListener(this); editUserName = (EditText) v.findViewById(R.id.userName); editUserName.addTextChangedListener(this); @@ -105,8 +99,9 @@ public class EnterCredentialsFragment extends Fragment implements TextWatcher { Bundle args = new Bundle(); - String host_path = editBaseURL.getText().toString(); - args.putString(QueryServerDialogFragment.EXTRA_BASE_URL, URIUtils.sanitize(protocol + host_path)); + String authority_path = editBaseURI.getText().toString(); + //args.putString(QueryServerDialogFragment.EXTRA_BASE_URI, URIUtils.sanitize(scheme + host_path)); + args.putString(QueryServerDialogFragment.EXTRA_BASE_URI, scheme + authority_path); args.putString(QueryServerDialogFragment.EXTRA_USER_NAME, editUserName.getText().toString()); args.putString(QueryServerDialogFragment.EXTRA_PASSWORD, editPassword.getText().toString()); args.putBoolean(QueryServerDialogFragment.EXTRA_AUTH_PREEMPTIVE, checkboxPreemptive.isChecked()); @@ -125,15 +120,15 @@ public class EnterCredentialsFragment extends Fragment implements TextWatcher { editUserName.getText().length() > 0 && editPassword.getText().length() > 0; - if (ok) + /*if (ok) // check host name try { - URI uri = new URI(URIUtils.sanitize(protocol + editBaseURL.getText().toString())); + URI uri = new URI(URIUtils.sanitize(scheme + editBaseURI.getText().toString())); if (StringUtils.isBlank(uri.getHost())) ok = false; } catch (URISyntaxException e) { ok = false; - } + }*/ MenuItem item = menu.findItem(R.id.next); item.setEnabled(ok); diff --git a/src/at/bitfire/davdroid/syncadapter/QueryServerDialogFragment.java b/src/at/bitfire/davdroid/syncadapter/QueryServerDialogFragment.java index fea12816..2596cfe0 100644 --- a/src/at/bitfire/davdroid/syncadapter/QueryServerDialogFragment.java +++ b/src/at/bitfire/davdroid/syncadapter/QueryServerDialogFragment.java @@ -8,8 +8,10 @@ package at.bitfire.davdroid.syncadapter; import java.io.IOException; +import java.net.URI; import java.net.URISyntaxException; +import lombok.Cleanup; import android.app.DialogFragment; import android.app.LoaderManager.LoaderCallbacks; import android.content.AsyncTaskLoader; @@ -31,7 +33,7 @@ import ch.boye.httpclientandroidlib.HttpException; public class QueryServerDialogFragment extends DialogFragment implements LoaderCallbacks { private static final String TAG = "davdroid.QueryServerDialogFragment"; public static final String - EXTRA_BASE_URL = "base_uri", + EXTRA_BASE_URI = "base_uri", EXTRA_USER_NAME = "user_name", EXTRA_PASSWORD = "password", EXTRA_AUTH_PREEMPTIVE = "auth_preemptive"; @@ -99,14 +101,15 @@ public class QueryServerDialogFragment extends DialogFragment implements LoaderC @Override public ServerInfo loadInBackground() { ServerInfo serverInfo = new ServerInfo( - args.getString(EXTRA_BASE_URL), + URI.create(args.getString(EXTRA_BASE_URI)), args.getString(EXTRA_USER_NAME), args.getString(EXTRA_PASSWORD), args.getBoolean(EXTRA_AUTH_PREEMPTIVE) ); try { - DavResourceFinder.findResources(context, serverInfo); + @Cleanup DavResourceFinder finder = new DavResourceFinder(context); + finder.findResources(serverInfo); } catch (URISyntaxException e) { serverInfo.setErrorMessage(getContext().getString(R.string.exception_uri_syntax, e.getMessage())); } catch (IOException e) { diff --git a/src/at/bitfire/davdroid/syncadapter/SyncManager.java b/src/at/bitfire/davdroid/syncadapter/SyncManager.java index 8e218e32..c1bf2fa2 100644 --- a/src/at/bitfire/davdroid/syncadapter/SyncManager.java +++ b/src/at/bitfire/davdroid/syncadapter/SyncManager.java @@ -8,6 +8,7 @@ package at.bitfire.davdroid.syncadapter; import java.io.IOException; +import java.net.URISyntaxException; import java.util.HashSet; import java.util.Set; @@ -40,7 +41,7 @@ public class SyncManager { } - public void synchronize(boolean manualSync, SyncResult syncResult) throws LocalStorageException, IOException, HttpException, DavException { + public void synchronize(boolean manualSync, SyncResult syncResult) throws URISyntaxException, LocalStorageException, IOException, HttpException, DavException { // PHASE 1: push local changes to server int deletedRemotely = pushDeleted(), addedRemotely = pushNew(), @@ -98,7 +99,7 @@ public class SyncManager { } - private int pushDeleted() throws LocalStorageException, IOException, HttpException { + private int pushDeleted() throws URISyntaxException, LocalStorageException, IOException, HttpException { int count = 0; long[] deletedIDs = local.findDeleted(); @@ -129,7 +130,7 @@ public class SyncManager { return count; } - private int pushNew() throws LocalStorageException, IOException, HttpException { + private int pushNew() throws URISyntaxException, LocalStorageException, IOException, HttpException { int count = 0; long[] newIDs = local.findNew(); Log.i(TAG, "Uploading " + newIDs.length + " new resource(s) (if not existing)"); @@ -155,7 +156,7 @@ public class SyncManager { return count; } - private int pushDirty() throws LocalStorageException, IOException, HttpException { + private int pushDirty() throws URISyntaxException, LocalStorageException, IOException, HttpException { int count = 0; long[] dirtyIDs = local.findUpdated(); Log.i(TAG, "Uploading " + dirtyIDs.length + " modified resource(s) (if not changed)"); @@ -182,7 +183,7 @@ public class SyncManager { return count; } - private int pullNew(Resource[] resourcesToAdd) throws LocalStorageException, IOException, HttpException, DavException { + private int pullNew(Resource[] resourcesToAdd) throws URISyntaxException, LocalStorageException, IOException, HttpException, DavException { int count = 0; Log.i(TAG, "Fetching " + resourcesToAdd.length + " new remote resource(s)"); @@ -196,7 +197,7 @@ public class SyncManager { return count; } - private int pullChanged(Resource[] resourcesToUpdate) throws LocalStorageException, IOException, HttpException, DavException { + private int pullChanged(Resource[] resourcesToUpdate) throws URISyntaxException, LocalStorageException, IOException, HttpException, DavException { int count = 0; Log.i(TAG, "Fetching " + resourcesToUpdate.length + " updated remote resource(s)"); diff --git a/src/at/bitfire/davdroid/webdav/DavRedirectStrategy.java b/src/at/bitfire/davdroid/webdav/DavRedirectStrategy.java index 7b4ce172..8a62aab9 100644 --- a/src/at/bitfire/davdroid/webdav/DavRedirectStrategy.java +++ b/src/at/bitfire/davdroid/webdav/DavRedirectStrategy.java @@ -1,7 +1,9 @@ package at.bitfire.davdroid.webdav; +import java.net.MalformedURLException; import java.net.URI; import java.net.URISyntaxException; +import java.net.URL; import android.util.Log; import ch.boye.httpclientandroidlib.Header; @@ -66,7 +68,7 @@ public class DavRedirectStrategy implements RedirectStrategy { * Gets the destination of a redirection * @return absolute URL of new location; null if not available */ - static URI getLocation(HttpRequest request, HttpResponse response, HttpContext context) { + static URL getLocation(HttpRequest request, HttpResponse response, HttpContext context) { Header locationHdr = response.getFirstHeader("Location"); if (locationHdr == null) { Log.e(TAG, "Received redirection without Location header, ignoring"); @@ -86,10 +88,12 @@ public class DavRedirectStrategy implements RedirectStrategy { else return null; } - location = originalURI.resolve(location); + return new URL(originalURI.toURL(), location.toString()); } - return location; + return location.toURL(); } catch (URISyntaxException e) { + Log.e(TAG, "Received redirection from/to invalid URI, ignoring", e); + } catch (MalformedURLException e) { Log.e(TAG, "Received redirection from/to invalid URL, ignoring", e); } return null; diff --git a/src/at/bitfire/davdroid/webdav/TlsSniSocketFactory.java b/src/at/bitfire/davdroid/webdav/TlsSniSocketFactory.java index 7a116814..28890953 100644 --- a/src/at/bitfire/davdroid/webdav/TlsSniSocketFactory.java +++ b/src/at/bitfire/davdroid/webdav/TlsSniSocketFactory.java @@ -120,7 +120,7 @@ public class TlsSniSocketFactory implements LayeredConnectionSocketFactory { if (!hostnameVerifier.verify(host, session)) throw new SSLPeerUnverifiedException("Cannot verify hostname: " + host); - Log.i(TAG, "Established " + session.getProtocol() + " connection with " + session.getPeerHost() + + Log.d(TAG, "Established " + session.getProtocol() + " connection with " + session.getPeerHost() + " using " + session.getCipherSuite()); } diff --git a/src/at/bitfire/davdroid/webdav/WebDavResource.java b/src/at/bitfire/davdroid/webdav/WebDavResource.java index 75eba135..b965860a 100644 --- a/src/at/bitfire/davdroid/webdav/WebDavResource.java +++ b/src/at/bitfire/davdroid/webdav/WebDavResource.java @@ -10,8 +10,9 @@ package at.bitfire.davdroid.webdav; import java.io.IOException; import java.io.InputStream; import java.io.StringWriter; -import java.net.URI; +import java.net.MalformedURLException; import java.net.URISyntaxException; +import java.net.URL; import java.util.Arrays; import java.util.HashMap; import java.util.HashSet; @@ -28,7 +29,7 @@ import org.simpleframework.xml.Serializer; import org.simpleframework.xml.core.Persister; import android.util.Log; -import at.bitfire.davdroid.URIUtils; +import at.bitfire.davdroid.URLUtils; import at.bitfire.davdroid.resource.Event; import at.bitfire.davdroid.webdav.DavProp.Comp; import ch.boye.httpclientandroidlib.Header; @@ -79,7 +80,7 @@ public class WebDavResource { } // location of this resource - @Getter protected URI location; + @Getter protected URL location; // DAV capabilities (DAV: header) and allowed DAV methods (set for OPTIONS request) protected Set capabilities = new HashSet(), @@ -99,18 +100,18 @@ public class WebDavResource { protected HttpClientContext context; - public WebDavResource(CloseableHttpClient httpClient, URI baseURL) throws URISyntaxException { + public WebDavResource(CloseableHttpClient httpClient, URL baseURL) { this.httpClient = httpClient; - location = baseURL.normalize(); + location = baseURL; context = HttpClientContext.create(); context.setCredentialsProvider(new BasicCredentialsProvider()); } - public WebDavResource(CloseableHttpClient httpClient, URI baseURL, String username, String password, boolean preemptive) throws URISyntaxException { + public WebDavResource(CloseableHttpClient httpClient, URL baseURL, String username, String password, boolean preemptive) { this(httpClient, baseURL); - HttpHost host = new HttpHost(baseURL.getHost(), baseURL.getPort(), baseURL.getScheme()); + HttpHost host = new HttpHost(baseURL.getHost(), baseURL.getPort(), baseURL.getProtocol()); context.getCredentialsProvider().setCredentials(AuthScope.ANY, new UsernamePasswordCredentials(username, password)); if (preemptive) { @@ -129,17 +130,17 @@ public class WebDavResource { location = parent.location; } - protected WebDavResource(WebDavResource parent, URI uri) { + protected WebDavResource(WebDavResource parent, URL url) { this(parent); - location = uri; + location = url; } - public WebDavResource(WebDavResource parent, String member) { + public WebDavResource(WebDavResource parent, String member) throws MalformedURLException { this(parent); - location = parent.location.resolve(URIUtils.sanitize(member)); + location = new URL(parent.location, URLUtils.sanitize(member)); } - public WebDavResource(WebDavResource parent, String member, String ETag) { + public WebDavResource(WebDavResource parent, String member, String ETag) throws MalformedURLException { this(parent, member); properties.put(Property.ETAG, ETag); } @@ -148,8 +149,8 @@ public class WebDavResource { /* feature detection */ - public void options() throws IOException, HttpException { - HttpOptions options = new HttpOptions(location); + public void options() throws URISyntaxException, IOException, HttpException { + HttpOptions options = new HttpOptions(location.toURI()); CloseableHttpResponse response = httpClient.execute(options, context); try { checkResponse(response); @@ -178,7 +179,7 @@ public class WebDavResource { /* file hierarchy methods */ public String getName() { - String[] names = StringUtils.split(location.getRawPath(), "/"); + String[] names = StringUtils.split(location.getPath(), "/"); return names[names.length - 1]; } @@ -252,13 +253,13 @@ public class WebDavResource { /* collection operations */ - public void propfind(HttpPropfind.Mode mode) throws IOException, DavException, HttpException { + public void propfind(HttpPropfind.Mode mode) throws URISyntaxException, IOException, DavException, HttpException { CloseableHttpResponse response = null; // processMultiStatus() requires knowledge of the actual content location, // so we have to handle redirections manually and create a new request for the new location for (int i = context.getRequestConfig().getMaxRedirects(); i > 0; i--) { - HttpPropfind propfind = new HttpPropfind(location, mode); + HttpPropfind propfind = new HttpPropfind(location.toURI(), mode); response = httpClient.execute(propfind, context); if (response.getStatusLine().getStatusCode()/100 == 3) { @@ -281,7 +282,7 @@ public class WebDavResource { } } - public void multiGet(DavMultiget.Type type, String[] names) throws IOException, DavException, HttpException { + public void multiGet(DavMultiget.Type type, String[] names) throws URISyntaxException, IOException, DavException, HttpException { CloseableHttpResponse response = null; // processMultiStatus() requires knowledge of the actual content location, @@ -290,7 +291,7 @@ public class WebDavResource { // build multi-get XML request List hrefs = new LinkedList(); for (String name : names) - hrefs.add(location.resolve(name).getRawPath()); + hrefs.add(new URL(location, name).getPath()); DavMultiget multiget = DavMultiget.newRequest(type, hrefs.toArray(new String[0])); StringWriter writer = new StringWriter(); @@ -303,7 +304,7 @@ public class WebDavResource { } // submit REPORT request - HttpReport report = new HttpReport(location, writer.toString()); + HttpReport report = new HttpReport(location.toURI(), writer.toString()); response = httpClient.execute(report, context); if (response.getStatusLine().getStatusCode()/100 == 3) { @@ -330,8 +331,8 @@ public class WebDavResource { /* resource operations */ - public void get(String acceptedType) throws IOException, HttpException, DavException { - HttpGet get = new HttpGet(location); + public void get(String acceptedType) throws URISyntaxException, IOException, HttpException, DavException { + HttpGet get = new HttpGet(location.toURI()); get.addHeader("Accept", acceptedType); CloseableHttpResponse response = httpClient.execute(get, context); @@ -349,8 +350,8 @@ public class WebDavResource { } // returns the ETag of the created/updated resource, if available (null otherwise) - public String put(byte[] data, PutMode mode) throws IOException, HttpException { - HttpPut put = new HttpPut(location); + public String put(byte[] data, PutMode mode) throws URISyntaxException, IOException, HttpException { + HttpPut put = new HttpPut(location.toURI()); put.setEntity(new ByteArrayEntity(data)); switch (mode) { @@ -379,8 +380,8 @@ public class WebDavResource { return null; } - public void delete() throws IOException, HttpException { - HttpDelete delete = new HttpDelete(location); + public void delete() throws URISyntaxException, IOException, HttpException { + HttpDelete delete = new HttpDelete(location.toURI()); if (getETag() != null) delete.addHeader("If-Match", getETag()); @@ -404,9 +405,9 @@ public class WebDavResource { if (contentLocationHdr != null) try { // Content-Location was set, update location correspondingly - location = location.resolve(new URI(contentLocationHdr.getValue())); + location = new URL(location, contentLocationHdr.getValue()); Log.d(TAG, "Set Content-Location to " + location); - } catch (URISyntaxException e) { + } catch (MalformedURLException e) { Log.w(TAG, "Ignoring invalid Content-Location", e); } } @@ -455,9 +456,9 @@ public class WebDavResource { // iterate through all resources (either ourselves or member) for (DavResponse singleResponse : multiStatus.response) { - URI href; + URL href; try { - href = location.resolve(URIUtils.sanitize(singleResponse.getHref().href)); + href = new URL(location, URLUtils.sanitize(singleResponse.getHref().href)); } catch(IllegalArgumentException ex) { Log.w(TAG, "Ignoring illegal member URI in multi-status response", ex); continue; @@ -499,10 +500,10 @@ public class WebDavResource { } if (prop.addressbookHomeSet != null && prop.addressbookHomeSet.getHref() != null) - properties.put(Property.ADDRESSBOOK_HOMESET, URIUtils.ensureTrailingSlash(prop.addressbookHomeSet.getHref().href)); + properties.put(Property.ADDRESSBOOK_HOMESET, URLUtils.ensureTrailingSlash(prop.addressbookHomeSet.getHref().href)); if (prop.calendarHomeSet != null && prop.calendarHomeSet.getHref() != null) - properties.put(Property.CALENDAR_HOMESET, URIUtils.ensureTrailingSlash(prop.calendarHomeSet.getHref().href)); + properties.put(Property.CALENDAR_HOMESET, URLUtils.ensureTrailingSlash(prop.calendarHomeSet.getHref().href)); if (prop.displayname != null) properties.put(Property.DISPLAY_NAME, prop.displayname.getDisplayName()); @@ -511,7 +512,7 @@ public class WebDavResource { if (prop.resourcetype.getCollection() != null) { properties.put(Property.IS_COLLECTION, "1"); // is a collection, ensure trailing slash - href = URIUtils.ensureTrailingSlash(href); + href = URLUtils.ensureTrailingSlash(href); } if (prop.resourcetype.getAddressbook() != null) { // CardDAV collection properties properties.put(Property.IS_ADDRESSBOOK, "1"); @@ -558,7 +559,7 @@ public class WebDavResource { } // about which resource is this response? - if (location.equals(href) || URIUtils.ensureTrailingSlash(location).equals(href)) { // about ourselves + if (location.equals(href) || URLUtils.ensureTrailingSlash(location).equals(href)) { // about ourselves this.properties.putAll(properties); if (supportedComponents != null) this.supportedComponents = supportedComponents; diff --git a/test/src/at/bitfire/davdroid/syncadapter/DavResourceFinderTest.java b/test/src/at/bitfire/davdroid/syncadapter/DavResourceFinderTest.java index d577d262..ada0f88b 100644 --- a/test/src/at/bitfire/davdroid/syncadapter/DavResourceFinderTest.java +++ b/test/src/at/bitfire/davdroid/syncadapter/DavResourceFinderTest.java @@ -1,19 +1,34 @@ package at.bitfire.davdroid.syncadapter; +import java.io.IOException; +import java.net.URI; import java.util.List; -import ezvcard.VCardVersion; import android.test.InstrumentationTestCase; import at.bitfire.davdroid.resource.DavResourceFinder; import at.bitfire.davdroid.resource.ServerInfo; import at.bitfire.davdroid.resource.ServerInfo.ResourceInfo; import at.bitfire.davdroid.test.Constants; +import ezvcard.VCardVersion; public class DavResourceFinderTest extends InstrumentationTestCase { - public void testFindResources() throws Exception { - ServerInfo info = new ServerInfo(Constants.ROBOHYDRA_BASE, "test", "test", true); - DavResourceFinder.findResources(getInstrumentation().getContext(), info); + DavResourceFinder finder; + + @Override + protected void setUp() { + finder = new DavResourceFinder(getInstrumentation().getContext()); + } + + @Override + protected void tearDown() throws IOException { + finder.close(); + } + + + public void testFindResourcesRobohydra() throws Exception { + ServerInfo info = new ServerInfo(new URI(Constants.ROBOHYDRA_BASE), "test", "test", true); + finder.findResources(info); // CardDAV assertTrue(info.isCardDAV()); diff --git a/test/src/at/bitfire/davdroid/test/Constants.java b/test/src/at/bitfire/davdroid/test/Constants.java index e730c9e7..707762b3 100644 --- a/test/src/at/bitfire/davdroid/test/Constants.java +++ b/test/src/at/bitfire/davdroid/test/Constants.java @@ -1,18 +1,18 @@ package at.bitfire.davdroid.test; -import java.net.URI; -import java.net.URISyntaxException; +import java.net.MalformedURLException; +import java.net.URL; import android.util.Log; public class Constants { public static final String ROBOHYDRA_BASE = "http://10.0.0.11:3000/"; - public static URI roboHydra; + public static URL roboHydra; static { try { - roboHydra = new URI(ROBOHYDRA_BASE); - } catch(URISyntaxException e) { + roboHydra = new URL(ROBOHYDRA_BASE); + } catch(MalformedURLException e) { Log.wtf("davdroid.test.Constants", "Invalid RoboHydra base URL"); } } diff --git a/test/src/at/bitfire/davdroid/test/URIUtilsTest.java b/test/src/at/bitfire/davdroid/test/URIUtilsTest.java deleted file mode 100644 index 083f16bb..00000000 --- a/test/src/at/bitfire/davdroid/test/URIUtilsTest.java +++ /dev/null @@ -1,49 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2014 Ricki Hirner (bitfire web engineering). - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the GNU Public License v3.0 - * which accompanies this distribution, and is available at - * http://www.gnu.org/licenses/gpl.html - ******************************************************************************/ -package at.bitfire.davdroid.test; - -import java.net.URI; -import java.net.URISyntaxException; - -import junit.framework.TestCase; -import at.bitfire.davdroid.URIUtils; - -public class URIUtilsTest extends TestCase { - - public void testEnsureTrailingSlash() throws URISyntaxException { - assertEquals("/test/", URIUtils.ensureTrailingSlash("/test")); - assertEquals("/test/", URIUtils.ensureTrailingSlash("/test/")); - - String withoutSlash = "http://www.test.at/dav/collection", - withSlash = withoutSlash + "/"; - assertEquals(new URI(withSlash), URIUtils.ensureTrailingSlash(new URI(withoutSlash))); - assertEquals(new URI(withSlash), URIUtils.ensureTrailingSlash(new URI(withSlash))); - } - - public void testSanitize() { - assertNull(URIUtils.sanitize(null)); - - // escape "@" - assertEquals("https://my%40server/my%40email.com/dir", URIUtils.sanitize("https://my@server/my@email.com/dir")); - assertEquals("http://my%40server/my%40email.com/dir", URIUtils.sanitize("http://my@server/my@email.com/dir")); - assertEquals("//my%40server/my%40email.com/dir", URIUtils.sanitize("//my@server/my@email.com/dir")); - assertEquals("/my%40email.com/dir", URIUtils.sanitize("/my@email.com/dir")); - assertEquals("my%40email.com/dir", URIUtils.sanitize("my@email.com/dir")); - - // escape ":" in path but not as port separator - assertEquals("https://www.test.at:80/my%3afile.vcf", URIUtils.sanitize("https://www.test.at:80/my:file.vcf")); - assertEquals("http://www.test.at:80/my%3afile.vcf", URIUtils.sanitize("http://www.test.at:80/my:file.vcf")); - assertEquals("//www.test.at:80/my%3afile.vcf", URIUtils.sanitize("//www.test.at:80/my:file.vcf")); - assertEquals("/my%3afile.vcf", URIUtils.sanitize("/my:file.vcf")); - assertEquals("my%3afile.vcf", URIUtils.sanitize("my:file.vcf")); - - // keep literal IPv6 addresses (only in host name) - assertEquals("https://[1:2::1]/", URIUtils.sanitize("https://[1:2::1]/")); - assertEquals("/%5b1%3a2%3a%3a1%5d/", URIUtils.sanitize("/[1:2::1]/")); - } -} diff --git a/test/src/at/bitfire/davdroid/test/URLUtilsTest.java b/test/src/at/bitfire/davdroid/test/URLUtilsTest.java new file mode 100644 index 00000000..555b9b6b --- /dev/null +++ b/test/src/at/bitfire/davdroid/test/URLUtilsTest.java @@ -0,0 +1,48 @@ +/******************************************************************************* + * Copyright (c) 2014 Ricki Hirner (bitfire web engineering). + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the GNU Public License v3.0 + * which accompanies this distribution, and is available at + * http://www.gnu.org/licenses/gpl.html + ******************************************************************************/ +package at.bitfire.davdroid.test; + +import java.net.URL; + +import junit.framework.TestCase; +import at.bitfire.davdroid.URLUtils; + +public class URLUtilsTest extends TestCase { + + public void testEnsureTrailingSlash() throws Exception { + assertEquals("/test/", URLUtils.ensureTrailingSlash("/test")); + assertEquals("/test/", URLUtils.ensureTrailingSlash("/test/")); + + String withoutSlash = "http://www.test.at/dav/collection", + withSlash = withoutSlash + "/"; + assertEquals(new URL(withSlash), URLUtils.ensureTrailingSlash(new URL(withoutSlash))); + assertEquals(new URL(withSlash), URLUtils.ensureTrailingSlash(new URL(withSlash))); + } + + public void testSanitize() { + assertNull(URLUtils.sanitize(null)); + + // escape "@" + assertEquals("https://my%40server/my%40email.com/dir", URLUtils.sanitize("https://my@server/my@email.com/dir")); + assertEquals("http://my%40server/my%40email.com/dir", URLUtils.sanitize("http://my@server/my@email.com/dir")); + assertEquals("//my%40server/my%40email.com/dir", URLUtils.sanitize("//my@server/my@email.com/dir")); + assertEquals("/my%40email.com/dir", URLUtils.sanitize("/my@email.com/dir")); + assertEquals("my%40email.com/dir", URLUtils.sanitize("my@email.com/dir")); + + // escape ":" in path but not as port separator + assertEquals("https://www.test.at:80/my%3afile.vcf", URLUtils.sanitize("https://www.test.at:80/my:file.vcf")); + assertEquals("http://www.test.at:80/my%3afile.vcf", URLUtils.sanitize("http://www.test.at:80/my:file.vcf")); + assertEquals("//www.test.at:80/my%3afile.vcf", URLUtils.sanitize("//www.test.at:80/my:file.vcf")); + assertEquals("/my%3afile.vcf", URLUtils.sanitize("/my:file.vcf")); + assertEquals("my%3afile.vcf", URLUtils.sanitize("my:file.vcf")); + + // keep literal IPv6 addresses (only in host name) + assertEquals("https://[1:2::1]/", URLUtils.sanitize("https://[1:2::1]/")); + assertEquals("/%5b1%3a2%3a%3a1%5d/", URLUtils.sanitize("/[1:2::1]/")); + } +} diff --git a/test/src/at/bitfire/davdroid/webdav/DavRedirectStrategyTest.java b/test/src/at/bitfire/davdroid/webdav/DavRedirectStrategyTest.java index 8b92629d..7467175f 100644 --- a/test/src/at/bitfire/davdroid/webdav/DavRedirectStrategyTest.java +++ b/test/src/at/bitfire/davdroid/webdav/DavRedirectStrategyTest.java @@ -1,6 +1,7 @@ package at.bitfire.davdroid.webdav; import java.io.IOException; +import java.net.URL; import junit.framework.TestCase; import at.bitfire.davdroid.test.Constants; @@ -34,7 +35,7 @@ public class DavRedirectStrategyTest extends TestCase { // happy cases public void testNonRedirection() throws Exception { - HttpUriRequest request = new HttpOptions(Constants.roboHydra); + HttpUriRequest request = new HttpOptions(Constants.roboHydra.toURI()); HttpResponse response = httpClient.execute(request); assertFalse(strategy.isRedirected(request, response, null)); } @@ -43,12 +44,12 @@ public class DavRedirectStrategyTest extends TestCase { final String newLocation = "/new-location"; HttpContext context = HttpClientContext.create(); - HttpUriRequest request = new HttpOptions(Constants.roboHydra.resolve("redirect/301?to=" + newLocation)); + HttpUriRequest request = new HttpOptions(new URL(Constants.roboHydra, "redirect/301?to=" + newLocation).toURI()); HttpResponse response = httpClient.execute(request, context); assertTrue(strategy.isRedirected(request, response, context)); HttpUriRequest redirected = strategy.getRedirect(request, response, context); - assertEquals(Constants.roboHydra.resolve(newLocation), redirected.getURI()); + assertEquals(new URL(Constants.roboHydra, newLocation).toURI(), redirected.getURI()); } @@ -56,18 +57,18 @@ public class DavRedirectStrategyTest extends TestCase { public void testMissingLocation() throws Exception { HttpContext context = HttpClientContext.create(); - HttpUriRequest request = new HttpOptions(Constants.roboHydra.resolve("redirect/without-location")); + HttpUriRequest request = new HttpOptions(new URL(Constants.roboHydra, "redirect/without-location").toURI()); HttpResponse response = httpClient.execute(request, context); assertFalse(strategy.isRedirected(request, response, context)); } public void testRelativeLocation() throws Exception { HttpContext context = HttpClientContext.create(); - HttpUriRequest request = new HttpOptions(Constants.roboHydra.resolve("redirect/relative")); + HttpUriRequest request = new HttpOptions(new URL(Constants.roboHydra, "redirect/relative").toURI()); HttpResponse response = httpClient.execute(request, context); assertTrue(strategy.isRedirected(request, response, context)); HttpUriRequest redirected = strategy.getRedirect(request, response, context); - assertEquals(Constants.roboHydra.resolve("/new/location"), redirected.getURI()); + assertEquals(new URL(Constants.roboHydra, "/new/location").toURI(), redirected.getURI()); } } diff --git a/test/src/at/bitfire/davdroid/webdav/WebDavResourceTest.java b/test/src/at/bitfire/davdroid/webdav/WebDavResourceTest.java index e5cb21d1..4a5b0510 100644 --- a/test/src/at/bitfire/davdroid/webdav/WebDavResourceTest.java +++ b/test/src/at/bitfire/davdroid/webdav/WebDavResourceTest.java @@ -7,10 +7,8 @@ ******************************************************************************/ package at.bitfire.davdroid.webdav; -import java.io.IOException; import java.io.InputStream; -import java.net.URI; -import java.net.URISyntaxException; +import java.net.URL; import java.util.Arrays; import java.util.List; @@ -48,26 +46,26 @@ public class WebDavResourceTest extends InstrumentationTestCase { assetMgr = getInstrumentation().getContext().getResources().getAssets(); - baseDAV = new WebDavResource(httpClient, Constants.roboHydra.resolve("/dav/")); + baseDAV = new WebDavResource(httpClient, new URL(Constants.roboHydra, "/dav/")); - simpleFile = new WebDavResource(httpClient, new URI(Constants.ROBOHYDRA_BASE + "assets/test.random")); + simpleFile = new WebDavResource(httpClient, new URL(Constants.ROBOHYDRA_BASE + "assets/test.random")); - davCollection = new WebDavResource(httpClient, new URI(Constants.ROBOHYDRA_BASE + "dav/")); + davCollection = new WebDavResource(httpClient, new URL(Constants.ROBOHYDRA_BASE + "dav/")); davNonExistingFile = new WebDavResource(davCollection, "collection/new.file"); davExistingFile = new WebDavResource(davCollection, "collection/existing.file"); - davInvalid = new WebDavResource(httpClient, new URI(Constants.ROBOHYDRA_BASE + "dav-invalid/")); + davInvalid = new WebDavResource(httpClient, new URL(Constants.ROBOHYDRA_BASE + "dav-invalid/")); } @Override - protected void tearDown() throws IOException { + protected void tearDown() throws Exception { httpClient.close(); } /* test feature detection */ - public void testOptions() throws URISyntaxException, IOException, HttpException { + public void testOptions() throws Exception { String[] davMethods = new String[] { "PROPFIND", "GET", "PUT", "DELETE", "REPORT" }, davCapabilities = new String[] { "addressbook", "calendar-access" }; @@ -79,7 +77,7 @@ public class WebDavResourceTest extends InstrumentationTestCase { assert(capable.supportsDAV(capability)); } - public void testPropfindCurrentUserPrincipal() throws IOException, HttpException, DavException { + public void testPropfindCurrentUserPrincipal() throws Exception { davCollection.propfind(HttpPropfind.Mode.CURRENT_USER_PRINCIPAL); assertEquals("/dav/principals/users/test", davCollection.getCurrentUserPrincipal()); @@ -92,14 +90,14 @@ public class WebDavResourceTest extends InstrumentationTestCase { assertNull(simpleFile.getCurrentUserPrincipal()); } - public void testPropfindHomeSets() throws IOException, HttpException, DavException { + public void testPropfindHomeSets() throws Exception { WebDavResource dav = new WebDavResource(davCollection, "principals/users/test"); dav.propfind(HttpPropfind.Mode.HOME_SETS); assertEquals("/dav/addressbooks/test/", dav.getAddressbookHomeSet()); assertEquals("/dav/calendars/test/", dav.getCalendarHomeSet()); } - public void testPropfindAddressBooks() throws IOException, HttpException, DavException { + public void testPropfindAddressBooks() throws Exception { WebDavResource dav = new WebDavResource(davCollection, "addressbooks/test"); dav.propfind(HttpPropfind.Mode.CARDDAV_COLLECTIONS); assertEquals(2, dav.getMembers().size()); @@ -112,7 +110,7 @@ public class WebDavResourceTest extends InstrumentationTestCase { } } - public void testPropfindCalendars() throws IOException, HttpException, DavException { + public void testPropfindCalendars() throws Exception { WebDavResource dav = new WebDavResource(davCollection, "calendars/test"); dav.propfind(Mode.CALDAV_COLLECTIONS); assertEquals(3, dav.getMembers().size()); @@ -126,7 +124,7 @@ public class WebDavResourceTest extends InstrumentationTestCase { } } - public void testPropfindTrailingSlashes() throws IOException, HttpException, DavException { + public void testPropfindTrailingSlashes() throws Exception { final String principalOK = "/principals/ok"; String requestPaths[] = { @@ -146,22 +144,22 @@ public class WebDavResourceTest extends InstrumentationTestCase { /* test normal HTTP/WebDAV */ - public void testPropfindRedirection() throws URISyntaxException, IOException, DavException, HttpException { + public void testPropfindRedirection() throws Exception { // PROPFIND redirection WebDavResource redirected = new WebDavResource(baseDAV, "/redirect/301?to=/dav/"); redirected.propfind(Mode.CURRENT_USER_PRINCIPAL); assertEquals("/dav/", redirected.getLocation().getPath()); } - public void testGet() throws URISyntaxException, IOException, HttpException, DavException { + public void testGet() throws Exception { simpleFile.get("*/*"); @Cleanup InputStream is = assetMgr.open("test.random", AssetManager.ACCESS_STREAMING); byte[] expected = IOUtils.toByteArray(is); assertTrue(Arrays.equals(expected, simpleFile.getContent())); } - public void testGetHttpsWithSni() throws URISyntaxException, HttpException, IOException, DavException { - WebDavResource file = new WebDavResource(httpClient, new URI("https://sni.velox.ch")); + public void testGetHttpsWithSni() throws Exception { + WebDavResource file = new WebDavResource(httpClient, new URL("https://sni.velox.ch")); boolean sniWorking = false; try { @@ -173,7 +171,7 @@ public class WebDavResourceTest extends InstrumentationTestCase { assertTrue(sniWorking); } - public void testMultiGet() throws DavException, IOException, HttpException { + public void testMultiGet() throws Exception { WebDavResource davAddressBook = new WebDavResource(davCollection, "addressbooks/default.vcf"); davAddressBook.multiGet(DavMultiget.Type.ADDRESS_BOOK, new String[] { "1.vcf", "2.vcf" }); assertEquals(2, davAddressBook.getMembers().size()); @@ -182,7 +180,7 @@ public class WebDavResourceTest extends InstrumentationTestCase { } } - public void testPutAddDontOverwrite() throws IOException, HttpException { + public void testPutAddDontOverwrite() throws Exception { // should succeed on a non-existing file assertEquals("has-just-been-created", davNonExistingFile.put(SAMPLE_CONTENT, PutMode.ADD_DONT_OVERWRITE)); @@ -194,7 +192,7 @@ public class WebDavResourceTest extends InstrumentationTestCase { } } - public void testPutUpdateDontOverwrite() throws IOException, HttpException { + public void testPutUpdateDontOverwrite() throws Exception { // should succeed on an existing file assertEquals("has-just-been-updated", davExistingFile.put(SAMPLE_CONTENT, PutMode.UPDATE_DONT_OVERWRITE)); @@ -206,7 +204,7 @@ public class WebDavResourceTest extends InstrumentationTestCase { } } - public void testDelete() throws IOException, HttpException { + public void testDelete() throws Exception { // should succeed on an existing file davExistingFile.delete(); @@ -224,13 +222,13 @@ public class WebDavResourceTest extends InstrumentationTestCase { /* special test */ - public void testInvalidURLs() throws IOException, HttpException, DavException { + public void testInvalidURLs() throws Exception { WebDavResource dav = new WebDavResource(davInvalid, "addressbooks/user%40domain/"); dav.propfind(HttpPropfind.Mode.CARDDAV_COLLECTIONS); List members = dav.getMembers(); assertEquals(2, members.size()); assertEquals(Constants.ROBOHYDRA_BASE + "dav/addressbooks/user%40domain/My%20Contacts%3a1.vcf/", members.get(0).getLocation().toString()); - assertEquals("HTTPS://example.com/user%40domain/absolute-url.vcf/", members.get(1).getLocation().toString()); + assertEquals("https://example.com/user%40domain/absolute-url.vcf/", members.get(1).getLocation().toString()); } }