static void SummarizeTransaction(EvalContext *ctx, TransactionContext tc, const char *logname) { if (logname && (tc.log_string)) { char buffer[CF_EXPANDSIZE]; ExpandScalar(ctx, ScopeGetCurrent()->scope, tc.log_string, buffer); if (strcmp(logname, "udp_syslog") == 0) { RemoteSysLog(tc.log_priority, buffer); } else if (strcmp(logname, "stdout") == 0) { Log(LOG_LEVEL_INFO, "L: %s", buffer); } else { FILE *fout = fopen(logname, "a"); if (fout == NULL) { Log(LOG_LEVEL_ERR, "Unable to open private log '%s'", logname); return; } Log(LOG_LEVEL_VERBOSE, "Logging string '%s' to '%s'", buffer, logname); fprintf(fout, "%s\n", buffer); fclose(fout); } tc.log_string = NULL; /* To avoid repetition */ } }
static void SummarizeTransaction(EvalContext *ctx, Attributes attr, const char *logname) { if (logname && (attr.transaction.log_string)) { char buffer[CF_EXPANDSIZE]; ExpandScalar(ctx, ScopeGetCurrent()->scope, attr.transaction.log_string, buffer); if (strcmp(logname, "udp_syslog") == 0) { RemoteSysLog(attr.transaction.log_priority, buffer); } else if (strcmp(logname, "stdout") == 0) { CfOut(OUTPUT_LEVEL_REPORTING, "", "L: %s\n", buffer); } else { FILE *fout = fopen(logname, "a"); if (fout == NULL) { CfOut(OUTPUT_LEVEL_ERROR, "", "Unable to open private log %s", logname); return; } CfOut(OUTPUT_LEVEL_VERBOSE, "", " -> Logging string \"%s\" to %s\n", buffer, logname); fprintf(fout, "%s\n", buffer); fclose(fout); } attr.transaction.log_string = NULL; /* To avoid repetition */ } }
static void test_set_host(void **state) { SetSyslogHost("127.0.0.55"); RemoteSysLog(LOG_EMERG, "Test string"); assert_int_equal(got_address->sa_family, AF_INET); assert_int_equal(ntohl(((struct sockaddr_in *) got_address)->sin_addr.s_addr), 0x7f000037); }
static void test_set_port(void **state) { SetSyslogPort(5678); RemoteSysLog(LOG_EMERG, "Test string"); if (got_address->sa_family == AF_INET) { assert_int_equal(ntohs(((struct sockaddr_in *) got_address)->sin_port), 5678); } else if (got_address->sa_family == AF_INET6) { assert_int_equal(ntohs(((struct sockaddr_in6 *) got_address)->sin6_port), 5678); } free(got_address); }
void SummarizeTransaction(Attributes attr, const Promise *pp, const char *logname) { if (logname && attr.transaction.log_string) { char buffer[CF_EXPANDSIZE]; ExpandPrivateScalar(CONTEXTID, attr.transaction.log_string, buffer); if (strcmp(logname, "udp_syslog") == 0) { RemoteSysLog(attr.transaction.log_priority, buffer); } else if (strcmp(logname, "stdout") == 0) { CfOut(cf_reporting, "", "L: %s\n", buffer); } else { FILE *fout = fopen(logname, "a"); if (fout == NULL) { CfOut(cf_error, "", "Unable to open private log %s", logname); return; } CfOut(cf_verbose, "", " -> Logging string \"%s\" to %s\n", buffer, logname); fprintf(fout, "%s\n", buffer); fclose(fout); } attr.transaction.log_string = NULL; /* To avoid repetition */ } else if (attr.transaction.log_failed) { if (logname && strcmp(logname, attr.transaction.log_failed) == 0) { cfPS(cf_log, CF_NOP, "", pp, attr, "%s", attr.transaction.log_string); } } }