>From 2252007def04173f28a400661445f4c0c962590f Mon Sep 17 00:00:00 2001 From: Jakub Hrozek Date: Sat, 15 Dec 2012 16:24:25 +0100 Subject: [PATCH 6/7] RESPONDERS: Create a common file with service names and versions The monitor sends calls different sbus methods to different responders. Instead of including headers of the particular responders directly in monitor, which breaks layering a little, create a common header file that will be included from src/responder/common/ --- src/monitor/monitor.c | 2 +- src/responder/autofs/autofs_private.h | 3 +-- src/responder/common/responder_sbus.h | 45 +++++++++++++++++++++++++++++++++++ src/responder/nss/nsssrv.c | 1 + src/responder/nss/nsssrv.h | 3 --- src/responder/pac/pacsrv.h | 4 +--- src/responder/pam/pamsrv.c | 4 +--- src/responder/ssh/sshsrv.c | 1 + src/responder/ssh/sshsrv_private.h | 3 --- src/responder/sudo/sudosrv.c | 1 + src/responder/sudo/sudosrv_private.h | 2 -- 11 files changed, 52 insertions(+), 17 deletions(-) create mode 100644 src/responder/common/responder_sbus.h diff --git a/src/monitor/monitor.c b/src/monitor/monitor.c index 69180cd81a8030729941bd004cbf9754782c3b23..cc6f6d55def27a48f1545136763538b8a2db0904 100644 --- a/src/monitor/monitor.c +++ b/src/monitor/monitor.c @@ -51,7 +51,7 @@ #include "dbus/dbus.h" #include "sbus/sssd_dbus.h" #include "monitor/monitor_interfaces.h" -#include "responder/nss/nsssrv.h" +#include "responder/common/responder_sbus.h" #ifdef USE_KEYRING #include diff --git a/src/responder/autofs/autofs_private.h b/src/responder/autofs/autofs_private.h index 58445f35b584b1a42debe97eb67b3bb2af1c417e..efe1d623fbf7659beac301983a03163dfc86df0b 100644 --- a/src/responder/autofs/autofs_private.h +++ b/src/responder/autofs/autofs_private.h @@ -21,8 +21,7 @@ #ifndef _AUTOFSSRV_PRIVATE_H_ #define _AUTOFSSRV_PRIVATE_H_ -#define SSS_AUTOFS_SBUS_SERVICE_VERSION 0x0001 -#define SSS_AUTOFS_SBUS_SERVICE_NAME "autofs" +#include "responder/common/responder_sbus.h" #define SSS_AUTOFS_PROTO_VERSION 0x001 diff --git a/src/responder/common/responder_sbus.h b/src/responder/common/responder_sbus.h new file mode 100644 index 0000000000000000000000000000000000000000..82bbcd9b6de1d785828ba0af0b5e93551ca2b482 --- /dev/null +++ b/src/responder/common/responder_sbus.h @@ -0,0 +1,45 @@ +/* + SSSD + + SSS Client Responder, common header file + + Copyright (C) Red Hat, 2012 + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . +*/ + +#ifndef __SSS_RESPONDER_SBUS_H__ +#define __SSS_RESPONDER_SBUS_H__ + +#define NSS_SBUS_SERVICE_NAME "nss" +#define NSS_SBUS_SERVICE_VERSION 0x0001 + +#define SSS_PAM_SBUS_SERVICE_NAME "pam" +#define SSS_PAM_SBUS_SERVICE_VERSION 0x0001 + +#define SSS_SUDO_SBUS_SERVICE_NAME "sudo" +#define SSS_SUDO_SBUS_SERVICE_VERSION 0x0001 + +#define SSS_AUTOFS_SBUS_SERVICE_NAME "autofs" +#define SSS_AUTOFS_SBUS_SERVICE_VERSION 0x0001 + +#define SSS_SSH_SBUS_SERVICE_NAME "ssh" +#define SSS_SSH_SBUS_SERVICE_VERSION 0x0001 + +#define PAC_SBUS_SERVICE_NAME "pac" +#define PAC_SBUS_SERVICE_VERSION 0x0001 + +#endif /* __SSS_RESPONDER_SBUS_H__ */ + + diff --git a/src/responder/nss/nsssrv.c b/src/responder/nss/nsssrv.c index f5cfc85b4861489cd44a1367dc9b26111ff9841c..083e91d7f69d758fcecc99f2fcaac613cff41c3f 100644 --- a/src/responder/nss/nsssrv.c +++ b/src/responder/nss/nsssrv.c @@ -42,6 +42,7 @@ #include "sbus/sssd_dbus.h" #include "responder/common/responder_packet.h" #include "responder/common/responder.h" +#include "responder/common/responder_sbus.h" #include "providers/data_provider.h" #include "monitor/monitor_interfaces.h" #include "sbus/sbus_client.h" diff --git a/src/responder/nss/nsssrv.h b/src/responder/nss/nsssrv.h index a8b2c3c9766730c25a0c847df9845af1146ae60f..de15f53ec707f229ce4e2fe85af7c673e75e3835 100644 --- a/src/responder/nss/nsssrv.h +++ b/src/responder/nss/nsssrv.h @@ -33,9 +33,6 @@ #include "responder/common/responder_packet.h" #include "responder/common/responder.h" -#define NSS_SBUS_SERVICE_VERSION 0x0001 -#define NSS_SBUS_SERVICE_NAME "nss" - #define NSS_PACKET_MAX_RECV_SIZE 1024 struct getent_ctx; diff --git a/src/responder/pac/pacsrv.h b/src/responder/pac/pacsrv.h index c0a13a3328cf4b7daf71149d61b7fa3000cd7503..8b73d99573b4be80e2ea63f40c2d8e005b46fb64 100644 --- a/src/responder/pac/pacsrv.h +++ b/src/responder/pac/pacsrv.h @@ -37,13 +37,11 @@ #include "sbus/sssd_dbus.h" #include "responder/common/responder_packet.h" #include "responder/common/responder.h" +#include "responder/common/responder_sbus.h" #include "lib/idmap/sss_idmap.h" #include "util/sss_nss.h" #include "db/sysdb.h" -#define PAC_SBUS_SERVICE_VERSION 0x0001 -#define PAC_SBUS_SERVICE_NAME "pac" - #define PAC_PACKET_MAX_RECV_SIZE 1024 struct getent_ctx; diff --git a/src/responder/pam/pamsrv.c b/src/responder/pam/pamsrv.c index f877c4f0236e18f6e778bd42c7b39832c609e48f..f0c89a9665478867ab2b1c27bf3003d9753cefcb 100644 --- a/src/responder/pam/pamsrv.c +++ b/src/responder/pam/pamsrv.c @@ -43,12 +43,10 @@ #include "sbus/sbus_client.h" #include "responder/pam/pamsrv.h" #include "responder/common/negcache.h" +#include "responder/common/responder_sbus.h" #define DEFAULT_PAM_FD_LIMIT 8192 -#define SSS_PAM_SBUS_SERVICE_VERSION 0x0001 -#define SSS_PAM_SBUS_SERVICE_NAME "pam" - struct sbus_method monitor_pam_methods[] = { { MON_CLI_METHOD_PING, monitor_common_pong }, { MON_CLI_METHOD_RES_INIT, monitor_common_res_init }, diff --git a/src/responder/ssh/sshsrv.c b/src/responder/ssh/sshsrv.c index 32c0f3080836cde827b4f57477d730aebb26ee86..80a558b5244792ff7545d480ef98c06def81d891 100644 --- a/src/responder/ssh/sshsrv.c +++ b/src/responder/ssh/sshsrv.c @@ -24,6 +24,7 @@ #include "confdb/confdb.h" #include "monitor/monitor_interfaces.h" #include "responder/common/responder.h" +#include "responder/common/responder_sbus.h" #include "responder/ssh/sshsrv_private.h" #include "providers/data_provider.h" diff --git a/src/responder/ssh/sshsrv_private.h b/src/responder/ssh/sshsrv_private.h index 4b13ca1df10289f486a269788a75a3fc5478c7fc..296bd94a2947796198a0559c06d904b389283ade 100644 --- a/src/responder/ssh/sshsrv_private.h +++ b/src/responder/ssh/sshsrv_private.h @@ -23,9 +23,6 @@ #include "responder/common/responder.h" -#define SSS_SSH_SBUS_SERVICE_VERSION 0x0001 -#define SSS_SSH_SBUS_SERVICE_NAME "ssh" - #define SSS_SSH_KNOWN_HOSTS_PATH PUBCONF_PATH"/known_hosts" #define SSS_SSH_KNOWN_HOSTS_TEMP_TMPL PUBCONF_PATH"/.known_hosts.XXXXXX" diff --git a/src/responder/sudo/sudosrv.c b/src/responder/sudo/sudosrv.c index cb89e1f7586816bf52957bba664dde97d3b3f515..cbcbe2132cd5323741b6d9add9c06a239e34680c 100644 --- a/src/responder/sudo/sudosrv.c +++ b/src/responder/sudo/sudosrv.c @@ -24,6 +24,7 @@ #include "confdb/confdb.h" #include "monitor/monitor_interfaces.h" #include "responder/common/responder.h" +#include "responder/common/responder_sbus.h" #include "responder/sudo/sudosrv_private.h" #include "providers/data_provider.h" diff --git a/src/responder/sudo/sudosrv_private.h b/src/responder/sudo/sudosrv_private.h index c9eae57b8f2d03852dfed7689e9ca18d0b4afe6d..9d3156ca10fd0ce485734de643a42db89cdcfe44 100644 --- a/src/responder/sudo/sudosrv_private.h +++ b/src/responder/sudo/sudosrv_private.h @@ -29,8 +29,6 @@ #include "responder/common/responder.h" #define SSS_SUDO_ERROR_OK 0 -#define SSS_SUDO_SBUS_SERVICE_VERSION 0x0001 -#define SSS_SUDO_SBUS_SERVICE_NAME "sudo" enum sss_dp_sudo_type { SSS_DP_SUDO_REFRESH_RULES, -- 1.8.0.2