vnc: Initial binder service
Use aidl-cpp to generate binder boilerplate from an initial
interface description. This will allow configuring the service
from within Android.
diff --git a/src/VNCService.h b/src/VNCService.h
new file mode 100644
index 0000000..6362798
--- /dev/null
+++ b/src/VNCService.h
@@ -0,0 +1,50 @@
+#include "org/chemlab/BnVNCService.h"
+
+#include "VNCFlinger.h"
+
+namespace android {
+
+class VNCService : public org::chemlab::BnVNCService {
+
+public:
+ VNCService(sp<VNCFlinger> flinger) : mVNC(flinger) {}
+
+ binder::Status start(bool* ret) {
+ *ret = mVNC->start();
+ return binder::Status::ok();
+ }
+
+ binder::Status stop(bool* ret) {
+ *ret = mVNC->stop() == NO_ERROR;
+ return binder::Status::ok();
+ }
+
+ binder::Status setPort(int32_t port, bool* ret) {
+ *ret = mVNC->setPort(port) == NO_ERROR;
+ return binder::Status::ok();
+ }
+
+ binder::Status setV4Address(const String16& addr, bool* ret) {
+ *ret = mVNC->setV4Address(String8(addr)) == NO_ERROR;
+ return binder::Status::ok();
+ }
+
+ binder::Status setV6Address(const String16& addr, bool* ret) {
+ *ret = mVNC->setV6Address(String8(addr)) == NO_ERROR;
+ return binder::Status::ok();
+ }
+
+ binder::Status setPassword(const String16& addr, bool* ret) {
+ *ret = mVNC->setPassword(String8(addr)) == NO_ERROR;
+ return binder::Status::ok();
+ }
+
+ binder::Status clearPassword(bool* ret) {
+ *ret = mVNC->clearPassword() == NO_ERROR;
+ return binder::Status::ok();
+ }
+
+private:
+ sp<VNCFlinger> mVNC;
+};
+};