• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4 
5 #include "net/quic/spdy_utils.h"
6 
7 #include "base/memory/scoped_ptr.h"
8 #include "net/spdy/spdy_frame_builder.h"
9 #include "net/spdy/spdy_framer.h"
10 #include "net/spdy/spdy_protocol.h"
11 
12 using std::string;
13 
14 namespace net {
15 
16 // static
SerializeUncompressedHeaders(const SpdyHeaderBlock & headers)17 string SpdyUtils::SerializeUncompressedHeaders(const SpdyHeaderBlock& headers) {
18   int length = SpdyFramer::GetSerializedLength(kDefaultSpdyMajorVersion,
19                                                &headers);
20   SpdyFrameBuilder builder(length, kDefaultSpdyMajorVersion);
21   SpdyFramer::WriteHeaderBlock(&builder, kDefaultSpdyMajorVersion, &headers);
22   scoped_ptr<SpdyFrame> block(builder.take());
23   return string(block->data(), length);
24 }
25 
26 }  // namespace net
27