- DNSServiceDiscoveryDeallocate( My_Rendezvous[Idx].Discovery_Ref );
- Log( LOG_INFO, "Unregistered \"%s\" from Rendezvous.", My_Rendezvous[Idx].Desc );
- My_Rendezvous[Idx].Discovery_Ref = 0;
-} /* Unregister */
+ assert( Session == My_Discovery_Session );
+ assert( Extra != NULL );
+
+ if( Status == SW_DISCOVERY_PUBLISH_STARTED || Status == SW_DISCOVERY_PUBLISH_STOPPED )
+ {
+ /* Success! */
+ Log( LOG_INFO, "Successfully registered \"%s\" with Rendezvous.", s->Desc );
+ return SW_OKAY;
+ }
+
+ switch( Status )
+ {
+ case SW_DISCOVERY_PUBLISH_NAME_COLLISION:
+ strcpy( txt, "name conflict!" );
+ break;
+ default:
+ sprintf( txt, "error code %ld!", (long)Status );
+ }
+
+ Log( LOG_INFO, "Can't register \"%s\" with Rendezvous: %s", s->Desc, txt );
+ s->Desc[0] = '\0';
+
+ return SW_OKAY;
+} /* Registration_Reply_Handler */
+
+
+#endif /* Howl */