Commit Graph
37 Commits
Author SHA1 Message Date
Isaku Yamahata 072f1bbb8a [LibOS] test/native: Remove static.c and pie.c
Those tests are duplicates of regression/bootstrap_static.c and
regression/bootstrap_pie.c.
2019-08-15 14:31:03 +02:00
Simon Gaiser 64e46adcc0 [Makefile] Use generated header dependencies
Fixes #189.
2019-08-14 00:44:17 +02:00
Michał Kowalczyk 5ec5e2f24c Delete all reference monitor residues 2019-07-31 02:30:47 +02:00
Chia-Che Tsai 728d16aca6 [LibOS] Fix C++ tests support
This commit:
* Fixes compilation and execution errors for C++ programs in LibOS/shim/test/native.
* Adds a C++ regression test.
2019-07-01 14:42:32 +02:00
Chia-Che Tsai be9852784f [All components] Remove all modelines from all source files 2019-06-07 15:30:43 -05:00
Dmitrii Kuvaiskii 3bd067a13b [LibOS/regression] Add test for Unix domain sockets
This commit moves and modifies unix.c test from native/
to regression tests. This tests Unix domain sockets.
2019-05-29 16:11:27 -07:00
Michał Kowalczyk 16d90cfe12 Fix parenthesizing and formatting of C macros 2019-05-23 19:14:23 +02:00
Isaku Yamahata 0a8f97af5a [Pal/{Linux, Linux-SGX}] Add NULL check in udp_connect/sgx_ocall_sock_connect
This patch also adds a UDP LibOS regression test.
2019-05-03 12:50:03 -07:00
Don Porter e62a021fd8 Add an open method to /proc and some subdirectories
This addresses issue #461.
2019-05-01 09:04:51 -04:00
Isaku Yamahata f72cd48ee5 [LibOS] Emulate pause() by sleeping for a very long time
Before, pause() was emulated by sleeping for 1s in a loop until
signal interrupted it. If signal arrived in-between these invocations
then pause() could never return. Also, pause() incorrectly returned 0
instead of -1 and errno=EINTR.

This patch emulates pause() by sleeping for a very long time (years).
Also, it correctly returns EINTR.
2019-04-30 17:07:51 -07:00
Michał Kowalczyk 382a1ec394 Cleanup .gitignore files 2019-04-30 23:16:38 +02:00
Isaku Yamahata 0fe0e028d8 [LibOS/test/native] Add manifest template to make exec_fork and script work + fix tcp test
`tcp` test reads tcp.c. This patch adds it to manifest.template to make the test work.
2019-04-24 17:37:31 +02:00
Dmitrii Kuvaiskii 88dd3f0ae7 [Build] Remove residual references to nonexistent exec_victim under test/native 2019-02-14 12:45:50 -08:00
Chia-Che Tsai cba6e3278a Add -Werror to CFLAGS with WERROR=1
Signed-off-by: Chia-Che Tsai <chiache@tamu.edu>
2019-02-12 20:09:43 -06:00
Isaku Yamahata 4a63e6a577 [LibOS/benchmark] make LibOS/shim/tests/benchmark build again
This patch fixes up to make LibOS/shim/tests/benchmark build again.
It addresses small 4 issues as follows.

- Runtime/pal_loader
  pass --no-print-directory to make pal_loader doesn't work as
  expected when it's invoked by make command as below.  pal_loader
  invokes make with --quiet. But when pal_loader is called by make as
  sub command, the message, "Entering/Leaving <dir>" is still output.
  pass --no-print-directory to make to suppress Entering/Leaving
  message.

  > /graphene/Runtime/pal-make[1]: Entering
  > directory '/graphene/Pal/test'
  > Linux
  > make[1]: Leaving directory
  > '/graphene/devel/graphene/Pal/test' is not built, or
  > security mode is not supported

- fix up Makefiles to build LibOS/shim/tests/benchmark
  Otherwise the build fails as follows.
  > $ make
  > ln -sf ../../../../Runtime/pal_loader
  > [ fork_latency ]
  > [ test_start.m ]
  > [ rpc_latency.libos ]
  > /usr/bin/ld: cannot find -llibos
  > collect2: error: ld returned 1 exit status
  > Makefile:18: recipe for target 'rpc_latency.libos' failed
  > make: *** [rpc_latency.libos] Error 1

- update stale manifest.template

- update .gitignore
  The change set of 7f5a4cc made Makefile create .lib directory.
  So add it to .gitignore.

Signed-off-by: Isaku Yamahata <isaku.yamahata@gmail.com>
2019-01-22 23:06:45 +01:00
Don Porter 203a3920fa Fix a regression on exec in trying to repro #59. Remove an assertion that doesn't seem to be doing much good, given that the size is always statically determined in hex2str.
Fixing the bound of a debug buffer in SGX PAL

Rewrite bytes2hexstr; Add two new macros, alloca_bytes2hexstr() and malloc_bytes2hexstr().

Remove HASHBUF_SIZE

