2011-04-20 20:33:09 +00:00
|
|
|
/*
|
2017-11-10 12:04:35 -08:00
|
|
|
* iperf, Copyright (c) 2014-2017, The Regents of the University of
|
2014-09-29 14:00:46 -07:00
|
|
|
* California, through Lawrence Berkeley National Laboratory (subject
|
|
|
|
* to receipt of any required approvals from the U.S. Dept. of
|
|
|
|
* Energy). All rights reserved.
|
2011-04-20 20:33:09 +00:00
|
|
|
*
|
2014-09-29 14:00:46 -07:00
|
|
|
* If you have questions about your rights to use or distribute this
|
|
|
|
* software, please contact Berkeley Lab's Technology Transfer
|
|
|
|
* Department at TTD@lbl.gov.
|
|
|
|
*
|
|
|
|
* NOTICE. This software is owned by the U.S. Department of Energy.
|
|
|
|
* As such, the U.S. Government has been granted for itself and others
|
|
|
|
* acting on its behalf a paid-up, nonexclusive, irrevocable,
|
|
|
|
* worldwide license in the Software to reproduce, prepare derivative
|
|
|
|
* works, and perform publicly and display publicly. Beginning five
|
|
|
|
* (5) years after the date permission to assert copyright is obtained
|
|
|
|
* from the U.S. Department of Energy, and subject to any subsequent
|
|
|
|
* five (5) year renewals, the U.S. Government is granted for itself
|
|
|
|
* and others acting on its behalf a paid-up, nonexclusive,
|
|
|
|
* irrevocable, worldwide license in the Software to reproduce,
|
|
|
|
* prepare derivative works, distribute copies to the public, perform
|
|
|
|
* publicly and display publicly, and to permit others to do so.
|
|
|
|
*
|
|
|
|
* This code is distributed under a BSD style license, see the LICENSE
|
|
|
|
* file for complete information.
|
2011-04-20 20:33:09 +00:00
|
|
|
*/
|
2010-07-22 18:57:08 +00:00
|
|
|
#ifndef __IPERF_UTIL_H
|
|
|
|
#define __IPERF_UTIL_H
|
2009-07-24 18:21:50 +00:00
|
|
|
|
2017-11-11 10:12:55 -08:00
|
|
|
#include "iperf_config.h"
|
2013-02-07 12:35:17 -08:00
|
|
|
#include "cjson.h"
|
2014-06-16 08:59:08 +02:00
|
|
|
#include <sys/select.h>
|
2017-05-21 21:30:18 +03:00
|
|
|
#include <stddef.h>
|
|
|
|
|
|
|
|
int readentropy(void *out, size_t outsize);
|
2013-02-07 12:35:17 -08:00
|
|
|
|
2018-04-20 17:25:24 +03:00
|
|
|
void fill_with_repeating_pattern(void *out, size_t outsize);
|
|
|
|
|
2012-08-10 12:43:50 -07:00
|
|
|
void make_cookie(char *);
|
2010-07-22 18:57:08 +00:00
|
|
|
|
|
|
|
int is_closed(int);
|
|
|
|
|
2012-12-05 12:34:58 -08:00
|
|
|
double timeval_to_double(struct timeval *tv);
|
|
|
|
|
|
|
|
int timeval_equals(struct timeval *tv0, struct timeval *tv1);
|
|
|
|
|
|
|
|
double timeval_diff(struct timeval *tv0, struct timeval *tv1);
|
|
|
|
|
2013-11-26 14:47:15 -08:00
|
|
|
void cpu_util(double pcpu[3]);
|
2012-12-05 12:34:58 -08:00
|
|
|
|
2014-04-14 13:33:33 -07:00
|
|
|
const char* get_system_info(void);
|
|
|
|
|
|
|
|
const char* get_optional_features(void);
|
2013-03-08 20:56:52 -08:00
|
|
|
|
2013-02-07 12:35:17 -08:00
|
|
|
cJSON* iperf_json_printf(const char *format, ...);
|
|
|
|
|
2020-06-12 20:03:30 +03:00
|
|
|
void iperf_dump_fdset(FILE *fp, const char *str, int nfds, fd_set *fds);
|
2013-12-05 08:49:27 -08:00
|
|
|
|
2017-11-11 10:12:55 -08:00
|
|
|
#ifndef HAVE_DAEMON
|
|
|
|
extern int daemon(int nochdir, int noclose);
|
|
|
|
#endif /* HAVE_DAEMON */
|
|
|
|
|
2017-11-10 12:04:35 -08:00
|
|
|
#ifndef HAVE_GETLINE
|
|
|
|
ssize_t getline(char **buf, size_t *bufsiz, FILE *fp);
|
|
|
|
#endif /* HAVE_GETLINE */
|
|
|
|
|
2010-07-22 18:57:08 +00:00
|
|
|
#endif
|