Lines Matching refs:context

2 /* bus.c  message bus context object
75 BusContext *context;
83 BusContext *context;
96 context = bd->context;
100 return context;
121 BusContext *context;
123 context = server_get_context (server);
125 return _dbus_loop_add_watch (context->loop,
135 BusContext *context;
137 context = server_get_context (server);
139 _dbus_loop_remove_watch (context->loop,
157 BusContext *context;
159 context = server_get_context (server);
161 return _dbus_loop_add_timeout (context->loop,
170 BusContext *context;
172 context = server_get_context (server);
174 _dbus_loop_remove_timeout (context->loop,
183 BusContext *context = data;
185 if (!bus_connections_setup_connection (context->connections, new_connection))
198 context->limits.max_incoming_bytes);
201 context->limits.max_message_size);
204 context->limits.max_incoming_unix_fds);
207 context->limits.max_message_unix_fds);
210 context->allow_anonymous);
224 setup_server (BusContext *context,
241 bd->context = context;
251 context, NULL);
282 process_config_first_time_only (BusContext *context,
302 context->systemd_activation = systemd_activation;
347 context->pidfile = _dbus_strdup (pidfile);
351 context->type = _dbus_strdup (bus_config_parser_get_type (parser));
352 if (bus_config_parser_get_type (parser) != NULL && context->type == NULL)
358 context->user = _dbus_strdup (user);
359 if (context->user == NULL)
366 if (context->type && !strcmp (context->type, "system"))
371 else if (context->type && !strcmp (context->type, "session"))
386 if (!_dbus_string_steal_data (&log_prefix, &context->log_prefix))
430 else if (!setup_server (context, server, auth_mechanisms, error))
436 if (!_dbus_list_append (&context->servers, server))
454 else if (!setup_server (context, server, auth_mechanisms, error))
460 if (!_dbus_list_append (&context->servers, server))
467 context->fork = bus_config_parser_get_fork (parser);
468 context->syslog = bus_config_parser_get_syslog (parser);
469 context->keep_umask = bus_config_parser_get_keep_umask (parser);
470 context->allow_anonymous = bus_config_parser_get_allow_anonymous (parser);
492 process_config_every_time (BusContext *context,
519 bus_config_parser_get_limits (parser, &context->limits);
521 if (context->policy)
522 bus_policy_unref (context->policy);
523 context->policy = bus_config_parser_steal_policy (parser);
524 _dbus_assert (context->policy != NULL);
529 link = _dbus_list_get_last_link (&context->servers);
557 link = _dbus_list_get_prev_link (&context->servers, link);
561 dbus_free (context->address);
563 if (!_dbus_string_copy_data (&full_address, &context->address))
583 dbus_free(context->servicehelper);
584 context->servicehelper = s;
588 if (context->activation)
590 if (!bus_activation_reload (context->activation, &full_address, dirs, error))
595 context->activation = bus_activation_new (context, &full_address, dirs, error);
598 if (context->activation == NULL)
644 process_config_postinit (BusContext *context,
652 if (!bus_registry_set_service_context_table (context->registry,
672 bus_set_watched_dirs (context, &watched_dirs);
689 BusContext *context;
694 context = NULL;
703 context = dbus_new0 (BusContext, 1);
704 if (context == NULL)
709 context->refcount = 1;
711 _dbus_generate_uuid (&context->uuid);
713 if (!_dbus_string_copy_data (config_file, &context->config_file))
719 context->loop = _dbus_loop_new ();
720 if (context->loop == NULL)
726 context->registry = bus_registry_new (context);
727 if (context->registry == NULL)
740 if (!process_config_first_time_only (context, parser, address, systemd_activation, error))
745 if (!process_config_every_time (context, parser, FALSE, error))
751 /* we need another ref of the server data slot for the context
765 const char *a = bus_context_get_address (context);
802 context->connections = bus_connections_new (context);
803 if (context->connections == NULL)
809 context->matchmaker = bus_matchmaker_new ();
810 if (context->matchmaker == NULL)
817 if (context->user != NULL)
819 if (!_dbus_verify_daemon_user (context->user))
823 context->user);
833 if (context->pidfile)
834 _dbus_string_init_const (&u, context->pidfile);
836 if ((force_fork != FORK_NEVER && context->fork) || force_fork == FORK_ALWAYS)
840 if (!_dbus_become_daemon (context->pidfile ? &u : NULL,
843 context->keep_umask))
858 if (!_dbus_write_pid_to_file_and_pipe (context->pidfile ? &u : NULL,
868 if ((force_fork != FORK_NEVER && context->fork) || force_fork == FORK_ALWAYS)
873 context->keep_umask))
888 bus_context_log (context, DBUS_SYSTEM_LOG_FATAL, "SELinux enabled but AVC initialization failed; check system log\n");
891 if (!process_config_postinit (context, parser, error))
906 if (context->user != NULL)
908 if (!_dbus_change_to_daemon_user (context->user, error))
922 return context;
927 if (context != NULL)
928 bus_context_unref (context);
937 bus_context_get_id (BusContext *context,
940 return _dbus_uuid_encode (&context->uuid, uuid);
944 bus_context_reload_config (BusContext *context,
955 _dbus_string_init_const (&config_file, context->config_file);
963 if (!process_config_every_time (context, parser, TRUE, error))
968 if (!process_config_postinit (context, parser, error))
975 bus_context_log (context, DBUS_SYSTEM_LOG_INFO, "Reloaded configuration");
978 bus_context_log (context, DBUS_SYSTEM_LOG_INFO, "Unable to reload configuration: %s", error->message);
985 shutdown_server (BusContext *context,
994 context,
1000 context,
1008 bus_context_shutdown (BusContext *context)
1012 link = _dbus_list_get_first_link (&context->servers);
1015 shutdown_server (context, link->data);
1017 link = _dbus_list_get_next_link (&context->servers, link);
1022 bus_context_ref (BusContext *context)
1024 _dbus_assert (context->refcount > 0);
1025 context->refcount += 1;
1027 return context;
1031 bus_context_unref (BusContext *context)
1033 _dbus_assert (context->refcount > 0);
1034 context->refcount -= 1;
1036 if (context->refcount == 0)
1040 _dbus_verbose ("Finalizing bus context %p\n", context);
1042 bus_context_shutdown (context);
1044 if (context->connections)
1046 bus_connections_unref (context->connections);
1047 context->connections = NULL;
1050 if (context->registry)
1052 bus_registry_unref (context->registry);
1053 context->registry = NULL;
1056 if (context->activation)
1058 bus_activation_unref (context->activation);
1059 context->activation = NULL;
1062 link = _dbus_list_get_first_link (&context->servers);
1067 link = _dbus_list_get_next_link (&context->servers, link);
1069 _dbus_list_clear (&context->servers);
1071 if (context->policy)
1073 bus_policy_unref (context->policy);
1074 context->policy = NULL;
1077 if (context->loop)
1079 _dbus_loop_unref (context->loop);
1080 context->loop = NULL;
1083 if (context->matchmaker)
1085 bus_matchmaker_unref (context->matchmaker);
1086 context->matchmaker = NULL;
1089 dbus_free (context->config_file);
1090 dbus_free (context->log_prefix);
1091 dbus_free (context->type);
1092 dbus_free (context->address);
1093 dbus_free (context->user);
1094 dbus_free (context->servicehelper);
1097 if (context->pidfile)
1100 _dbus_string_init_const (&u, context->pidfile);
1107 dbus_free (context->pidfile);
1111 dbus_free (context);
1119 bus_context_get_type (BusContext *context)
1121 return context->type;
1125 bus_context_get_address (BusContext *context)
1127 return context->address;
1131 bus_context_get_servicehelper (BusContext *context)
1133 return context->servicehelper;
1137 bus_context_get_systemd_activation (BusContext *context)
1139 return context->systemd_activation;
1143 bus_context_get_registry (BusContext *context)
1145 return context->registry;
1149 bus_context_get_connections (BusContext *context)
1151 return context->connections;
1155 bus_context_get_activation (BusContext *context)
1157 return context->activation;
1161 bus_context_get_matchmaker (BusContext *context)
1163 return context->matchmaker;
1167 bus_context_get_loop (BusContext *context)
1169 return context->loop;
1173 bus_context_allow_unix_user (BusContext *context,
1176 return bus_policy_allow_unix_user (context->policy,
1185 bus_context_allow_windows_user (BusContext *context,
1188 return bus_policy_allow_windows_user (context->policy,
1193 bus_context_get_policy (BusContext *context)
1195 return context->policy;
1199 bus_context_create_client_policy (BusContext *context,
1204 return bus_policy_create_client_policy (context->policy, connection,
1209 bus_context_get_activation_timeout (BusContext *context)
1212 return context->limits.activation_timeout;
1216 bus_context_get_auth_timeout (BusContext *context)
1218 return context->limits.auth_timeout;
1222 bus_context_get_max_completed_connections (BusContext *context)
1224 return context->limits.max_completed_connections;
1228 bus_context_get_max_incomplete_connections (BusContext *context)
1230 return context->limits.max_incomplete_connections;
1234 bus_context_get_max_connections_per_user (BusContext *context)
1236 return context->limits.max_connections_per_user;
1240 bus_context_get_max_pending_activations (BusContext *context)
1242 return context->limits.max_pending_activations;
1246 bus_context_get_max_services_per_connection (BusContext *context)
1248 return context->limits.max_services_per_connection;
1252 bus_context_get_max_match_rules_per_connection (BusContext *context)
1254 return context->limits.max_match_rules_per_connection;
1258 bus_context_get_max_replies_per_connection (BusContext *context)
1260 return context->limits.max_replies_per_connection;
1264 bus_context_get_reply_timeout (BusContext *context)
1266 return context->limits.reply_timeout;
1270 bus_context_log (BusContext *context, DBusSystemLogSeverity severity, const char *msg, ...) _DBUS_GNUC_PRINTF (3, 4);
1273 bus_context_log (BusContext *context, DBusSystemLogSeverity severity, const char *msg, ...)
1277 if (!context->syslog)
1282 if (context->log_prefix)
1288 if (!_dbus_string_append (&full_msg, context->log_prefix))
1318 bus_context_check_security_policy (BusContext *context,
1520 context->registry,
1544 bus_context_log (context, DBUS_SYSTEM_LOG_SECURITY, msg,
1563 bus_context_log (context, DBUS_SYSTEM_LOG_SECURITY,
1582 context->registry,
1608 bus_context_log (context, DBUS_SYSTEM_LOG_SECURITY, msg,
1629 ((dbus_connection_get_outgoing_size (proposed_recipient) > context->limits.max_outgoing_bytes) ||
1630 (dbus_connection_get_outgoing_unix_fds (proposed_recipient) > context->limits.max_outgoing_unix_fds)))