diff options
author | Miloslav Trmač <mitr@redhat.com> | 2010-09-14 19:43:39 +0200 |
---|---|---|
committer | Miloslav Trmač <mitr@redhat.com> | 2010-09-14 19:43:39 +0200 |
commit | 7ff5aca8df37839496d242097f481843c57dfc5c (patch) | |
tree | 4b9168726bb75b3ddfbd96e870de8d66cbcf8d37 | |
parent | 41c18632e4587d6091266dcbb372fc72b7aaeb40 (diff) | |
download | cryptodev-linux-7ff5aca8df37839496d242097f481843c57dfc5c.tar.gz cryptodev-linux-7ff5aca8df37839496d242097f481843c57dfc5c.tar.xz cryptodev-linux-7ff5aca8df37839496d242097f481843c57dfc5c.zip |
Use more specific errno values
-rw-r--r-- | cryptodev_main.c | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/cryptodev_main.c b/cryptodev_main.c index f7a6d86..fa70b98 100644 --- a/cryptodev_main.c +++ b/cryptodev_main.c @@ -461,7 +461,9 @@ static int alg_bind(struct socket *sock, struct sockaddr *myaddr, struct alg_sock *ask; int res; - if (myaddr->sa_family != AF_ALG || sockaddr_len < sizeof(*addr)) + if (myaddr->sa_family != AF_ALG) + return -EAFNOSUPPORT; + if (sockaddr_len < sizeof(*addr)) return -EINVAL; addr = (struct sockaddr_alg *)myaddr; if (memchr(addr->salg_type, '\0', sizeof(addr->salg_type)) == NULL) @@ -473,7 +475,7 @@ static int alg_bind(struct socket *sock, struct sockaddr *myaddr, // FIXME: locking if (ask->addr.salg_type[0] != 0) - return -EINVAL; // FIXME: better error code for "already bound"? + return -EINVAL; // FIXME if (strncmp(addr->salg_type, "hash", sizeof(addr->salg_type)) != 0) @@ -529,6 +531,9 @@ static int alg_listen(struct socket *sock, int len) ask = alg_sk(sock->sk); DUMP_ASK(ask); + if (ask->addr.salg_type[0] == 0) + return -EDESTADDRREQ; + if (ask->num_slaves != 0) return -EINVAL; @@ -591,7 +596,7 @@ static int alg_sendmsg(struct kiocb *iocb, struct socket *sock, // FIXME: locking if (ask->addr.salg_type[0] == 0) - return -EINVAL; // FIXME: better error code for "not bound"? + return -ENOTCONN; return do_data_sendmsg(iocb, ask, 0, m, total_len); } @@ -607,7 +612,7 @@ static int alg_recvmsg(struct kiocb *iocb, struct socket *sock, // FIXME: locking if (ask->addr.salg_type[0] == 0) - return -EINVAL; // FIXME: better error code for "not bound"? + return -ENOTCONN; return do_data_recvmsg(iocb, ask, 0, m, total_len, flags); } |