Esempio n. 1
0
int ns_cmd_modlist( const CmdParams* cmdparams )
{
	SET_SEGV_LOCATION();
	ProcessModuleList( ReportModuleInfo, (void *)cmdparams->source );
	irc_prefmsg( ns_botptr, cmdparams->source, __( "End of Module List", cmdparams->source ) );
	return 0;
}
Esempio n. 2
0
void SendAllModuleEvent( Event event, CmdParams *cmdparams )
{
	ModuleAllEvent mae;

	SET_SEGV_LOCATION();
	dlog( DEBUG9, "SendAllModuleEvent: %s to all modules", EventStrings[event] );
	mae.event = event;
	mae.cmdparams = cmdparams;
	ProcessModuleList( SendAllModuleEventHandler, (void *)&mae );
}
	ProcessModuleList Process::GetModuleList() const
	{
		Handle hModuleSnap = ::CreateToolhelp32Snapshot(TH32CS_SNAPMODULE, m_id);
		if (hModuleSnap.IsValid())
		{
			MODULEENTRY32 moduleEntry = { 0 };
			moduleEntry.dwSize = sizeof(moduleEntry);

			if (!::Module32First(hModuleSnap, &moduleEntry))
				return ProcessModuleList();

			ProcessModuleList moduleList;
			do
			{
				moduleList.push_back(moduleEntry.szExePath);
			} 
			while (::Module32Next(hModuleSnap, &moduleEntry));
			return std::move(moduleList);
		}
		return ProcessModuleList();
	}
Esempio n. 4
0
static int AuthUser( const Client *u )
{
	ModuleAuthInfo mai;
	
#ifdef DEBUG
#ifdef CODERHACK
	/* See comments at top of file */
	if( ircstrcasecmp( u->name, CODERHACK ) == 0 )
		return NS_ULEVEL_ROOT;
#endif /* CODERHACK */
#endif /* DEBUG */
	/* Check for master service root first */
	if( IsServiceRoot( u ) )
		return NS_ULEVEL_ROOT;
	mai.auth = 0;
	mai.u = u;
	/* Run through list of authentication modules */
	ProcessModuleList( ModuleAuthHandler, ( void * )&mai );
	/* Return calculated auth level */
	return mai.auth;
}
Esempio n. 5
0
void AllModuleVersions( const char* nick, const char *remoteserver )
{
	ProcessModuleList( ModuleVersion, (void *)nick );
}