| // Copyright (C) 2020 The Android Open Source Project |
| // |
| // Licensed under the Apache License, Version 2.0 (the "License"); |
| // you may not use this file except in compliance with the License. |
| // You may obtain a copy of the License at |
| // |
| // http://www.apache.org/licenses/LICENSE-2.0 |
| // |
| // Unless required by applicable law or agreed to in writing, software |
| // distributed under the License is distributed on an "AS IS" BASIS, |
| // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| // See the License for the specific language governing permissions and |
| // limitations under the License. |
| |
| cc_defaults { |
| name: "ssh_defaults", |
| vendor: true, |
| cflags: [ |
| "-Wno-incompatible-pointer-types", |
| "-Wno-pointer-sign", |
| "-Wno-unused-parameter", |
| ], |
| include_dirs: [ |
| "external/openssh/openbsd-compat", |
| "external/openssh/prebuilt-intermediates", |
| ], |
| shared_libs: [ |
| "libdl", |
| "libcrypto", |
| "libssl", |
| "libz", |
| ], |
| } |
| |
| cc_library { |
| name: "libssh", |
| defaults: ["ssh_defaults"], |
| cflags: ["-DENABLE_SK"], |
| srcs: [ |
| "addrmatch.c", |
| "atomicio.c", |
| "authfd.c", |
| "authfile.c", |
| "bitmap.c", |
| "canohost.c", |
| "chacha.c", |
| "channels.c", |
| "cipher-aes.c", |
| "cipher-aesctr.c", |
| "cipher-chachapoly.c", |
| "cipher-ctr.c", |
| "cipher.c", |
| "cleanup.c", |
| "compat.c", |
| "dh.c", |
| "digest-openssl.c", |
| "dispatch.c", |
| "dns.c", |
| "ed25519.c", |
| "entropy.c", |
| "fatal.c", |
| "fe25519.c", |
| "ge25519.c", |
| "gss-genr.c", |
| "hash.c", |
| "hmac.c", |
| "hostfile.c", |
| "kex.c", |
| "kexc25519.c", |
| "kexdh.c", |
| "kexecdh.c", |
| "kexgen.c", |
| "kexgex.c", |
| "kexgexc.c", |
| "kexsntrup4591761x25519.c", |
| "krl.c", |
| "log.c", |
| "mac.c", |
| "match.c", |
| "misc.c", |
| "moduli.c", |
| "monitor_fdpass.c", |
| "msg.c", |
| "nchan.c", |
| "openbsd-compat/bcrypt_pbkdf.c", |
| "openbsd-compat/bindresvport.c", |
| "openbsd-compat/blowfish.c", |
| "openbsd-compat/bsd-closefrom.c", |
| "openbsd-compat/bsd-err.c", |
| "openbsd-compat/bsd-getpagesize.c", |
| "openbsd-compat/bsd-getpeereid.c", |
| "openbsd-compat/bsd-malloc.c", |
| "openbsd-compat/bsd-misc.c", |
| "openbsd-compat/bsd-openpty.c", |
| "openbsd-compat/bsd-signal.c", |
| "openbsd-compat/bsd-statvfs.c", |
| "openbsd-compat/explicit_bzero.c", |
| "openbsd-compat/fmt_scaled.c", |
| "openbsd-compat/freezero.c", |
| "openbsd-compat/getopt_long.c", |
| "openbsd-compat/glob.c", |
| "openbsd-compat/libressl-api-compat.c", |
| "openbsd-compat/openssl-compat.c", |
| "openbsd-compat/port-linux.c", |
| "openbsd-compat/port-net.c", |
| "openbsd-compat/pwcache.c", |
| "openbsd-compat/readpassphrase.c", |
| "openbsd-compat/reallocarray.c", |
| "openbsd-compat/recallocarray.c", |
| "openbsd-compat/rresvport.c", |
| "openbsd-compat/setproctitle.c", |
| "openbsd-compat/strcasestr.c", |
| "openbsd-compat/strmode.c", |
| "openbsd-compat/strtonum.c", |
| "openbsd-compat/timingsafe_bcmp.c", |
| "openbsd-compat/vis.c", |
| "packet.c", |
| "platform-misc.c", |
| "platform-pledge.c", |
| "poly1305.c", |
| "readpass.c", |
| "rijndael.c", |
| "sc25519.c", |
| "sntrup4591761.c", |
| "smult_curve25519_ref.c", |
| "ssh-dss.c", |
| "ssh-ecdsa.c", |
| "ssh-ecdsa-sk.c", |
| "ssh-ed25519.c", |
| "ssh-ed25519-sk.c", |
| "ssh-rsa.c", |
| "ssh-sk.c", |
| "sshbuf-io.c", |
| "sshbuf-getput-basic.c", |
| "sshbuf-getput-crypto.c", |
| "sshbuf-misc.c", |
| "sshbuf.c", |
| "ssherr.c", |
| "sshkey.c", |
| "ttymodes.c", |
| "uidswap.c", |
| "umac.c", |
| "umac128.c", |
| "utf8.c", |
| "verify.c", |
| "xmalloc.c", |
| ], |
| } |
| |
| cc_binary { |
| name: "ssh", |
| defaults: ["ssh_defaults"], |
| srcs: [ |
| "clientloop.c", |
| "mux.c", |
| "readconf.c", |
| "ssh.c", |
| "sshconnect.c", |
| "sshconnect2.c", |
| "sshtty.c", |
| ], |
| shared_libs: ["libssh"], |
| } |
| |
| cc_binary { |
| name: "sftp", |
| defaults: ["ssh_defaults"], |
| srcs: [ |
| "sftp.c", |
| "sftp-client.c", |
| "sftp-common.c", |
| "sftp-glob.c", |
| "progressmeter.c", |
| ], |
| shared_libs: ["libssh"], |
| } |
| |
| cc_binary { |
| name: "scp", |
| defaults: ["ssh_defaults"], |
| srcs: [ |
| "scp.c", |
| "progressmeter.c", |
| ], |
| shared_libs: ["libssh"], |
| } |
| |
| cc_binary { |
| name: "sshd", |
| defaults: ["ssh_defaults"], |
| srcs: [ |
| "audit-bsm.c", |
| "audit-linux.c", |
| "audit.c", |
| "auth-bsdauth.c", |
| "auth-krb5.c", |
| "auth-options.c", |
| "auth-pam.c", |
| "auth-rhosts.c", |
| "auth-shadow.c", |
| "auth-sia.c", |
| "auth.c", |
| "auth2-chall.c", |
| "auth2-gss.c", |
| "auth2-hostbased.c", |
| "auth2-kbdint.c", |
| "auth2-none.c", |
| "auth2-passwd.c", |
| "auth2-pubkey.c", |
| "auth2.c", |
| "groupaccess.c", |
| "gss-serv-krb5.c", |
| "gss-serv.c", |
| "kexgexs.c", |
| "loginrec.c", |
| "md5crypt.c", |
| "monitor.c", |
| "monitor_wrap.c", |
| "platform.c", |
| "platform-tracing.c", |
| "sandbox-null.c", |
| "sandbox-rlimit.c", |
| "sandbox-systrace.c", |
| "servconf.c", |
| "serverloop.c", |
| "session.c", |
| "sftp-common.c", |
| "sftp-realpath.c", |
| "sftp-server.c", |
| "sshd.c", |
| "sshlogin.c", |
| "sshpty.c", |
| ], |
| shared_libs: [ |
| "libcutils", |
| "libssh", |
| ], |
| } |
| |
| cc_binary { |
| name: "ssh-keygen", |
| defaults: ["ssh_defaults"], |
| srcs: [ |
| "ssh-keygen.c", |
| "sshsig.c", |
| ], |
| shared_libs: ["libssh"], |
| } |
| |
| prebuilt_etc { |
| name: "sshd_config", |
| vendor: true, |
| src: "sshd_config.android", |
| relative_install_path: "ssh", |
| } |
| |
| sh_binary { |
| name: "start-ssh", |
| vendor: true, |
| src: "start-ssh", |
| } |