{
struct pty_chan *data = d;
char *dev;
- int fd, err;
+ int fd;
fd = get_pty();
if(fd < 0){
return(-errno);
}
if(data->raw){
- CATCH_EINTR(err = tcgetattr(fd, &data->tt));
- if(err)
- return(err);
-
- err = raw(fd);
- if(err)
- return(err);
+ tcgetattr(fd, &data->tt);
+ raw(fd, 0);
}
dev = ptsname(fd);
int pty_open(int input, int output, int primary, void *d, char **dev_out)
{
struct pty_chan *data = d;
- int fd, err;
+ int fd;
char dev[sizeof("/dev/ptyxx\0")] = "/dev/ptyxx";
fd = getmaster(dev);
- if(fd < 0)
- return(-errno);
-
- if(data->raw){
- err = raw(fd);
- if(err)
- return(err);
- }
+ if(fd < 0) return(-errno);
+ if(data->raw) raw(fd, 0);
if(data->announce) (*data->announce)(dev, data->dev);
sprintf(data->dev_name, "%s", dev);