nsPISocketTransportService.idl 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
  2. /* vim:set ts=2 sw=2 sts=2 et cindent: */
  3. /* This Source Code Form is subject to the terms of the Mozilla Public
  4. * License, v. 2.0. If a copy of the MPL was not distributed with this
  5. * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
  6. #include "nsISocketTransportService.idl"
  7. /**
  8. * This is a private interface used by the internals of the networking library.
  9. * It will never be frozen. Do not use it in external code.
  10. */
  11. [scriptable, uuid(18f73bf1-b35b-4b7b-aa9a-11bcbdbc389c)]
  12. interface nsPISocketTransportService : nsIRoutedSocketTransportService
  13. {
  14. /**
  15. * init/shutdown routines.
  16. */
  17. void init();
  18. void shutdown(in bool aXpcomShutdown);
  19. /**
  20. * controls the TCP sender window clamp
  21. */
  22. readonly attribute long sendBufferSize;
  23. /**
  24. * Controls whether the socket transport service is offline.
  25. * Setting it offline will cause non-local socket detachment.
  26. */
  27. attribute boolean offline;
  28. /**
  29. * Controls the default timeout (in seconds) for sending keepalive probes.
  30. */
  31. readonly attribute long keepaliveIdleTime;
  32. /**
  33. * Controls the default interval (in seconds) between retrying keepalive probes.
  34. */
  35. readonly attribute long keepaliveRetryInterval;
  36. /**
  37. * Controls the default retransmission count for keepalive probes.
  38. */
  39. readonly attribute long keepaliveProbeCount;
  40. };
  41. %{C++
  42. /*
  43. * Network activity indicator: we send out these topics no more than every
  44. * blipIntervalMilliseconds (as set by the
  45. * "network.activity.blipIntervalMilliseconds" preference: if 0 no notifications
  46. * are sent) if the network is currently active (i.e. we're sending/receiving
  47. * data to/from the socket).
  48. */
  49. #define NS_NETWORK_ACTIVITY_BLIP_UPLOAD_TOPIC "network-activity-blip-upload"
  50. #define NS_NETWORK_ACTIVITY_BLIP_DOWNLOAD_TOPIC "network-activity-blip-download"
  51. %}