Comments (10)
As always, I don't have a Virgin Media device, so I can't test any fix, nor diagnose why anything isn't working.
from tivo-commander.
I do realise you've got no access to a Virgin Media TiVo. I can do some limited debugging for you if you like, but I don't normally run Android any more and I've no real familiarity with Java, android development or crypto.
With a bit of luck we'll be able to recruit someone more "invested" in getting this working on Android from the Virgin Media forums in the UK.
from tivo-commander.
FYI: Reports on Virgin Media's forums are mixed. It does seem to work for several people.
Perhaps the difference is the SSL implementation on the handset.
I've grabbed the source and I'm going to try & debug on my old Android handset.
from tivo-commander.
I think the problem might be Android Issue #26542.
The TiVo client cert does appear to have involve a chain of authority (AFAICT; I'm no expert). All but one of the success reports on the above forum mention that they're running 2.3 or above, and I wouldn't be surprised if the one that mentions 2.2 is mistaken.
Have you had any reports of TiVo Commander failing on Android 2.2 or below?
from tivo-commander.
Nothing besides this and #15 since that time frame.
from tivo-commander.
Interesting. Having seen the failure I would have expected it to fail on a Premiere XL in the same way (on a <2.3 handset). Maybe everyone interested enough bother downloading and installing (within the last 14 days) has 2.3+. :-)
BTW: I'm an idiot. Here's the actual exception that I get:
02-17 03:30:29.207: E/NativeCrypto(3815): Unknown error 1 during connect
02-17 03:30:41.457: E/tivo_commander(3815): connect: io exception!
02-17 03:30:41.457: E/tivo_commander(3815): java.io.IOException: SSL handshake failure: Failure in SSL library, usually a protocol error
02-17 03:30:41.457: E/tivo_commander(3815): error:14094412:SSL routines:SSL3_READ_BYTES:sslv3 alert bad certificate (external/openssl/ssl/s3_pkt.c:1139 0x23b9c8:0x00000003)
02-17 03:30:41.457: E/tivo_commander(3815): at org.apache.harmony.xnet.provider.jsse.OpenSSLSocketImpl.nativeconnect(Native Method)
02-17 03:30:41.457: E/tivo_commander(3815): at org.apache.harmony.xnet.provider.jsse.OpenSSLSocketImpl.startHandshake(OpenSSLSocketImpl.java:316)
02-17 03:30:41.457: E/tivo_commander(3815): at org.apache.harmony.xnet.provider.jsse.OpenSSLSocketImpl$SSLInputStream.<init>(OpenSSLSocketImpl.java:520)
02-17 03:30:41.457: E/tivo_commander(3815): at org.apache.harmony.xnet.provider.jsse.OpenSSLSocketImpl.getInputStream(OpenSSLSocketImpl.java:461)
02-17 03:30:41.457: E/tivo_commander(3815): at com.arantius.tivocommander.rpc.MindRpc$3.call(MindRpc.java:295)
02-17 03:30:41.457: E/tivo_commander(3815): at com.arantius.tivocommander.rpc.MindRpc$3.call(MindRpc.java:1)
02-17 03:30:41.457: E/tivo_commander(3815): at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:305)
02-17 03:30:41.457: E/tivo_commander(3815): at java.util.concurrent.FutureTask.run(FutureTask.java:137)
02-17 03:30:41.457: E/tivo_commander(3815): at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:114)
02-17 03:30:41.457: E/tivo_commander(3815): at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:229)
02-17 03:30:41.457: E/tivo_commander(3815): at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1068)
02-17 03:30:41.457: E/tivo_commander(3815): at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:561)
02-17 03:30:41.457: E/tivo_commander(3815): at java.lang.Thread.run(Thread.java:1096)
I'm going to see if I can manage to get BouncyCastle (well, SpongyCastle) working, instead.
from tivo-commander.
Is this still an issue? Might it just be requiring an updated client cert? Someone might be able to help with that... :-)
from tivo-commander.
I still have no idea because I'm in the US. If you have a Virgin Media TiVo and are willing and able to grant me access to it, contact me directly and I can try to spend some time figuring out what the problem is exactly.
from tivo-commander.
@billytaylor gave me a port forward to attempt connecting. All I can get unfortunately is a single error:
{"code": "routingError", "text": "The active partner ID does not have access to the operation.", "type": "error"}
I can't act on that directly.
from tivo-commander.
Unfortunately, closing this as WONTFIX. This is up to TiVo and/or Virgin Media. It's out of my control to affect this.
from tivo-commander.
Related Issues (20)
- Consider integrating a bug reporting solution HOT 3
- In Explore view, (some?) movies are still offering "add season pass" choice for "record..."
- Discovery: Sometimes shows the same device twice
- Crash when pressing title during TBA status
- Scrub Bar wrong for old "live" show
- NPE in To Do list
- My Shows: Long press, delete last show leaves empty list HOT 1
- Rare data driven crash on missing date
- Enhance PC vs. TiVo detection
- Upcoming long press: record HOT 1
- Inexplicable connect failure HOT 1
- Fix the multicast error string
- Attach build.prop separate from log
- Be more explicit about non-TiVo branded devices HOT 1
- Don't show the error report dialog for common errors. HOT 1
- A lot more logging HOT 1
- Error reports: custom dialog HOT 1
- Support platform "tcd/XG1" HOT 1
- Character name disappears
- Consider Chrome/ARC compatibility
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from tivo-commander.