Index: chrome/browser/password_manager/keyring_proxy/keyring_proxy.h |
=================================================================== |
--- chrome/browser/password_manager/keyring_proxy/keyring_proxy.h (revision 0) |
+++ chrome/browser/password_manager/keyring_proxy/keyring_proxy.h (revision 0) |
@@ -0,0 +1,55 @@ |
+// Copyright (c) 2011 The Chromium Authors. All rights reserved. |
+// Use of this source code is governed by a BSD-style license that can be |
+// found in the LICENSE file. |
+ |
+#ifndef CHROME_BROWSER_PASSWORD_MANAGER_KEYRING_PROXY_KEYRING_PROXY_H_ |
+#define CHROME_BROWSER_PASSWORD_MANAGER_KEYRING_PROXY_KEYRING_PROXY_H_ |
+#pragma once |
+ |
+#include "base/memory/scoped_ptr.h" |
+#include "chrome/browser/password_manager/keyring_proxy/gnome_keyring_loader.h" |
+#include "chrome/browser/password_manager/keyring_proxy/message_reader.h" |
+ |
+// Forward declarations of GLib stuff. |
+typedef struct _GMainLoop GMainLoop; |
+typedef struct _GSource GSource; |
+ |
+namespace keyring_proxy { |
+ |
+class MessageProcessor; |
+ |
+class KeyringProxy : public GnomeKeyringLoader { |
+ public: |
+ // These are the command characters in the wire protocol for communicating |
+ // with the keyring proxy. |
+ static const char kAddLoginCommand = 'A'; |
+ static const char kRemoveLoginCommand = 'R'; |
+ static const char kAddLoginSearchCommand = 'a'; |
+ static const char kUpdateLoginSearchCommand = 'u'; |
+ static const char kGetLoginsCommand = 'g'; |
+ static const char kGetLoginsListCommand = 'l'; |
+ static const char kGetAllLoginsCommand = '*'; |
+ |
+ KeyringProxy(int fd, FILE* output); |
+ |
+ ~KeyringProxy(); |
+ |
+ bool Init(); |
+ void Run(); |
+ void Stop(); |
+ |
+ private: |
+ void ReadData(); |
+ |
+ static gboolean DataReady(gpointer data); |
+ |
+ int fd_; |
+ GMainLoop* main_loop_; |
+ GSource* input_; |
+ MessageReader reader_; |
+ scoped_ptr<MessageProcessor> processor_; |
+}; |
+ |
+} // namespace keyring_proxy |
+ |
+#endif // CHROME_BROWSER_PASSWORD_MANAGER_KEYRING_PROXY_KEYRING_PROXY_H_ |
Property changes on: chrome/browser/password_manager/keyring_proxy/keyring_proxy.h |
___________________________________________________________________ |
Added: svn:eol-style |
+ LF |