Lines Matching defs:sock

853 static int recv_code(int sock, int8_t* code) {
854 return recv(sock, code, 1, 0) == 1;
857 static int recv_message(int sock, uint8_t* message, int length) {
859 if (recv(sock, &bytes[0], 1, 0) != 1 ||
860 recv(sock, &bytes[1], 1, 0) != 1) {
870 int n = recv(sock, &message[offset], length - offset, 0);
880 static int recv_end_of_file(int sock) {
882 return recv(sock, &byte, 1, 0) == 0;
885 static void send_code(int sock, int8_t code) {
886 send(sock, &code, 1, 0);
889 static void send_message(int sock, const uint8_t* message, int length) {
891 send(sock, &bytes, 2, 0);
892 send(sock, message, length, 0);
939 static ResponseCode get(KeyStore* keyStore, int sock, uid_t uid, Value* keyName, Value*, Value*) {
947 send_code(sock, NO_ERROR);
948 send_message(sock, keyBlob.getValue(), keyBlob.getLength());
980 static ResponseCode saw(KeyStore*, int sock, uid_t uid, Value* keyPrefix, Value*, Value*) {
987 send_code(sock, NO_ERROR);
994 send_message(sock, keyPrefix->value, keyPrefix->length);
1052 static ResponseCode unlock(KeyStore* keyStore, int sock, uid_t uid, Value* pw, Value* unused,
1054 return password(keyStore, sock, uid, pw, unused, unused2);
1114 static ResponseCode get_pubkey(KeyStore* keyStore, int sock, uid_t uid, Value* keyName, Value*, Value*) {
1142 send_code(sock, NO_ERROR);
1143 send_message(sock, data, dataLength);
1180 static ResponseCode sign(KeyStore* keyStore, int sock, uid_t uid, Value* keyName, Value* data,
1216 send_code(sock, NO_ERROR);
1217 send_message(sock, signedData, signedDataLength);
1276 static ResponseCode getmtime(KeyStore*, int sock, uid_t uid, Value* keyName,
1302 send_code(sock, NO_ERROR);
1303 send_message(sock, data, dataLength);
1332 ResponseCode (*run)(KeyStore* keyStore, int sock, uid_t uid, Value* param1, Value* param2,
1375 static ResponseCode process(KeyStore* keyStore, int sock, uid_t uid, int8_t code) {
1400 params[i].length = recv_message(sock, params[i].value, action->lengths[i]);
1405 if (!recv_end_of_file(sock)) {
1408 return action->run(keyStore, sock, uid, &params[0], &params[1], &params[2]);
1441 int sock;
1442 while ((sock = accept(controlSocket, NULL, 0)) != -1) {
1445 setsockopt(sock, SOL_SOCKET, SO_RCVTIMEO, &tv, sizeof(tv));
1446 setsockopt(sock, SOL_SOCKET, SO_SNDTIMEO, &tv, sizeof(tv));
1450 int credResult = getsockopt(sock, SOL_SOCKET, SO_PEERCRED, &cred, &size);
1455 if (recv_code(sock, &request)) {
1457 ResponseCode response = process(&keyStore, sock, cred.uid, request);
1461 send_code(sock, response);
1470 close(sock);