1. 05 8月, 2013 1 次提交
    • M
      Introduce max_queued_clients · 1199edb1
      Michal Privoznik 提交于
      This configuration knob lets user to set the length of queue of
      connection requests waiting to be accept()-ed by the daemon. IOW, it
      just controls the @backlog passed to listen:
      
        int listen(int sockfd, int backlog);
      1199edb1
  2. 11 7月, 2013 1 次提交
  3. 10 7月, 2013 1 次提交
  4. 21 5月, 2013 1 次提交
  5. 16 1月, 2013 1 次提交
  6. 15 1月, 2013 1 次提交
  7. 14 1月, 2013 1 次提交
  8. 09 1月, 2013 1 次提交
  9. 21 12月, 2012 3 次提交
  10. 27 10月, 2012 2 次提交
    • E
      build: silence compiler warning about signedness · 60f54f61
      Eric Blake 提交于
      Commit 246143b6 fixed a warning on older gcc, but caused a warning
      on newer gcc.
      
      ../../src/rpc/virnetserverservice.c: In function 'virNetServerServiceNewPostExecRestart':
      ../../src/rpc/virnetserverservice.c:277:41: error: pointer targets in passing argument 3 of 'virJSONValueObjectGetNumberUint' differ in signedness [-Werror=pointer-sign]
      
      * src/rpc/virnetserverservice.c: Use correct types.
      60f54f61
    • E
      build: fix type-punning bug · 246143b6
      Eric Blake 提交于
      With older gcc and 64-bit size_t, the compiler issues a real warning:
      rpc/virnetserverservice.c:277: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
      
      Introduced in commit 0cc79255.  Depending on machine endianness,
      this warning represents a real bug that could mis-interpret the
      value by a factor of 2^32.  I don't know why I couldn't get newer
      gcc to report the same warning message.
      
      * src/rpc/virnetserverservice.c
      (virNetServerServiceNewPostExecRestart): Use temporary instead.
      246143b6
  11. 16 10月, 2012 1 次提交
  12. 21 9月, 2012 1 次提交
  13. 20 8月, 2012 1 次提交
  14. 15 8月, 2012 1 次提交
  15. 07 8月, 2012 3 次提交
  16. 23 7月, 2012 1 次提交
    • O
      Desert the FSF address in copyright · f9ce7dad
      Osier Yang 提交于
      Per the FSF address could be changed from time to time, and GNU
      recommends the following now: (http://www.gnu.org/licenses/gpl-howto.html)
      
        You should have received a copy of the GNU General Public License
        along with Foobar.  If not, see <http://www.gnu.org/licenses/>.
      
      This patch removes the explicit FSF address, and uses above instead
      (of course, with inserting 'Lesser' before 'General').
      
      Except a bunch of files for security driver, all others are changed
      automatically, the copyright for securify files are not complete,
      that's why to do it manually:
      
        src/security/security_selinux.h
        src/security/security_driver.h
        src/security/security_selinux.c
        src/security/security_apparmor.h
        src/security/security_apparmor.c
        src/security/security_driver.c
      f9ce7dad
  17. 15 8月, 2011 2 次提交
  18. 04 8月, 2011 1 次提交
  19. 19 7月, 2011 1 次提交
    • D
      Use a virFreeCallback on virNetSocket to ensure safe release · 7ea2ef4c
      Daniel P. Berrange 提交于
      When unregistering an I/O callback from a virNetSocket object,
      there is still a chance that an event may come in on the callback.
      In this case it is possible that the virNetSocket might have been
      freed already. Make use of a virFreeCallback when registering
      the I/O callbacks and hold a reference for the entire time the
      callback is set.
      
      * src/rpc/virnetsocket.c: Register a free function for the
        file handle watch
      * src/rpc/virnetsocket.h, src/rpc/virnetserverservice.c,
        src/rpc/virnetserverclient.c, src/rpc/virnetclient.c: Add
        a free function for the socket I/O watches
      7ea2ef4c
  20. 04 7月, 2011 1 次提交
    • E
      rpc: avoid memory leak on error · 6e07f72e
      Eric Blake 提交于
      Detected by Coverity.  The leak is on an error path, but I'm not
      sure whether that path is likely to be triggered in practice.
      
      * src/rpc/virnetserverservice.c (virNetServerServiceAccept): Plug leak.
      6e07f72e
  21. 01 7月, 2011 1 次提交
    • D
      Fix hardcoded limit on client requests in RPC code · 27111b35
      Daniel P. Berrange 提交于
      The virNetServerClient object had a hardcoded limit of 10 requests
      per client. Extend constructor to allow it to be passed in as a
      configurable variable. Wire this up to the 'max_client_requests'
      config parameter in libvirtd
      
      * daemon/libvirtd.c: Pass max_client_requests into services
      * src/rpc/virnetserverservice.c, src/rpc/virnetserverservice.h: Pass
        nrequests_client_max to clients
      * src/rpc/virnetserverclient.c, src/rpc/virnetserverclient.h: Allow
        configurable request limit
      27111b35
  22. 24 6月, 2011 2 次提交
    • D
      Introduce generic RPC module for advertising via MDNS · e23ec81d
      Daniel P. Berrange 提交于
      Allow RPC servers to advertise themselves using MDNS,
      via Avahi
      
      * src/rpc/virnetserver.c, src/rpc/virnetserver.h: Allow
        registration of MDNS services via avahi
      * src/rpc/virnetserverservice.c, src/rpc/virnetserverservice.h: Add
        API to fetch the listen port number
      * src/rpc/virnetsocket.c, src/rpc/virnetsocket.h: Add API to
        fetch the local port number
      * src/rpc/virnetservermdns.c, src/rpc/virnetservermdns.h: Represent
        an MDNS advertisement
      e23ec81d
    • D
      Introduce generic RPC server objects · 4e00b1da
      Daniel P. Berrange 提交于
      To facilitate creation of new daemons providing XDR RPC services,
      pull a lot of the libvirtd daemon code into a set of reusable
      objects.
      
       * virNetServer: A server contains one or more services which
         accept incoming clients. It maintains the list of active
         clients. It has a list of RPC programs which can be used
         by clients. When clients produce a complete RPC message,
         the server passes this onto the corresponding program for
         handling, and queues any response back with the client.
      
       * virNetServerClient: Encapsulates a single client connection.
         All I/O for the client is handled, reading & writing RPC
         messages.
      
       * virNetServerProgram: Handles processing and dispatch of
         RPC method calls for a single RPC (program,version).
         Multiple programs can be registered with the server.
      
       * virNetServerService: Encapsulates socket(s) listening for
         new connections. Each service listens on a single host/port,
         but may have multiple sockets if on a dual IPv4/6 host.
      
      Each new daemon now merely has to define the list of RPC procedures
      & their handlers. It does not need to deal with any network related
      functionality at all.
      4e00b1da