1*9326d779SJeremy Kerr /**
2*9326d779SJeremy Kerr * Copyright © 2016 IBM Corporation
3*9326d779SJeremy Kerr *
4*9326d779SJeremy Kerr * Licensed under the Apache License, Version 2.0 (the "License");
5*9326d779SJeremy Kerr * you may not use this file except in compliance with the License.
6*9326d779SJeremy Kerr * You may obtain a copy of the License at
7*9326d779SJeremy Kerr *
8*9326d779SJeremy Kerr * http://www.apache.org/licenses/LICENSE-2.0
9*9326d779SJeremy Kerr *
10*9326d779SJeremy Kerr * Unless required by applicable law or agreed to in writing, software
11*9326d779SJeremy Kerr * distributed under the License is distributed on an "AS IS" BASIS,
12*9326d779SJeremy Kerr * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13*9326d779SJeremy Kerr * See the License for the specific language governing permissions and
14*9326d779SJeremy Kerr * limitations under the License.
15*9326d779SJeremy Kerr */
161a0e03b4SJeremy Kerr
171a0e03b4SJeremy Kerr #include <err.h>
181a0e03b4SJeremy Kerr #include <unistd.h>
191a0e03b4SJeremy Kerr
201a0e03b4SJeremy Kerr #include "console-server.h"
211a0e03b4SJeremy Kerr
write_buf_to_fd(int fd,const uint8_t * buf,size_t len)221a0e03b4SJeremy Kerr int write_buf_to_fd(int fd, const uint8_t *buf, size_t len)
231a0e03b4SJeremy Kerr {
241a0e03b4SJeremy Kerr size_t pos;
251a0e03b4SJeremy Kerr ssize_t rc;
261a0e03b4SJeremy Kerr
271a0e03b4SJeremy Kerr for (pos = 0; pos < len; pos += rc) {
281a0e03b4SJeremy Kerr rc = write(fd, buf + pos, len - pos);
291a0e03b4SJeremy Kerr if (rc <= 0) {
301a0e03b4SJeremy Kerr warn("Write error");
311a0e03b4SJeremy Kerr return -1;
321a0e03b4SJeremy Kerr }
331a0e03b4SJeremy Kerr }
341a0e03b4SJeremy Kerr
351a0e03b4SJeremy Kerr return 0;
361a0e03b4SJeremy Kerr }
37