1*3f982cf4SFabien Sanglard// Copyright 2018 The Chromium Authors. All rights reserved. 2*3f982cf4SFabien Sanglard// Use of this source code is governed by a BSD-style license that can be 3*3f982cf4SFabien Sanglard// found in the LICENSE file. 4*3f982cf4SFabien Sanglard 5*3f982cf4SFabien Sanglardpackage osp 6*3f982cf4SFabien Sanglard 7*3f982cf4SFabien Sanglard// TODO(jophba): 8*3f982cf4SFabien Sanglard// - Read messages as well, and more than one 9*3f982cf4SFabien Sanglard 10*3f982cf4SFabien Sanglardimport ( 11*3f982cf4SFabien Sanglard "context" 12*3f982cf4SFabien Sanglard) 13*3f982cf4SFabien Sanglard 14*3f982cf4SFabien Sanglardfunc SendMessageAsClient(ctx context.Context, hostname string, port int, msg interface{}) error { 15*3f982cf4SFabien Sanglard session, err := DialAsQuicClient(ctx, hostname, port) 16*3f982cf4SFabien Sanglard if err != nil { 17*3f982cf4SFabien Sanglard return err 18*3f982cf4SFabien Sanglard } 19*3f982cf4SFabien Sanglard stream, err := session.OpenStreamSync() 20*3f982cf4SFabien Sanglard if err != nil { 21*3f982cf4SFabien Sanglard return err 22*3f982cf4SFabien Sanglard } 23*3f982cf4SFabien Sanglard return WriteMessage(msg, stream) 24*3f982cf4SFabien Sanglard} 25