398 karma · joined February 24, 2014
Besides this, it changes the perspective of who is the best person to configure the secure features. OpenBSD makes this a decision for the developer of the application, who should know better about it than a random sysadmin who most probably won't even open the source code to know better (this is the approach SELinux takes).
https://man.openbsd.org/pledge https://man.openbsd.org/unveil
This is useful because sometimes you want to use the same configuration file on different systems and they usually need some customizations to adapt to each one, which can be done automatically by ansible based on jinja2 templates.
(And for those who want to instruct me about PC being a defined architecture, where there no such thing with smartphones, etc, etc, etc, I know all this, but the point is still valid.)
*(uint32_t *)0x40021018 = 0x00000004;
after a few days, it will become tiresome to read and to remember all those addresses. I suggest you to use the header [0] that the ST provides for STM32F1, which is included in packages such as STMCubeF1 [1], STMCubeF0, etc.For instance, instead of using the memory address directly, you could just do
RCC->APB2ENR |= RCC_APB2ENR_IOPAEN;
so it's easier to remember what is what. STMCubeF1 is a big package, but you won't be using the API/drivers ST provides (such as HAL and LL), just the header. As I understand, the STM32 community kind of rejects this API as "bloated".I have some examples here if you would like to take a look:
https://github.com/dbolgheroni/arm-makefile/blob/master/drv/...
Cheers,
[0] https://github.com/dbolgheroni/arm-makefile/blob/master/stm3... [1] https://www.st.com/en/embedded-software/stm32cubef1.html
When Firefox decided to attack the problem of market share with engineering, 2 things were happening (almost) at the same time[1]: 1) the deprecation of the old add-on engine and 2) the introduction of the new Quantum engine.
For the 1), while I understand there are some reasons in doing so (it was not a stable API as it was always breaking the extensions and security-wise), I think these problems could be managed. On the other hand, there were lots of good add-on depended on this API.
Particularly, even when Firefox was behind technically-speaking, that was the main reason I used it. Firefox replaced the old API without offering all the new interfaces with the new API. So, I lost what made Firefox really unique.
For the 2), I think it was a consequence for the 1). Firefox was finally "better" with Quantum. Of course everyone likes a responsible browser, but I actually didn't see that much difference. And there was another browser which was already really good: Chrome.
Suddenly, there was no real advantage in using Firefox anymore. Someone my say privacy. But in some corners of the Internet, it's already impossible to navigate without some privacy-wise add-on/extension, which usually work on both browsers.
Added to these, if you go deep down, security-wise there are some real technical advantages in running Chrome instead of Firefox in some OSs. For instance:
https://marc.info/?l=openbsd-misc&m=152872551609819&w=2
[1] I'm pretty sure a lot of other things were happening, but I'm in the perspective of the user here.
The best way to help FreeBSD (or any open source projects in general) is to submit diffs to the project documentation itself, than to have lots of documentation scattered among blogs (which will soon become outdated also).
The project benefits by having up-to-date documentation, the users benefit by having a single source of truth and a lot of questions in the mailing lists are saved by users not following documentation which probably are no longer relevant.
Maybe, not everything is supported, but on ThinkPad, almost all (if not all) hardware is supported, yes (lots of developers use these machines). However, I've run OpenBSD on very cheap laptops also, with the only thing unsupported usually being the wifi. This is easily solvable by buying a cheap/supported USB dongle for $10 or less.
OTOH, I've tried the most common Linux distro on a ThinkPad last week, and I couldn't even install because of the installer crashing (no, before anyone asks, the integrity was checked and it was OK).
With 2 lines added to conf, I managed to go from C, D grades to A almost instantly.
$ sed -n '/^func Test/,/^}/p' file
Which means: match 'func Test' at the beginning of a line and print (p command at the end) until you find a line beginnning with '}'.This is because the print command (p) accepts 2 addresses to delimit a range. I used regexes as addresses but, for instance, can use line numbers also:
$ sed -n '10,20p' file
This prints file's line from 10 to 20.By default, sed prints the pattern space (modifications to each line) at the end of the script. The -n I used is to avoid that.
The fact that most OSs have a POSIX compliant version of it in the base system also make it very valuable, not just for the people crunching data but also to sysadmin/devops people.
# vnconfig vnd0 install63.fs
Then you can treat vnd0 as if it was a disk: # disklabel vnd0
# /dev/rvnd0c:
type: vnd
disk: vnd device
label: fictitious
duid: 138b4f2a2e184426
flags:
bytes/sector: 512
sectors/track: 100
tracks/cylinder: 1
sectors/cylinder: 100
cylinders: 7382
total sectors: 738240
boundstart: 1024
boundend: 737280
drivedata: 0
16 partitions:
# size offset fstype [fsize bsize cpg]
a: 736256 1024 4.2BSD 2048 16384 16142
c: 738240 0 unused
i: 960 64 MSDOS
For instance, to mount the 'a' partition: # mount /dev/vnd0a /mnt
You can also associate an encryption key with the device. All data written to the diskimage will then be encrypted.It's rare for an exercise that makes you write in Italian, even when assembling your own sentences is the basics for those who are learning a new language. Finishing an entire module doesn't make you entitled to write anything.
So I inverted things. Instead of the Italian course, I applied to the English course (which I am already fluent) as an Italian native speaker. This way, I write mostly in Italian, with almost no exercises to write in English (same problem with the Italian course).
Learning has been much more effective.
https://nakedsecurity.sophos.com/2012/10/01/hacked-routers-b...
https://www.welivesecurity.com/2016/10/21/cybercriminals-tar...
Your router is critical, and choosing them wisely is one of the most important things if you care about some security.
So it seems like a regular webpage but within Gmail.