Add comments for the bytes2hexstr() macros.

Add a compile-time assertion
2018-11-13 13:02:42 -05:00
Jat 6a1faf7874 gcc -dumpmachine returns x86_64-xxx-linux-gnu (#242)
This change normalizes the behavior of the Makefile in checking for the host system time, building across a wider range of systems.
2018-10-10 11:35:30 -07:00
Don Porter 83d230a774 Add the shared object unit test to CI/standard unit test suites (#213)
* Add the shared object unit test to CI/standard unit test suites (#54 #56)
2018-07-02 20:25:59 -04:00
adombeck 68c994d450 Add shared_object to test/native (#56) 2018-05-26 16:31:41 -07:00
Chia-Che Tsai 6e3c5aea56 deprecating .packed directories (#149)
.packed directories are originally created for testing on non-Linux platforms. The usage is mostly obsolete right now, and the binaries are completely out-dated. A better strategy would be to create a hook in the github to release binary packages.
2017-12-21 11:13:53 -05:00
Chia-Che Tsai 84f81d8f13 Lots of bugfixes (#145)
- Fix a severe bug caused by merging #87. The patch does not check the return values from get_config_entries_size(), while the return values can easily be negative (-PAL_ERROR_INVAL). Any usage of this function should carefully check the return values and also pass the size into get_config_entries() to prevent buffer overflow.
- Fix a minor bug in handling IPC disconnection. The callback ipc_child_exit() never receives a "term_signal" parameter. The callback is called when thepipe to a child process unexpectedly terminates, which can only mean the child process has crashed. I believe the proper signal to send is SIGKILL.
- Remove a compilation warning caused by type mismatch of __malloc().
- Allow binding TCP socket to ANY address
- enable LD_PRELOAD in glibc
- disable output buffering in LTP tests to reveal omitted passes
- Remove a double-unlock in shim_async.c
- Replace all int with size_t or ssize_t in Graphene configuration API
- Add new passed LTP tests
2017-12-18 16:03:36 -08:00
Chia-Che Tsai 9aee3dcb69 new compilation logistic: always use the Runtime directory 2017-02-02 09:42:38 -05:00
Don Porter 872af4984c Futex bugfixes (may help #40), more enhancements to LTP framework. 2017-01-28 16:14:30 -05:00
Adrian Dombeck a962489841 Fix ls.manifest.template
- Add sgx.trusted_files.libpthread
- Remove unnecessary net rules
2017-01-17 12:14:28 +01:00
Adrian Dombeck 855fd142ff Fix trusted_file entries in ls.manifest.template 2016-12-05 14:01:04 +01:00
Chia-Che Tsai 27ed3b2f6b - Fix calling convention issues in the glibc 2.19 patch
- Port gipc module to Linux kernel 4.3
- Simplify PAL signal handling
- Fix bug #4 (epoll-related syscalls)
- Fix bug #10
- Fix bug #14
- Merge pull request #18
2016-12-02 00:24:05 -05:00
woonhak 9743bcd433 fix unix socket(pipe) test 2016-11-13 23:32:19 -05:00
Chia-Che Tsai 1a1e199c79 release v0.4beta
Release of Graphene SGX:
Supporting native Linux application in Intel SGX enclaves.
Most applications are supported. Some features may still be buggy.

Improving portability of Graphene:
Eliminating GCC-ism of the host-generic code.
Easier to port to non-Posix platform (e.g., Windows without Cygwin).
2016-07-19 19:45:55 -04:00
Chia-Che Tsai 0a2fa88e2f apply internal patches 2016-03-08 19:28:28 -05:00
Chia-Che Tsai cfa620e24a Trivial changes 2016-02-10 21:59:05 -05:00
Chia-Che Tsai b5586bbfc6 release v0.3
- Bugfixes in PAL and SHIM
- Improvement of migration scheme in SHIM, which largely speed up
  forking
- Upgrade glibc to 2.19
- FreeBSD port
- Support OpenJDK, python and R
2015-11-30 08:38:50 -05:00
Chia-Che Tsai 11e27a9a41 resurrect checkpoint/migration 2015-07-02 19:51:19 -04:00
Chia-Che Tsai 7f19f62f31 beta version 0.2
Plenty of bugfixes for Linux kernel later than 3.5 and Ubuntu later than 10.10.
More organized code to improve portability.
Regression tests for Pal to test completeness of implementation.
2015-05-20 14:15:52 -04:00
Chia-Che Tsai 328ca4af9b tons of bugfixes 2015-03-31 14:29:34 -04:00
Chia-Che Tsai 5eaaf9abfb apply multiple patches 2015-02-12 20:13:00 -08:00
Chia-Che Tsai 29767a2a9f Fall back to checkpointing by stream if GIPC is not installed
Fix a bug in Proc FS (Permission denied at /proc/[PID])
2014-11-27 07:13:23 -05:00
Chia-Che Tsai 10c06ad723 The first official release 2014-06-02 12:45:42 -04:00