145189Ssklower /*
2*48848Ssklower * Copyright (c) 1990 The Regents of the University of California.
3*48848Ssklower * All rights reserved.
4*48848Ssklower *
5*48848Ssklower * %sccs.include.redist.c%
6*48848Ssklower *
7*48848Ssklower * @(#)x25accton.c 5.2 (Berkeley) 04/29/91
8*48848Ssklower */
9*48848Ssklower #include <sys/param.h>
10*48848Ssklower #include <sys/socket.h>
11*48848Ssklower #include <netccitt/x25.h>
12*48848Ssklower /*
1345189Ssklower * Enable or disable X.25 accounting.
1445189Ssklower */
1545189Ssklower
main(argc,argv)1645189Ssklower main(argc, argv)
1745189Ssklower char **argv;
1845189Ssklower {
1945189Ssklower if (x25acct(argc > 1 ? argv[1] : (char *)0) < 0) {
2045189Ssklower perror(argv[0]);
2145189Ssklower exit(1);
2245189Ssklower }
2345189Ssklower exit(0);
2445189Ssklower }
x25acct(name)25*48848Ssklower x25acct(name)
26*48848Ssklower char *name;
27*48848Ssklower {
28*48848Ssklower int s = socket(AF_CCITT, SOCK_STREAM, 0);
29*48848Ssklower
30*48848Ssklower if (s < 0)
31*48848Ssklower return (s);
32*48848Ssklower if (name)
33*48848Ssklower return (setsockopt(s, CCITTPROTO_X25, PK_ACCTFILE,
34*48848Ssklower name, strlen(name) + 1));
35*48848Ssklower else
36*48848Ssklower return (setsockopt(s, CCITTPROTO_X25, PK_ACCTFILE,
37*48848Ssklower (char *)&name, 0));
38*48848Ssklower
39*48848Ssklower }
40