📄 testmultipartrelated.cxx
字号:
"Event: presence\r\n"
"Subscription-State: active;expires=7200\r\n"
"Require: eventlist\r\n"
"Content-Type: multipart/related;type=\"application/rlmi+xml\";\r\n"
" start=\"<2BEI83@pres.example.com>\";boundary=\"TfZxoxgAvLqgj4wRWPDL\"\r\n"
"Content-Length: 2862\r\n"
"\r\n"
"--TfZxoxgAvLqgj4wRWPDL\r\n"
"Content-Transfer-Encoding: binary\r\n"
"Content-ID: <2BEI83@pres.example.com>\r\n"
"Content-Type: application/rlmi+xml;charset=\"UTF-8\"\r\n"
"\r\n"
"<?xml version=\"1.0\" encoding=\"UTF-8\"?>\r\n"
"<list xmlns=\"urn:ietf:params:xml:ns:rmli\"\r\n"
" uri=\"sip:adam-friends@pres.example.com\" version=\"2\"\r\n"
" name=\"Buddy List at COM\" fullState=\"false\">\r\n"
" <resource uri=\"sip:ed@example.net\" name=\"Ed at NET\">\r\n"
" <instance id=\"sdlkmeopdf\" state=\"pending\"/>\r\n"
" </resource>\r\n"
" <resource uri=\"sip:adam-friends@example.org\"\r\n"
" name=\"My Friends at ORG\">\r\n"
" <instance id=\"cmpqweitlp\" state=\"active\"\r\n"
" cid=\"1KQhyE@pres.example.com\"/>\r\n"
" </resource>\r\n"
"</list>\r\n"
"\r\n"
"--TfZxoxgAvLqgj4wRWPDL\r\n"
"Content-Transfer-Encoding: binary\r\n"
"Content-ID: <1KQhyE@pres.example.com>\r\n"
"Content-Type: multipart/signed;\r\n"
" protocol=\"application/pkcs7-signature\";\r\n"
" micalg=sha1;boundary=\"l3WMZaaL8NpQWGnQ4mlU\"\r\n"
"\r\n"
"--l3WMZaaL8NpQWGnQ4mlU\r\n"
"Content-Transfer-Encoding: binary\r\n"
"Content-ID: <ZPvJHL@example.org>\r\n"
"Content-Type: multipart/related;type=\"application/rlmi+xml\";\r\n"
" start=\"<Cvjpeo@example.org>\";boundary=\"tuLLl3lDyPZX0GMr2YOo\"\r\n"
"\r\n"
"--tuLLl3lDyPZX0GMr2YOo\r\n"
"Content-Transfer-Encoding: binary\r\n"
"Content-ID: <Cvjpeo@example.org>\r\n"
"Content-Type: application/rlmi+xml;charset=\"UTF-8\"\r\n"
"\r\n"
"<?xml version=\"1.0\" encoding=\"UTF-8\"?>\r\n"
"<list xmlns=\"urn:ietf:params:xml:ns:rmli\"\r\n"
" uri=\"sip:adam-friends@example.org\" version=\"1\"\r\n"
" name=\"Buddy List at ORG\" fullState=\"true\">\r\n"
" <resource uri=\"sip:joe@example.org\" name=\"Joe Thomas\">\r\n"
" <instance id=\"1\" state=\"active\" cid=\"mrEakg@example.org\"/>\r\n"
" </resource>\r\n"
" <resource uri=\"sip:mark@example.org\" name=\"Mark Edwards\">\r\n"
" <instance id=\"1\" state=\"active\" cid=\"KKMDmv@example.org\"/>\r\n"
" </resource>\r\n"
"</list>\r\n"
"\r\n"
"--tuLLl3lDyPZX0GMr2YOo\r\n"
"Content-Transfer-Encoding: binary\r\n"
"Content-ID: <mrEakg@example.org>\r\n"
"Content-Type: application/pidf+xml;charset=\"UTF-8\"\r\n"
"\r\n"
"<?xml version=\"1.0\" encoding=\"UTF-8\"?>\r\n"
"<presence xmlns=\"urn:ietf:params:xml:ns:pidf\"\r\n"
" entity=\"sip:joe@example.org\">\r\n"
" <tuple id=\"7823a4\">\r\n"
" <status>\r\n"
" <basic>open</basic>\r\n"
" </status>\r\n"
" <contact priority=\"1.0\">sip:joe@example.org</contact>\r\n"
" </tuple>\r\n"
"</presence>\r\n"
"\r\n"
"--tuLLl3lDyPZX0GMr2YOo\r\n"
"Content-Transfer-Encoding: binary\r\n"
"Content-ID: <KKMDmv@example.org>\r\n"
"Content-Type: application/pidf+xml;charset=\"UTF-8\"\r\n"
"\r\n"
"<?xml version=\"1.0\" encoding=\"UTF-8\"?>\r\n"
"<presence xmlns=\"urn:ietf:params:xml:ns:pidf\"\r\n"
" entity=\"sip:mark@example.org\">\r\n"
" <tuple id=\"398075\">\r\n"
" <status>\r\n"
" <basic>closed</basic>\r\n"
" </status>\r\n"
" </tuple>\r\n"
"</presence>\r\n"
"\r\n"
"--tuLLl3lDyPZX0GMr2YOo--\r\n"
"\r\n"
"--l3WMZaaL8NpQWGnQ4mlU\r\n"
"Content-Transfer-Encoding: binary\r\n"
"Content-ID: <K9LB7k@example.org>\r\n"
"Content-Type: application/pkcs7-signature\r\n"
"\r\n"
"[PKCS #7 signature here]\r\n"
"\r\n"
"--l3WMZaaL8NpQWGnQ4mlU--\r\n"
"\r\n"
"--TfZxoxgAvLqgj4wRWPDL--\r\n");
auto_ptr<SipMessage> msg(TestSupport::makeMessage(txt.c_str()));
MultipartRelatedContents* mpc = dynamic_cast<MultipartRelatedContents*>(msg->getContents());
assert(mpc);
traverseMulti(mpc);
}
cerr << "All OK" << endl;
return 0;
}
/* ====================================================================
* The Vovida Software License, Version 1.0
*
* Copyright (c) 2000-2005 Vovida Networks, Inc. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
*
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in
* the documentation and/or other materials provided with the
* distribution.
*
* 3. The names "VOCAL", "Vovida Open Communication Application Library",
* and "Vovida Open Communication Application Library (VOCAL)" must
* not be used to endorse or promote products derived from this
* software without prior written permission. For written
* permission, please contact vocal@vovida.org.
*
* 4. Products derived from this software may not be called "VOCAL", nor
* may "VOCAL" appear in their name, without prior written
* permission of Vovida Networks, Inc.
*
* THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESSED OR IMPLIED
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
* OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, TITLE AND
* NON-INFRINGEMENT ARE DISCLAIMED. IN NO EVENT SHALL VOVIDA
* NETWORKS, INC. OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT DAMAGES
* IN EXCESS OF $1,000, NOR FOR ANY INDIRECT, INCIDENTAL, SPECIAL,
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
* OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE
* USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
* DAMAGE.
*
* ====================================================================
*
* This software consists of voluntary contributions made by Vovida
* Networks, Inc. and many individuals on behalf of Vovida Networks,
* Inc. For more information on Vovida Networks, Inc., please see
* <http://www.vovida.org/>.
*
*/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -