Fix race condition in abort of stream
Fix race condition in abort of stream

If a stream gets a server initiated abort, the client may still
send an abort request before it receives the server side abort.
This causes the server to send back another abort for the
stream. Since the protocol defines that abort is the last thing
to be sent, the client gets confused by this second abort from
the server. If the stream is already shutdown, just drop any
client requested abort, rather than sending back another message.
This fixes the regression from previous versions.

Tested as follows

In one virsh session

  virsh # start foo
  virsh # console foo

In other virsh session

  virsh # destroy foo

The first virsh session should be able to continue issuing
commands without error. Prior to this patch it saw

  virsh # list
  error: Failed to list active domains
  error: An error occurred, but the cause is unknown

  virsh # list
  error: Failed to list active domains
  error: no call waiting for reply with prog 536903814 vers 1 serial 9

* src/rpc/virnetserverprogram.c: Drop abort requests
  for streams which no longer exist

shugaoye/libvirt,andreabolognani/libvirt,wiedi/libvirt,elmarco/libvirt,warewolf/libvirt,eskultety/libvirt,novel/fbsd-libvirt,emaste/libvirt,olafhering/libvirt,kantai/libvirt-vfork,bjzhang/libvirt,jardasgit/libvirt,andreabolognani/libvirt,taget/libvirt,emaste/libvirt,rmarwaha/libvirt,olafhering/libvirt,wiedi/libvirt,olafhering/libvirt,crobinso/libvirt,leilihh/libvirt,taget/libvirt,eskultety/libvirt,zippy2/libvirt,zhlcindy/libvirt-1.1.4-maintain,datto/libvirt,eskultety/libvirt,taget/libvirt,rmarwaha/libvirt,usc-isi/libvirt,trainstack/libvirt,zhlcindy/libvirt-1.1.4-maintain,danwent/libvirt-ovs,elmarco/libvirt,warewolf/libvirt,dumbbell/libvirt,soulxu/libvirt-xuhj,usc-isi/libvirt,agx/libvirt,warewolf/libvirt,kantai/libvirt-vfork,VenkatDatta/libvirt,elmarco/libvirt,datto/libvirt,jfehlig/libvirt,warewolf/libvirt,soulxu/libvirt-xuhj,warewolf/libvirt,datto/libvirt,cbosdo/libvirt,fabianfreyer/libvirt,warewolf/libvirt,trainstack/libvirt,siboulet/libvirt-openvz,siboulet/libvirt-openvz,novel/fbsd-libvirt,jardasgit/libvirt,agx/libvirt,jeckersb/libvirt,iam-TJ/libvirt,eskultety/libvirt,wiedi/libvirt,emaste/libvirt,rmarwaha/libvirt1,novel/fbsd-libvirt,warewolf/libvirt,dumbbell/libvirt,emaste/libvirt,novel/fbsd-libvirt,zippy2/libvirt,rmarwaha/libvirt1,soulxu/libvirt-xuhj,jfehlig/libvirt,jfehlig/libvirt,foomango/libvirt,iam-TJ/libvirt,fabianfreyer/libvirt,VenkatDatta/libvirt,leilihh/libvirt,usc-isi/libvirt,rlaager/libvirt,crobinso/libvirt,elmarco/libvirt,jardasgit/libvirt,VenkatDatta/libvirt,kantai/libvirt-vfork,trainstack/libvirt,novel/fbsd-libvirt,emaste/libvirt,dumbbell/libvirt,agx/libvirt,libvirt/libvirt,libvirt/libvirt,kantai/libvirt-vfork,usc-isi/libvirt,zhlcindy/libvirt-1.1.4-maintain,libvirt/libvirt,trainstack/libvirt,cbosdo/libvirt,taget/libvirt,foomango/libvirt,cbosdo/libvirt,iam-TJ/libvirt,jeckersb/libvirt,rlaager/libvirt,rmarwaha/libvirt1,shugaoye/libvirt,nertpinx/libvirt,wiedi/libvirt,agx/libvirt,libvirt/libvirt,shugaoye/libvirt,datto/libvirt,foomango/libvirt,fabianfreyer/libvirt,rmarwaha/libvirt,rmarwaha/libvirt,rmarwaha/libvirt1,rmarwaha/libvirt,dumbbell/libvirt,datto/libvirt,fabianfreyer/libvirt,danwent/libvirt-ovs,nertpinx/libvirt,taget/libvirt,danwent/libvirt-ovs,emaste/libvirt,trainstack/libvirt,foomango/libvirt,cbosdo/libvirt,agx/libvirt,iam-TJ/libvirt,trainstack/libvirt,leilihh/libvirt,novel/fbsd-libvirt,leilihh/libvirt,siboulet/libvirt-openvz,foomango/libvirt,jeckersb/libvirt,rmarwaha/libvirt,danwent/libvirt-ovs,soulxu/libvirt-xuhj,olafhering/libvirt,eskultety/libvirt,andreabolognani/libvirt,wiedi/libvirt,jeckersb/libvirt,nertpinx/libvirt,nertpinx/libvirt,siboulet/libvirt-openvz,novel/fbsd-libvirt,crobinso/libvirt,bjzhang/libvirt,wiedi/libvirt,usc-isi/libvirt,jeckersb/libvirt,dumbbell/libvirt,rlaager/libvirt,fabianfreyer/libvirt,bjzhang/libvirt,rlaager/libvirt,rmarwaha/libvirt1,bjzhang/libvirt,zhlcindy/libvirt-1.1.4-maintain,trainstack/libvirt,crobinso/libvirt,elmarco/libvirt,jfehlig/libvirt,siboulet/libvirt-openvz,zhlcindy/libvirt-1.1.4-maintain,rmarwaha/libvirt1,kantai/libvirt-vfork,shugaoye/libvirt,VenkatDatta/libvirt,emaste/libvirt,bjzhang/libvirt,leilihh/libvirt,andreabolognani/libvirt,danwent/libvirt-ovs,rlaager/libvirt,shugaoye/libvirt,wiedi/libvirt,zippy2/libvirt,leilihh/libvirt,iam-TJ/libvirt,VenkatDatta/libvirt,jeckersb/libvirt,zippy2/libvirt,novel/fbsd-libvirt,jeckersb/libvirt,iam-TJ/libvirt,soulxu/libvirt-xuhj,nertpinx/libvirt,andreabolognani/libvirt,jardasgit/libvirt,iam-TJ/libvirt,cbosdo/libvirt,novel/fbsd-libvirt,jardasgit/libvirt,dumbbell/libvirt