/* This Source Code Form is subject to the terms of the Mozilla Public
 * License, v. 2.0. If a copy of the MPL was not distributed with this
 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */

include protocol PSocketProcess;

include NeckoChannelParams;
include PSMIPCTypes;

namespace mozilla {
namespace net {

async protocol PTRRService
{
  manager PSocketProcess;

parent:
  async NotifyNetworkConnectivityServiceObservers(nsCString aTopic);
  async InitTRRConnectionInfo(bool aForceReinit);
  async SetConfirmationState(uint32_t aNewState);

child:
  async __delete__();
  async UpdatePlatformDNSInformation(nsCString[] aSuffixList);
  async UpdateParentalControlEnabled(bool aEnabled);
  async ClearDNSCache(bool aTrrToo);
  async SetDetectedTrrURI(nsCString aURI);
  async SetDefaultTRRConnectionInfo(HttpConnectionInfoCloneArgs? aConnInfoArgs);
  async UpdateEtcHosts(nsCString[] aHosts);
};

} //namespace net
} //namespace mozilla
