1*04c087f8Sjruoho /* $NetBSD: t_syslog.c,v 1.3 2020/07/03 03:13:10 jruoho Exp $ */
21b9f2dc9Sjruoho
31b9f2dc9Sjruoho /*-
4*04c087f8Sjruoho * Copyright (c) 2010, 2020 The NetBSD Foundation, Inc.
51b9f2dc9Sjruoho * All rights reserved.
61b9f2dc9Sjruoho *
71b9f2dc9Sjruoho * Redistribution and use in source and binary forms, with or without
81b9f2dc9Sjruoho * modification, are permitted provided that the following conditions
91b9f2dc9Sjruoho * are met:
101b9f2dc9Sjruoho * 1. Redistributions of source code must retain the above copyright
111b9f2dc9Sjruoho * notice, this list of conditions and the following disclaimer.
121b9f2dc9Sjruoho * 2. Redistributions in binary form must reproduce the above copyright
131b9f2dc9Sjruoho * notice, this list of conditions and the following disclaimer in
141b9f2dc9Sjruoho * the documentation and/or other materials provided with the
151b9f2dc9Sjruoho * distribution.
161b9f2dc9Sjruoho *
171b9f2dc9Sjruoho * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
181b9f2dc9Sjruoho * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
191b9f2dc9Sjruoho * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
201b9f2dc9Sjruoho * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
211b9f2dc9Sjruoho * COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
221b9f2dc9Sjruoho * INCIDENTAL, SPECIAL, EXEMPLARY OR CONSEQUENTIAL DAMAGES (INCLUDING,
231b9f2dc9Sjruoho * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
241b9f2dc9Sjruoho * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
251b9f2dc9Sjruoho * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
261b9f2dc9Sjruoho * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
271b9f2dc9Sjruoho * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
281b9f2dc9Sjruoho * SUCH DAMAGE.
291b9f2dc9Sjruoho */
301b9f2dc9Sjruoho
311b9f2dc9Sjruoho #include <sys/types.h>
321b9f2dc9Sjruoho
331b9f2dc9Sjruoho #include <atf-c.h>
341b9f2dc9Sjruoho #include <syslog.h>
351b9f2dc9Sjruoho
361b9f2dc9Sjruoho ATF_TC(syslog_pthread);
ATF_TC_HEAD(syslog_pthread,tc)371b9f2dc9Sjruoho ATF_TC_HEAD(syslog_pthread, tc)
381b9f2dc9Sjruoho {
398b18a8bfSjruoho atf_tc_set_md_var(tc, "descr", "Test that syslog(3) "
408b18a8bfSjruoho "works when linked to pthread(3) (PR lib/44248)");
411b9f2dc9Sjruoho atf_tc_set_md_var(tc, "timeout", "2");
421b9f2dc9Sjruoho }
431b9f2dc9Sjruoho
ATF_TC_BODY(syslog_pthread,tc)441b9f2dc9Sjruoho ATF_TC_BODY(syslog_pthread, tc)
451b9f2dc9Sjruoho {
461b9f2dc9Sjruoho syslog(LOG_DEBUG, "from tests/lib/libc/gen/t_syslog");
471b9f2dc9Sjruoho }
481b9f2dc9Sjruoho
49*04c087f8Sjruoho ATF_TC(syslog_invalid_priority);
ATF_TC_HEAD(syslog_invalid_priority,tc)50*04c087f8Sjruoho ATF_TC_HEAD(syslog_invalid_priority, tc)
51*04c087f8Sjruoho {
52*04c087f8Sjruoho atf_tc_set_md_var(tc, "descr", "Test that syslog(3) does "
53*04c087f8Sjruoho "not segfault from an invalid priority (PR lib/55041)");
54*04c087f8Sjruoho }
55*04c087f8Sjruoho
ATF_TC_BODY(syslog_invalid_priority,tc)56*04c087f8Sjruoho ATF_TC_BODY(syslog_invalid_priority, tc)
57*04c087f8Sjruoho {
58*04c087f8Sjruoho syslog(-1, "from tests/lib/libc/gen/t_syslog");
59*04c087f8Sjruoho }
60*04c087f8Sjruoho
ATF_TP_ADD_TCS(tp)611b9f2dc9Sjruoho ATF_TP_ADD_TCS(tp)
621b9f2dc9Sjruoho {
631b9f2dc9Sjruoho
641b9f2dc9Sjruoho ATF_TP_ADD_TC(tp, syslog_pthread);
65*04c087f8Sjruoho ATF_TP_ADD_TC(tp, syslog_invalid_priority);
661b9f2dc9Sjruoho
671b9f2dc9Sjruoho return atf_no_error();
681b9f2dc9Sjruoho }
69