Guest User

OpenSLP code

a guest
Dec 21st, 2011
59
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.01 KB | None | 0 0
  1. void xmlpcp_db::MySLPRegReport(SLPHandle hslp, SLPError errcode, void *cookie)
  2. {
  3.     *(SLPError *)cookie = errcode;
  4. }
  5.  
  6. void xmlpcp_db::xmlpcp_registerservice(QString service, QString address, quint16 port)
  7. {
  8.     SLPError err;
  9.     SLPError callbackerr;
  10.     SLPHandle hslp;
  11.  
  12.     /* Register service locally */
  13.     this->iLastSubscriptionID = 1;
  14.     this->iSubscribersAmount = 0;
  15.     this->sService = service;
  16.  
  17.     /* Register service to the SLP server */
  18.     err = SLPOpen("en",SLP_FALSE,&hslp);
  19.     if(err != SLP_OK)
  20.     {
  21.         qDebug() << "Failed to open SLP handle";
  22.         return;
  23.     }
  24.  
  25.     this->sSLPUrl = "service:"+service+"://"+address+":"+QString::number(port);
  26.     err = SLPReg(hslp,this->sSLPUrl.toAscii().data(),SLP_LIFETIME_MAXIMUM,0,"",SLP_TRUE,MySLPRegReport,&callbackerr);
  27.     if((err != SLP_OK) || (callbackerr != SLP_OK))
  28.     {
  29.         qDebug() << "Error registering service to SLP";
  30.         return;
  31.     }
  32.  
  33.     SLPClose(hslp);
  34.  
  35.     emit sendLog("Registered service: "+service);
  36. }
Advertisement
Add Comment
Please, Sign In to add comment