1 /* 2 * 3 * BlueZ - Bluetooth protocol stack for Linux 4 * 5 * Copyright (C) 2004-2010 Marcel Holtmann <marcel (at) holtmann.org> 6 * 7 * 8 * This program is free software; you can redistribute it and/or modify 9 * it under the terms of the GNU General Public License as published by 10 * the Free Software Foundation; either version 2 of the License, or 11 * (at your option) any later version. 12 * 13 * This program is distributed in the hope that it will be useful, 14 * but WITHOUT ANY WARRANTY; without even the implied warranty of 15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 * GNU General Public License for more details. 17 * 18 * You should have received a copy of the GNU General Public License 19 * along with this program; if not, write to the Free Software 20 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA 21 * 22 */ 23 24 #ifdef HAVE_CONFIG_H 25 #include <config.h> 26 #endif 27 28 #include <errno.h> 29 30 #include <gdbus.h> 31 32 #include "plugin.h" 33 #include "manager.h" 34 35 static DBusConnection *connection; 36 37 static int serial_init(void) 38 { 39 connection = dbus_bus_get(DBUS_BUS_SYSTEM, NULL); 40 if (connection == NULL) 41 return -EIO; 42 43 if (serial_manager_init(connection) < 0) { 44 dbus_connection_unref(connection); 45 return -EIO; 46 } 47 48 return 0; 49 } 50 51 static void serial_exit(void) 52 { 53 serial_manager_exit(); 54 55 dbus_connection_unref(connection); 56 } 57 58 BLUETOOTH_PLUGIN_DEFINE(serial, VERSION, 59 BLUETOOTH_PLUGIN_PRIORITY_DEFAULT, serial_init, serial_exit) 60