|
The Assimilation Monitoring Project
|
Library of code to support initial creation of a nanoprobe process. More...
#include <projectcommon.h>#include <string.h>#include <frameset.h>#include <framesettypes.h>#include <frametypes.h>#include <compressframe.h>#include <cryptframe.h>#include <intframe.h>#include <cstringframe.h>#include <addrframe.h>#include <ipportframe.h>#include <seqnoframe.h>#include <packetdecoder.h>#include <netgsource.h>#include <reliableudp.h>#include <authlistener.h>#include <nvpairframe.h>#include <hblistener.h>#include <hbsender.h>#include <configcontext.h>#include <pcap_min.h>#include <jsondiscovery.h>#include <switchdiscovery.h>#include <fsprotocol.h>#include <misc.h>#include <nanoprobe.h>
Go to the source code of this file.
Data Structures | |
| struct | startup_cruft |
| Stuff we need only for passing parameters through our glib infrastructures - to start up nanoprobes. More... | |
Functions | |
| FSTATIC void | nanoobey_sendexpecthb (AuthListener *parent, FrameSet *fs, NetAddr *fromaddr) |
| Act on (obey) a FRAMESETTYPE_SENDEXPECTHB FrameSet class. More... | |
| FSTATIC void | nanoobey_sendhb (AuthListener *parent, FrameSet *fs, NetAddr *fromaddr) |
| Act on (obey) a FrameSet class telling us to send heartbeats. More... | |
| FSTATIC void | nanoobey_expecthb (AuthListener *parent, FrameSet *fs, NetAddr *fromaddr) |
| Act on (obey) a FrameSet class telling us to expect heartbeats. More... | |
| FSTATIC void | nanoobey_stopsendexpecthb (AuthListener *parent, FrameSet *fs, NetAddr *fromaddr) |
| Act on (obey) a FrameSet class telling us to stop sending and expecting heartbeats. More... | |
| FSTATIC void | nanoobey_stopsendhb (AuthListener *parent, FrameSet *fs, NetAddr *fromaddr) |
| Act on (obey) a FrameSet class telling us to stop sending heartbeats. More... | |
| FSTATIC void | nanoobey_stopexpecthb (AuthListener *parent, FrameSet *fs, NetAddr *fromaddr) |
| Act on (obey) a FrameSet class telling us to stop expecting heartbeats. More... | |
| FSTATIC void | nanoobey_setconfig (AuthListener *, FrameSet *fs, NetAddr *) |
| FSTATIC void | nanoobey_change_debug (gint plusminus, AuthListener *parent, FrameSet *fs, NetAddr *fromaddr) |
| Act on (obey) a FrameSet class telling us to increment or decrement debug levels either on a specific set of classes, or on all classes. More... | |
| FSTATIC void | nanoobey_incrdebug (AuthListener *parent, FrameSet *fs, NetAddr *fromaddr) |
| Act on (obey) a FrameSet class telling us to increment debug levels either on a specific set of classes, or on all classes. More... | |
| FSTATIC void | nanoobey_decrdebug (AuthListener *parent, FrameSet *fs, NetAddr *fromaddr) |
| Act on (obey) a FrameSet class telling us to decrement debug levels either on a specific set of classes, or on all classes. More... | |
| FSTATIC void | nanoobey_startdiscover (AuthListener *parent, FrameSet *fs, NetAddr *fromaddr) |
| Act on (obey) a FrameSet class telling us to perform a possibly repeating discovery action. More... | |
| FSTATIC void | nanoobey_stopdiscover (AuthListener *parent, FrameSet *fs, NetAddr *fromaddr) |
| Act on (obey) a FrameSet class telling us to stop a repeating discovery action. More... | |
| FSTATIC void | nano_schedule_discovery (const char *instance,guint32 interval,const char *json,ConfigContext *config,NetGSource *transport,NetAddr *fromaddr) |
| Schedule a discovery instance, potentially repetitively. More... | |
| FSTATIC void | nano_stop_discovery (const char *discoveryname, NetGSource *, NetAddr *) |
| FSTATIC gboolean | nano_startupidle (gpointer gcruft) |
| Nanoprobe bootstrap routine. More... | |
| FSTATIC gboolean | nano_reqconfig (gpointer gcruft) |
| Function to request our initial configuration data This is typically called from a g_main_loop timeout, and is also called directly - at startup. More... | |
| FSTATIC void | _real_heartbeat_agent (HbListener *who) |
| Standard nanoprobe 'hearbeat received' agent. More... | |
| FSTATIC void | _real_deadtime_agent (HbListener *who) |
| Standard nanoprobe 'deadtime elapsed' agent. More... | |
| FSTATIC void | _real_warntime_agent (HbListener *who, guint64 howlate) |
| Standard nanoprobe 'warntime elapsed' agent - called when a heartbeat arrives after 'warntime' but before 'deadtime'. More... | |
| FSTATIC void | _real_comealive_agent (HbListener *who, guint64 howlate) |
| Standard nanoprobe 'returned-from-the-dead' agent - called when a heartbeats arrive after 'deadtime'. More... | |
| FSTATIC void | _real_martian_agent (NetAddr *who) |
| Standard nanoprobe 'martian heartbeat received' agent. More... | |
| FSTATIC HbListener * | _real_hblistener_new (NetAddr *addr, ConfigContext *context) |
| Default HbListener constructor. More... | |
| FSTATIC gboolean | _nano_final_shutdown (gpointer unused) |
| FSTATIC gboolean | shutdown_when_outdone (gpointer unused) |
| void | nanoprobe_report_upstream (guint16 reporttype, NetAddr *who, const char *systemnm, guint64 howlate) |
| Construct a frameset reporting something - and send it upstream. More... | |
| PacketDecoder * | nano_packet_decoder (void) |
| Return our nanoprobe packet decoder map. More... | |
| WINEXPORT void | nano_start_full (const char *initdiscoverpath, guint discover_interval, NetGSource *io, ConfigContext *config) |
| Here is how the startup process works: More... | |
| WINEXPORT void | nano_shutdown (gboolean report) |
| Shut down the things started up by nano_start_full() - mainly free storage to make valgrind happy... More... | |
| WINEXPORT gboolean | nano_initiate_shutdown (void) |
| Initiate shutdown - return TRUE if we have shut down immediately... More... | |
Variables | |
| void(* | nanoprobe_deadtime_agent )(HbListener *) = NULL |
| void(* | nanoprobe_heartbeat_agent )(HbListener *) = NULL |
| void(* | nanoprobe_warntime_agent )(HbListener *, guint64 howlate) = NULL |
| void(* | nanoprobe_comealive_agent )(HbListener *, guint64 howlate) = NULL |
| WINEXPORT NanoHbStats | nano_hbstats = {0U, 0U, 0U, 0U, 0U} |
| gboolean | nano_connected = FALSE |
| WINEXPORT int | errcount = 0 |
| error count More... | |
| WINEXPORT GMainLoop * | mainloop = NULL |
| HbListener *(* | nanoprobe_hblistener_new )(NetAddr *, ConfigContext *) = _real_hblistener_new |
| gboolean | nano_shutting_down = FALSE |
| const char * | procname = "nanoprobe" |
| process name More... | |
| ObeyFrameSetTypeMap | collective_obeylist [] |
| The set of Collective Management Authority FrameTypes we know about, and what to do when we get them. More... | |
Library of code to support initial creation of a nanoprobe process.
This includes the code to obey various CMA packets, and some functions to startup and shut down a nanoprobe process.
This file is part of the Assimilation Project.
The Assimilation software is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with the Assimilation Project software. If not, see http://www.gnu.org/licenses/
Definition in file clientlib/nanoprobe.c.