New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
iCloud Problem beim Download / Upload der Bilder #122
Comments
Wir könnten die Prüfung komplett ausbauen und Authorization Fehler stattdessen ignorieren.
Viele Grüße, Andreas
… Am 15.02.2019 um 21:59 schrieb toby17780 ***@***.***>:
Hallo,
ich habe ein Problem bei der Verwendung des iCloud Accounts. Der Download der Bilder funktioniert leider nicht. Bei der Analyse habe ich das festgestellt:
In der Backend.php wird geprüft, ob die Bilder auf dem selben Server liegen wie die vCards.
//check if mime is linked onto the same server
$serv = explode('/', $this->url, 4); // get the beginning of the current server adress
$link = explode('/', $vcard->{$substituteID}, 4); // get the beginning of the linked adress
if (strcasecmp($serv[2], $link[2]) !== 0) { // if they aren´t equal authorisation will fail!
return $vcard;
}
Bei iCloud Kontakten schlägt die Prüfung aus folgendem Grund immer fehl:
CalDAV URL: https://p44-contacts.icloud.com/...
Picture URL: https://p44-contacts.icloud.com:443/...
Das kann man zwar umgehen, wenn man bei der CalDAV URL den Port mit angibt, könnte man aber auch im Vergleich berücksichtigen.
Das Script hat aber immer noch nur einige meiner Bilder geladen. Dabei ist mir aufgefallen, dass meine Bilder auf unterschiedlichen iCloud Stores liegen:
https://p03-contacts.icloud.com/...
https://p44-contacts.icloud.com/...
Als ich die if Abfrage zum Test komplett deaktiviert habe, wurden aber alle Bilder korrekt geladen!
Das heißt -> für iCloud CalDAV Server würde es reichen auf die Domain zu prüfen, und die Subdomain komplett zu ignorieren. Ob das natürlich bei allen anderen CalDAV Servern genauso funktioniert kann ich nicht beurteilen.
Zumindest wäre aber die Ausgabe eines Fehlers in dem Fall wichtig, denn ich hab schon eine ganze Weile gebraucht um dahinter zu kommen. (ich für mich habe die if Abfrage jetzt einfach mal auskommentiert und so läufts erstmal)
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or mute the thread.
|
Naja - ignorieren aber ein Fehler ausgeben wäre doch cool, oder? |
Ja, klar. Oder es gibt einen guten Grund die Abfrage gleich zu lassen. Ich seh keinen.
Viele Grüße,
Andreas
… Am 16.02.2019 um 20:09 schrieb toby17780 ***@***.***>:
Naja - ignorieren aber ein Fehler ausgeben wäre doch cool, oder?
Grüße Tobias
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub, or mute the thread.
|
@toby17780 |
Der Vergleich wie aktuell implementiert macht keinen Sinn da der Port irrelevant ist, aber mit verglichen ist. Stattdessen müsste vorab der Host mittels parse_url ermittelt werden und nur dieser verglichen. Pr welcome 😀 |
Update: bei Dir ist es sogar noch schlimmer: die Server sind auch nich unterschiedlich. Dann würde ich vorschlagen die Abfrage rauszunehmen und Authorization Fehler zu loggen aber nicht mehr abzubrechen. |
ist schon umgesetzt - kommt mit dem PR für vcardLib. |
Hallo,
ich habe ein Problem bei der Verwendung des iCloud Accounts. Der Download der Bilder funktioniert leider nicht. Bei der Analyse habe ich das festgestellt:
In der Backend.php wird geprüft, ob die Bilder auf dem selben Server liegen wie die vCards.
Bei iCloud Kontakten schlägt die Prüfung aus folgendem Grund immer fehl:
Das kann man zwar umgehen, wenn man bei der CalDAV URL den Port mit angibt, könnte man aber auch im Vergleich berücksichtigen.
Das Script hat aber immer noch nur einige meiner Bilder geladen. Dabei ist mir aufgefallen, dass meine Bilder auf unterschiedlichen iCloud Stores liegen:
Als ich die if Abfrage zum Test komplett deaktiviert habe, wurden aber alle Bilder korrekt geladen!
Das heißt -> für iCloud CalDAV Server würde es reichen auf die Domain zu prüfen, und die Subdomain komplett zu ignorieren. Ob das natürlich bei allen anderen CalDAV Servern genauso funktioniert kann ich nicht beurteilen.
Zumindest wäre aber die Ausgabe eines Fehlers in dem Fall wichtig, denn ich hab schon eine ganze Weile gebraucht um dahinter zu kommen. (ich für mich habe die if Abfrage jetzt einfach mal auskommentiert und so läufts erstmal)
The text was updated successfully, but these errors were encountered: